1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16 package org.apache.juddi.webconsole;
17
18 import java.io.IOException;
19 import java.text.SimpleDateFormat;
20 import java.util.Calendar;
21 import java.util.GregorianCalendar;
22 import javax.servlet.Filter;
23 import javax.servlet.FilterChain;
24 import javax.servlet.FilterConfig;
25 import javax.servlet.ServletException;
26 import javax.servlet.ServletRequest;
27 import javax.servlet.ServletResponse;
28 import javax.servlet.http.HttpServletResponse;
29
30
31
32
33
34 public class YesCacheFilter implements Filter {
35
36 @Override
37 public void init(FilterConfig fc) throws ServletException {
38
39 }
40
41 @Override
42 public void doFilter(ServletRequest req, ServletResponse res, FilterChain chain) throws IOException, ServletException {
43 HttpServletResponse hsr = (HttpServletResponse) res;
44 hsr.setHeader("Cache-Control", "public, max-age=86400");
45 Calendar c = new GregorianCalendar();
46 c.add(Calendar.MONTH, -1);
47 SimpleDateFormat sdf = new SimpleDateFormat("EEE, dd MMM yyyy HH:mm:ss Z");
48
49 hsr.setHeader("Last-Modified", sdf.format(c.getTime()));
50 hsr.setDateHeader("Expires", System.currentTimeMillis() + (30 * 24 * 60 * 60 * 1000));
51 chain.doFilter(req, res);
52
53 }
54
55 @Override
56 public void destroy() {
57
58 }
59
60 }