]> git.argeo.org Git - lgpl/argeo-commons.git/blobdiff - org.argeo.cms/src/org/argeo/cms/internal/kernel/HttpFilter.java
Remoting working
[lgpl/argeo-commons.git] / org.argeo.cms / src / org / argeo / cms / internal / kernel / HttpFilter.java
diff --git a/org.argeo.cms/src/org/argeo/cms/internal/kernel/HttpFilter.java b/org.argeo.cms/src/org/argeo/cms/internal/kernel/HttpFilter.java
new file mode 100644 (file)
index 0000000..7c2151e
--- /dev/null
@@ -0,0 +1,38 @@
+package org.argeo.cms.internal.kernel;
+
+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 javax.servlet.http.HttpSession;
+
+/** Abstract base class for http filters. */
+abstract class HttpFilter implements Filter {
+       protected abstract void doFilter(HttpSession httpSession,
+                       HttpServletRequest request, HttpServletResponse response,
+                       FilterChain filterChain) throws IOException, ServletException;
+
+       @Override
+       public void doFilter(ServletRequest servletRequest,
+                       ServletResponse servletResponse, FilterChain filterChain)
+                       throws IOException, ServletException {
+               HttpServletRequest request = (HttpServletRequest) servletRequest;
+               doFilter(request.getSession(), request,
+                               (HttpServletResponse) servletResponse, filterChain);
+       }
+
+       @Override
+       public void destroy() {
+       }
+
+       @Override
+       public void init(FilterConfig arg0) throws ServletException {
+       }
+
+}