1 package com.atlassian.core.filters;
2
3 import javax.servlet.FilterChain;
4 import javax.servlet.ServletException;
5 import javax.servlet.http.HttpServletRequest;
6 import javax.servlet.http.HttpServletResponse;
7
8 import java.io.IOException;
9
10 public class ServletContextThreadLocalFilter extends AbstractHttpFilter
11 {
12 public void doFilter(HttpServletRequest request, HttpServletResponse response, FilterChain filterChain) throws IOException, ServletException
13 {
14 HttpServletRequest originalRequest = ServletContextThreadLocal.getRequest();
15 HttpServletResponse originalResponse = ServletContextThreadLocal.getResponse();
16 try
17 {
18 ServletContextThreadLocal.setRequest(request);
19 ServletContextThreadLocal.setResponse(response);
20
21 filterChain.doFilter(request, response);
22 }
23 finally
24 {
25 ServletContextThreadLocal.setRequest(originalRequest);
26 ServletContextThreadLocal.setResponse(originalResponse);
27 }
28 }
29 }