View Javadoc
1   package com.atlassian.refapp.decorator;
2   
3   import org.slf4j.Logger;
4   import org.slf4j.LoggerFactory;
5   
6   import javax.servlet.Filter;
7   import javax.servlet.FilterChain;
8   import javax.servlet.FilterConfig;
9   import javax.servlet.ServletException;
10  import javax.servlet.ServletRequest;
11  import javax.servlet.ServletResponse;
12  import java.io.IOException;
13  
14  /**
15   * A filter that looks for a query param that sets the Product Definition Language variable
16   */
17  public class PdlDarkToggleFilter implements Filter {
18      private final Logger log = LoggerFactory.getLogger(getClass());
19  
20      public void init(FilterConfig filterConfig) throws ServletException {
21      }
22  
23      public void doFilter(ServletRequest servletRequest, ServletResponse servletResponse, FilterChain filterChain)
24              throws IOException, ServletException {
25          String pdl = servletRequest.getParameter("pdl.dir");
26          if (pdl != null) {
27              System.setProperty("pdl.dir", pdl);
28              log.info("Product Design Language variable ${pdl.dir} now set to: {}", pdl);
29          }
30          filterChain.doFilter(servletRequest, servletResponse);
31      }
32  
33      public void destroy() {
34      }
35  
36  
37  }