X-Git-Url: https://juplo.de/gitweb/?p=percentcodec;a=blobdiff_plain;f=cachecontrol%2Fsrc%2Fmain%2Fjava%2Fde%2Fhalbekunst%2Fjuplo%2Fcachecontrol%2FAcceleratorFilter.java;h=992d9dc980bc201559e48404776a5ad50ff49e4e;hp=f76c7132cfd1c3b0de341011d23e2d3bf8b0c1d2;hb=2ae9a9d1011d3cb6cb0a172b629cb390c4fdf0ea;hpb=1bb1a0f0e1d347538ae93c23395bba172cd87342 diff --git a/cachecontrol/src/main/java/de/halbekunst/juplo/cachecontrol/AcceleratorFilter.java b/cachecontrol/src/main/java/de/halbekunst/juplo/cachecontrol/AcceleratorFilter.java index f76c7132..992d9dc9 100644 --- a/cachecontrol/src/main/java/de/halbekunst/juplo/cachecontrol/AcceleratorFilter.java +++ b/cachecontrol/src/main/java/de/halbekunst/juplo/cachecontrol/AcceleratorFilter.java @@ -1,6 +1,5 @@ package de.halbekunst.juplo.cachecontrol; -import de.halbekunst.juplo.cachecontrol.CacheControl.CacheMethodHandle; import java.io.IOException; import java.io.OutputStream; import java.io.PrintWriter; @@ -38,18 +37,11 @@ import org.springframework.beans.factory.annotation.Configurable; public class AcceleratorFilter implements Filter { private final static Logger log = LoggerFactory.getLogger(AcceleratorFilter.class); - private final static Map ADDITIONAL_HEADERS_NONE = Collections.unmodifiableMap(new HashMap()); - private final static Map ADDITIONAL_HEADERS_GZIP; + private final static Map EMPTY = Collections.unmodifiableMap(new HashMap()); public final static String REQUEST_URI_ATTRIBUTE = "javax.servlet.include.request_uri"; public final static String RESPONSE_WRAPPER = AcceleratorFilter.class.getName() + ".RESPONSE_WRAPPER"; - static { - Map map = new HashMap(1); - map.put(Headers.HEADER_CONTENT_ENCODING, "gzip"); - ADDITIONAL_HEADERS_GZIP = Collections.unmodifiableMap(map); - } - @Autowired CacheControl cacheControl; @Autowired(required=true) Integer buffer; @@ -99,7 +91,8 @@ public class AcceleratorFilter implements Filter { private final HttpServletRequest request; private final HttpServletResponse response; - private boolean zipped; + boolean zipped; // CacheControll greift direkt auf dieses Flag zu! + private int buffer; private GZIPServletOutputStream out; private ServletOutputStream stream; @@ -358,6 +351,11 @@ public class AcceleratorFilter implements Filter { + @Override + public boolean isZipped() { + return zipped && out != null && !out.empty; + } + @Override public long getTimestamp() { return now; @@ -395,13 +393,10 @@ public class AcceleratorFilter implements Filter { @Override public Map getAdditionalHeaders(HttpServletRequest request) { - if (zipped && !out.empty) - return ADDITIONAL_HEADERS_GZIP; - else - return ADDITIONAL_HEADERS_NONE; + return EMPTY; } - public void guessingFinished() { + public void supressGuessing() { guessing = false; }