Package org.apache.shindig.gadgets.http.MultipleResourceHttpFetcher

Examples of org.apache.shindig.gadgets.http.MultipleResourceHttpFetcher.RequestContext


  public void revisit() throws Exception {
    Node img1 = elem("img", "src", IMG_JPG_SMALL_URL);
    Node img2 = elem("img", "src", IMG_JPG_LARGE_URL);
    List<Node> nodes = ImmutableList.of(img1, img2);

    RequestContext reqCxtImg1 = createRequestContext(IMG_JPG_SMALL_URL, "image/jpeg");
    RequestContext reqCxtImg2 = createRequestContext(IMG_JPG_LARGE_URL, "image/jpeg");

    expect(requestPipeline.execute(eq(reqCxtImg1.getHttpReq())))
        .andReturn(reqCxtImg1.getHttpResp());
    expect(requestPipeline.execute(eq(reqCxtImg2.getHttpReq())))
        .andReturn(reqCxtImg2.getHttpResp());

    Node html = htmlDoc(new Node[] {}, img1, img2);

    String expectedContent = new StringBuilder()
        .append(".__shindig__image0 {\n")
View Full Code Here


    byte[] bytes = IOUtils.toByteArray(getClass().getClassLoader().getResourceAsStream(resource));
    HttpResponse response =  new HttpResponseBuilder().addHeader("Content-Type", mimeType)
            .setResponse(bytes).create();

    return new RequestContext(request, response, null);
  }
View Full Code Here

    HttpRequest request = new HttpRequest(uri);

    HttpResponse response =  new HttpResponseBuilder().addHeader("Content-Type", mimeType)
            .setResponse(content.getBytes()).create();

    return new RequestContext(request, response, null);
  }
