1 16 package com.blandware.atleap.webapp.filter; 17 18 import com.blandware.atleap.webapp.util.core.GlobalProperties; 19 import com.blandware.atleap.webapp.util.core.WebappConstants; 20 21 import javax.servlet.*; 22 import javax.servlet.http.HttpServletRequest ; 23 import javax.servlet.http.HttpServletResponse ; 24 import java.io.IOException ; 25 26 36 public class BrowserCacheFilter implements Filter { 37 38 protected FilterConfig config = null; 39 40 46 public void init(FilterConfig config) throws ServletException { 47 this.config = config; 48 } 49 50 53 public void destroy() { 54 config = null; 55 } 56 57 66 public void doFilter(ServletRequest req, ServletResponse resp, 67 FilterChain chain) 68 throws IOException , ServletException { 69 HttpServletRequest request = (HttpServletRequest ) req; 71 HttpServletResponse response = (HttpServletResponse ) resp; 72 73 int maxAge = ((Integer ) GlobalProperties.getInstance(config.getServletContext()).getInteger(WebappConstants.CACHE_RESOURCE_MAXAGE_PROPERTY, -1)).intValue(); 74 if ( maxAge >= 0 ) { 75 response.setHeader("Cache-Control", "public,max-age=" + maxAge); 76 response.setHeader("Pragma", ""); 77 } else { 78 response.setHeader("Cache-Control", "no-cache,no-store,max-age=0"); 79 response.setHeader("Pragma", "no-cache"); 80 } 81 82 response.setCharacterEncoding("utf-8"); 83 84 chain.doFilter(request, response); 85 } 86 } 87 | Popular Tags |