View Javadoc
1   package com.atlassian.plugin.refimpl.filter;
2   
3   import com.atlassian.plugin.refimpl.CurrentHttpRequest;
4   
5   import javax.servlet.Filter;
6   import javax.servlet.FilterChain;
7   import javax.servlet.FilterConfig;
8   import javax.servlet.ServletException;
9   import javax.servlet.ServletRequest;
10  import javax.servlet.ServletResponse;
11  import javax.servlet.http.HttpServletRequest;
12  import java.io.IOException;
13  
14  /**
15   * Filter that takes the raw http request and stores it in {@link CurrentHttpRequest} so that it is accessible to other
16   * classes. This is the first filter that runs in the filter chain.
17   */
18  
19  public class RefAppFirstFilter implements Filter {
20      @Override
21      public void init(FilterConfig filterConfig) throws ServletException {
22      }
23  
24      /**
25       * Captures the current {@link ServletRequest} using the {@link CurrentHttpRequest} class
26       */
27      @Override
28      public void doFilter(ServletRequest servletRequest, ServletResponse servletResponse, FilterChain filterChain)
29              throws IOException, ServletException {
30          CurrentHttpRequest.setRequest((HttpServletRequest) servletRequest);
31          filterChain.doFilter(servletRequest, servletResponse);
32      }
33  
34      @Override
35      public void destroy() {
36      }
37  }