View Full Code Here

      MultipleResourceHttpFetcher parallelFetcher =
          new MultipleResourceHttpFetcher(requestPipeline, executor);
      List<Pair<Uri, FutureTask<RequestContext>>> futureTasks = parallelFetcher.fetchAll(requests);

      for (Pair<Uri, FutureTask<RequestContext>> futureTask : futureTasks) {
        RequestContext requestCxt;
        try {
          try {
            requestCxt = futureTask.two.get();
          } catch (InterruptedException ie) {
            throw new GadgetException(GadgetException.Code.INTERNAL_SERVER_ERROR, ie);
          } catch (ExecutionException ee) {
            throw new GadgetException(GadgetException.Code.INTERNAL_SERVER_ERROR, ee);
          }
          if (requestCxt.getGadgetException() != null) {
            throw requestCxt.getGadgetException();
          }
          HttpResponse httpResp = requestCxt.getHttpResp();
          if (httpResp != null) {
            if (contentRewriterRegistry != null) {
              try {
                httpResp = contentRewriterRegistry.rewriteHttpResponse(requestCxt.getHttpReq(),
                        httpResp, null);
              } catch (RewritingException e) {
                throw new GadgetException(GadgetException.Code.INTERNAL_SERVER_ERROR, e,
                        e.getHttpStatusCode());
              }
View Full Code Here

      StringBuilder cssContent = new StringBuilder("");

      for (int i = 0; i < nodes.size(); i++) {
        Element imageElement = (Element) nodes.get(i);
        String src = imageElement.getAttribute("src");
        RequestContext requestCxt;

        // Fetch the content of the requested uri.
        try {
          Uri imgUri = UriBuilder.parse(src).toUri();

          try {
            requestCxt = futureTasks.get(imgUri).get();
          } catch (InterruptedException ie) {
            throw new GadgetException(GadgetException.Code.INTERNAL_SERVER_ERROR, ie);
          } catch (ExecutionException ie) {
            throw new GadgetException(GadgetException.Code.INTERNAL_SERVER_ERROR, ie);
          }

          if (requestCxt.getGadgetException() != null) {
            throw requestCxt.getGadgetException();
          }

          HttpResponse response = requestCxt.getHttpResp();
          // Content header checking is fast so this is fine to do for every
          // response.
          ImageFormat imageFormat = Sanselan.guessFormat(
              new ByteSourceInputStream(response.getResponse(), imgUri.getPath()));
View Full Code Here

      MultipleResourceHttpFetcher parallelFetcher =
          new MultipleResourceHttpFetcher(requestPipeline, executor);
      List<Pair<Uri, FutureTask<RequestContext>>> futureTasks = parallelFetcher.fetchAll(requests);

      for (Pair<Uri, FutureTask<RequestContext>> futureTask : futureTasks) {
        RequestContext requestCxt;
        try {
          try {
            requestCxt = futureTask.two.get();
          } catch (InterruptedException ie) {
            throw new GadgetException(GadgetException.Code.INTERNAL_SERVER_ERROR, ie);
          } catch (ExecutionException ee) {
            throw new GadgetException(GadgetException.Code.INTERNAL_SERVER_ERROR, ee);
          }
          if (requestCxt.getGadgetException() != null) {
            throw requestCxt.getGadgetException();
          }
          HttpResponse httpResp = requestCxt.getHttpResp();
          if (httpResp != null) {
            if (contentRewriterRegistry != null) {
              try {
                httpResp = contentRewriterRegistry.rewriteHttpResponse(requestCxt.getHttpReq(),
                        httpResp, null);
              } catch (RewritingException e) {
                throw new GadgetException(GadgetException.Code.INTERNAL_SERVER_ERROR, e,
                        e.getHttpStatusCode());
              }
View Full Code Here

  public void revisit() throws Exception {
    Node img1 = elem("img", "src", IMG_JPG_SMALL_URL);
    Node img2 = elem("img", "src", IMG_JPG_LARGE_URL);
    List<Node> nodes = ImmutableList.of(img1, img2);

    RequestContext reqCxtImg1 = createRequestContext(IMG_JPG_SMALL_URL, "image/jpeg");
    RequestContext reqCxtImg2 = createRequestContext(IMG_JPG_LARGE_URL, "image/jpeg");

    expect(requestPipeline.execute(eq(reqCxtImg1.getHttpReq())))
        .andReturn(reqCxtImg1.getHttpResp());
    expect(requestPipeline.execute(eq(reqCxtImg2.getHttpReq())))
        .andReturn(reqCxtImg2.getHttpResp());

    Node html = htmlDoc(new Node[] {}, img1, img2);

    String expectedContent = new StringBuilder()
        .append(".__shindig__image0 {\n")
View Full Code Here

    byte[] bytes = IOUtils.toByteArray(getClass().getClassLoader().getResourceAsStream(resource));
    HttpResponse response =  new HttpResponseBuilder().addHeader("Content-Type", mimeType)
            .setResponse(bytes).create();

    return new RequestContext(request, response, null);
  }
View Full Code Here

    HttpRequest request = new HttpRequest(uri);

    HttpResponse response =  new HttpResponseBuilder().addHeader("Content-Type", mimeType)
            .setResponse(content.getBytes()).create();

    return new RequestContext(request, response, null);
  }
View Full Code Here

      StringBuilder cssContent = new StringBuilder("");

      for (int i = 0; i < nodes.size(); i++) {
        Element imageElement = (Element) nodes.get(i);
        String src = imageElement.getAttribute("src");
        RequestContext requestCxt;

        // Fetch the content of the requested uri.
        try {
          Uri imgUri = UriBuilder.parse(src).toUri();

          try {
            requestCxt = futureTasks.get(imgUri).get();
          } catch (InterruptedException ie) {
            throw new GadgetException(GadgetException.Code.INTERNAL_SERVER_ERROR, ie);
          } catch (ExecutionException ie) {
            throw new GadgetException(GadgetException.Code.INTERNAL_SERVER_ERROR, ie);
          }

          if (requestCxt.getGadgetException() != null) {
            throw requestCxt.getGadgetException();
          }

          HttpResponse response = requestCxt.getHttpResp();
          // Content header checking is fast so this is fine to do for every
          // response.
          ImageFormat imageFormat = Sanselan.guessFormat(
              new ByteSourceInputStream(response.getResponse(), imgUri.getPath()));
View Full Code Here

TOP

Related Classes of org.apache.shindig.gadgets.http.MultipleResourceHttpFetcher.RequestContext

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.