aboutsummaryrefslogtreecommitdiff
path: root/pdf-as-web/src/main/java/at/gv/egiz/pdfas/web/filter
diff options
context:
space:
mode:
authorAndreas Fitzek <andreas.fitzek@iaik.tugraz.at>2015-02-23 11:27:59 +0100
committerAndreas Fitzek <andreas.fitzek@iaik.tugraz.at>2015-02-23 11:27:59 +0100
commit4973b940cc8ce0885653ed7c0223cbedd3dde3bc (patch)
treed711ed5b272631c9a24cd346a19e2c0b6426f83e /pdf-as-web/src/main/java/at/gv/egiz/pdfas/web/filter
parentfee3c9a59945a2ee74029dfe63c074c753a51dbf (diff)
downloadpdf-as-4-4973b940cc8ce0885653ed7c0223cbedd3dde3bc.tar.gz
pdf-as-4-4973b940cc8ce0885653ed7c0223cbedd3dde3bc.tar.bz2
pdf-as-4-4973b940cc8ce0885653ed7c0223cbedd3dde3bc.zip
added Statistics Facilities to PDF-AS Web
Diffstat (limited to 'pdf-as-web/src/main/java/at/gv/egiz/pdfas/web/filter')
-rw-r--r--pdf-as-web/src/main/java/at/gv/egiz/pdfas/web/filter/UserAgentFilter.java59
1 files changed, 59 insertions, 0 deletions
diff --git a/pdf-as-web/src/main/java/at/gv/egiz/pdfas/web/filter/UserAgentFilter.java b/pdf-as-web/src/main/java/at/gv/egiz/pdfas/web/filter/UserAgentFilter.java
new file mode 100644
index 00000000..504cf472
--- /dev/null
+++ b/pdf-as-web/src/main/java/at/gv/egiz/pdfas/web/filter/UserAgentFilter.java
@@ -0,0 +1,59 @@
+package at.gv.egiz.pdfas.web.filter;
+
+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 org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+
+public class UserAgentFilter implements Filter {
+
+ private static final Logger logger = LoggerFactory
+ .getLogger(UserAgentFilter.class);
+
+ @Override
+ public void init(FilterConfig filterConfig) throws ServletException {
+ // TODO Auto-generated method stub
+
+ }
+
+ private static final ThreadLocal<String> requestUserAgent = new ThreadLocal<String>() {
+
+ @Override
+ protected String initialValue() {
+ return "unkown";
+ }
+
+ };
+
+ @Override
+ public void doFilter(ServletRequest request, ServletResponse response,
+ FilterChain chain) throws IOException, ServletException {
+ if(request instanceof HttpServletRequest) {
+ logger.debug("Processing Parameters into Attributes");
+ HttpServletRequest httpRequest = (HttpServletRequest)request;
+ requestUserAgent.set(httpRequest.getHeader("User-Agent"));
+ }
+ try {
+ chain.doFilter(request, response);
+ } finally {
+ requestUserAgent.remove();
+ }
+ }
+
+ @Override
+ public void destroy() {
+ }
+
+ public static String getUserAgent() {
+ return requestUserAgent.get();
+ }
+
+}