Maven-Plugin "Hibernate 4" implementiert
[percentcodec] / test / src / main / java / de / halbekunst / juplo / test / LoggingHttpServletResponseFilter.java
1 package de.halbekunst.juplo.test;
2
3 import java.io.IOException;
4 import javax.servlet.Filter;
5 import javax.servlet.FilterChain;
6 import javax.servlet.FilterConfig;
7 import javax.servlet.ServletException;
8 import javax.servlet.ServletRequest;
9 import javax.servlet.ServletResponse;
10 import javax.servlet.http.HttpServletRequest;
11 import javax.servlet.http.HttpServletResponse;
12 import org.slf4j.Logger;
13 import org.slf4j.LoggerFactory;
14
15 /**
16  *
17  * @author kai
18  */
19 public class LoggingHttpServletResponseFilter implements Filter {
20
21   private final static Logger log = LoggerFactory.getLogger(LoggingHttpServletResponseWrapper.class);
22
23
24   @Override
25   public void init(FilterConfig filterConfig) throws ServletException {
26   }
27
28   @Override
29   public void doFilter(ServletRequest req, ServletResponse res, FilterChain chain) throws IOException, ServletException {
30     HttpServletRequest request = (HttpServletRequest)req;
31     HttpServletResponse response = (HttpServletResponse)res;
32     log.info("counting request {}", request.getRequestURI());
33     LoggingHttpServletResponseWrapper wrappedResponse =
34         new LoggingHttpServletResponseWrapper(request.getRequestURI(), response);
35     chain.doFilter(request, wrappedResponse);
36     log.info("response-size: {}", wrappedResponse.close());
37   }
38
39   @Override
40   public void destroy() {
41   }
42 }