package net.curisit.securis; import java.io.IOException; import javax.enterprise.context.ApplicationScoped; import javax.servlet.Filter; import javax.servlet.FilterChain; import javax.servlet.FilterConfig; import javax.servlet.ServletException; import javax.servlet.ServletRequest; import javax.servlet.ServletResponse; import javax.servlet.annotation.WebFilter; import javax.servlet.http.HttpServletResponse; import org.apache.logging.log4j.LogManager; import org.apache.logging.log4j.Logger; @ApplicationScoped @WebFilter(urlPatterns = "*.gz") public class GzipFilter implements Filter { @SuppressWarnings("unused") private static final Logger LOG = LogManager.getLogger(GzipFilter.class); @Override public void init(FilterConfig fc) throws ServletException { } @Override public void doFilter(ServletRequest sreq, ServletResponse sres, FilterChain fc) throws IOException, ServletException { //HttpServletRequest req = (HttpServletRequest) sreq; HttpServletResponse res = (HttpServletResponse) sres; res.addHeader("Content-Encoding", "gzip"); // LOG.info("Content served as gzip: {}", req.getRequestURI()); fc.doFilter(sreq, sres); } @Override public void destroy() { } }