protected boolean isSupportedContent(HttpResponseBuilder response) { return SUPPORTED_MIME_TYPES.contains(response.getHeader(CONTENT_TYPE)); }
private boolean isSupportedContent(HttpResponseBuilder response) { return SUPPORTED_MIME_TYPES.contains(response.getHeader(CONTENT_TYPE)); }
private boolean isSupportedContent(HttpResponseBuilder response) { return SUPPORTED_MIME_TYPES.contains(response.getHeader(CONTENT_TYPE)); }
public static String getMimeType(HttpRequest request, HttpResponseBuilder original) { String mimeType = request.getRewriteMimeType(); if (mimeType == null) { mimeType = original.getHeader("Content-Type"); } return mimeType != null ? mimeType.toLowerCase() : null; } }
public static void setCachingHeaders(HttpResponseBuilder response, int ttl, boolean noProxy) { // Initial cache control headers are in this response, we should now sanitize them or set them if they are missing. String cacheControl = response.getHeader("Cache-Control"); String pragma = response.getHeader("Pragma"); for (Pair<String, String> header : HttpUtil.getCachingHeadersToSet(ttl, cacheControl, pragma, noProxy)) { response.setHeader(header.one, header.two); } }
public static String getMimeType(HttpRequest request, HttpResponseBuilder original) { String mimeType = request.getRewriteMimeType(); if (mimeType == null) { mimeType = original.getHeader("Content-Type"); } return mimeType != null ? mimeType.toLowerCase() : null; } }
public static String getMimeType(HttpRequest request, HttpResponseBuilder original) { String mimeType = request.getRewriteMimeType(); if (mimeType == null) { mimeType = original.getHeader("Content-Type"); } return mimeType != null ? mimeType.toLowerCase() : null; } }
public HttpResponseBuilder setCacheControlMaxAge(long expirationTime) { String cacheControl = getHeader("Cache-Control"); List<String> directives = Lists.newArrayList(); if (cacheControl != null) { for (String directive : StringUtils.split(cacheControl, ',')) { directive = directive.trim(); if (!directive.startsWith("max-age") || StringUtils.split(directive, '=').length != 2) { directives.add(directive); } } } directives.add("max-age=" + expirationTime); setHeader("Cache-Control", StringUtils.join(directives, ',')); incrementNumChanges(); return this; }
protected void setResponseContentHeaders(HttpResponseBuilder response, HttpResponse results) { // We're skipping the content disposition header for flash due to an issue with Flash player 10 // This does make some sites a higher value phishing target, but this can be mitigated by // additional referer checks. if (!"application/x-shockwave-flash".equalsIgnoreCase(results.getHeader("Content-Type")) && !"application/x-shockwave-flash".equalsIgnoreCase(response.getHeader("Content-Type"))) { response.setHeader("Content-Disposition", "attachment;filename=p.txt"); } if (results.getHeader("Content-Type") == null) { response.setHeader("Content-Type", "application/octet-stream"); } }
protected void setResponseContentHeaders(HttpResponseBuilder response, HttpResponse results) { // We're skipping the content disposition header for flash due to an issue with Flash player 10 // This does make some sites a higher value phishing target, but this can be mitigated by // additional referer checks. if (!isFlash(response.getHeader("Content-Type"), results.getHeader("Content-Type"))) { String contentDispositionValue = results.getHeader("Content-Disposition"); if (StringUtils.isBlank(contentDispositionValue) || contentDispositionValue.indexOf("attachment;") == -1 || contentDispositionValue.indexOf("filename") == -1) { response.setHeader("Content-Disposition", "attachment;filename=p.txt"); } else { response.setHeader("Content-Disposition", contentDispositionValue); } } if (results.getHeader("Content-Type") == null) { response.setHeader("Content-Type", "application/octet-stream"); } }
protected void setResponseContentHeaders(HttpResponseBuilder response, HttpResponse results) { // We're skipping the content disposition header for flash due to an issue with Flash player 10 // This does make some sites a higher value phishing target, but this can be mitigated by // additional referer checks. if (!isFlash(response.getHeader("Content-Type"), results.getHeader("Content-Type"))) { response.setHeader("Content-Disposition", "attachment;filename=p.txt"); } if (results.getHeader("Content-Type") == null) { response.setHeader("Content-Type", "application/octet-stream"); } }
private BufferedImage getResizedHttpResponseContent(String sourceContentType, String targetContentType, String imageName, Integer width, Integer height, Integer quality, boolean noExpand) throws Exception { HttpResponseBuilder response = getImageResponse(sourceContentType, getImageBytes(imageName)); HttpRequest request = getMockRequest(width, height, quality, noExpand); mockControl.replay(); rewriter.rewrite(request, response); mockControl.verify(); assertEquals(targetContentType, response.getHeader(CONTENT_TYPE_HEADER)); return ImageIO.read(response.getContentBytes()); }
private BufferedImage getResizedHttpResponseContent(String sourceContentType, String targetContentType, String imageName, Integer width, Integer height, Integer quality, boolean noExpand) throws Exception { HttpResponseBuilder response = getImageResponse(sourceContentType, getImageBytes(imageName)); HttpRequest request = getMockRequest(width, height, quality, noExpand); mockControl.replay(); rewriter.rewrite(request, response, null); mockControl.verify(); assertEquals(targetContentType, response.getHeader(CONTENT_TYPE_HEADER)); return ImageIO.read(response.getContentBytes()); }
private BufferedImage getResizedHttpResponseContent(String sourceContentType, String targetContentType, String imageName, Integer width, Integer height, Integer quality, boolean noExpand) throws Exception { HttpResponseBuilder response = getImageResponse(sourceContentType, getImageBytes(imageName)); HttpRequest request = getMockRequest(width, height, quality, noExpand); mockControl.replay(); rewriter.rewrite(request, response, null); mockControl.verify(); assertEquals(targetContentType, response.getHeader(CONTENT_TYPE_HEADER)); return ImageIO.read(response.getContentBytes()); }
@Test public void testRewriteUnAnimatedGIF() throws Exception { HttpResponseBuilder response = getImageResponse(CONTENT_TYPE_GIF, getImageBytes("org/apache/shindig/gadgets/rewrite/image/large.gif")); rewriter.rewrite(new HttpRequest(Uri.parse("large.gif")), response, null); assertEquals(CONTENT_TYPE_PNG, response.getHeader(CONTENT_TYPE_HEADER)); }
@Test public void testRewriteUnAnimatedGIF() throws Exception { HttpResponseBuilder response = getImageResponse(CONTENT_TYPE_GIF, getImageBytes("org/apache/shindig/gadgets/rewrite/image/large.gif")); rewriter.rewrite(new HttpRequest(Uri.parse("large.gif")), response); assertEquals(CONTENT_TYPE_PNG, response.getHeader(CONTENT_TYPE_HEADER)); }
@Test public void testRewriteUnAnimatedGIF() throws Exception { HttpResponseBuilder response = getImageResponse(CONTENT_TYPE_GIF, getImageBytes("org/apache/shindig/gadgets/rewrite/image/large.gif")); rewriter.rewrite(new HttpRequest(Uri.parse("large.gif")), response, null); assertEquals(CONTENT_TYPE_PNG, response.getHeader(CONTENT_TYPE_HEADER)); }
private void verifyMime(String requestMime, String responseMime, String expectedMime) throws Exception { String url = "http://example.org/foo"; HttpRequest req = new HttpRequest(Uri.parse(url)) .setRewriteMimeType(requestMime); HttpResponseBuilder builder = new HttpResponseBuilder() .setHeader("Content-Type", responseMime); UriUtils.maybeRewriteContentType(req, builder); assertEquals(expectedMime, builder.getHeader("Content-Type")); }
private void verifyMime(String requestMime, String responseMime, String expectedMime) throws Exception { String url = "http://example.org/foo"; HttpRequest req = new HttpRequest(Uri.parse(url)) .setRewriteMimeType(requestMime); HttpResponseBuilder builder = new HttpResponseBuilder() .setHeader("Content-Type", responseMime); UriUtils.maybeRewriteContentType(req, builder); assertEquals(expectedMime, builder.getHeader("Content-Type")); }
private void verifyMime(String requestMime, String responseMime, String expectedMime) throws Exception { String url = "http://example.org/foo"; HttpRequest req = new HttpRequest(Uri.parse(url)) .setRewriteMimeType(requestMime); HttpResponseBuilder builder = new HttpResponseBuilder() .setHeader("Content-Type", responseMime); UriUtils.maybeRewriteContentType(req, builder); assertEquals(expectedMime, builder.getHeader("Content-Type")); }