HttpTestCase in das Modul test verschoben und schweren Fehler korrigiert
[percentcodec] / test / src / main / java / de / halbekunst / juplo / test / LoggingHttpServletResponseFilter.java
diff --git a/test/src/main/java/de/halbekunst/juplo/test/LoggingHttpServletResponseFilter.java b/test/src/main/java/de/halbekunst/juplo/test/LoggingHttpServletResponseFilter.java
new file mode 100644 (file)
index 0000000..b9dad51
--- /dev/null
@@ -0,0 +1,42 @@
+package de.halbekunst.juplo.test;
+
+import java.io.IOException;
+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.http.HttpServletRequest;
+import javax.servlet.http.HttpServletResponse;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+
+/**
+ *
+ * @author kai
+ */
+public class LoggingHttpServletResponseFilter implements Filter {
+
+  private final static Logger log = LoggerFactory.getLogger(LoggingHttpServletResponseWrapper.class);
+
+
+  @Override
+  public void init(FilterConfig filterConfig) throws ServletException {
+  }
+
+  @Override
+  public void doFilter(ServletRequest req, ServletResponse res, FilterChain chain) throws IOException, ServletException {
+    HttpServletRequest request = (HttpServletRequest)req;
+    HttpServletResponse response = (HttpServletResponse)res;
+    log.info("counting request {}", request.getRequestURI());
+    LoggingHttpServletResponseWrapper wrappedResponse =
+        new LoggingHttpServletResponseWrapper(request.getRequestURI(), response);
+    chain.doFilter(request, wrappedResponse);
+    log.info("response-size: {}", wrappedResponse.close());
+  }
+
+  @Override
+  public void destroy() {
+  }
+}