PageRenderTime 31ms CodeModel.GetById 16ms RepoModel.GetById 0ms app.codeStats 0ms

/src/main/java/org/tuckey/web/filters/urlrewrite/sample/SampleMultiUrlRewriteFilter.java

http://urlrewritefilter.googlecode.com/
Java | 49 lines | 34 code | 10 blank | 5 comment | 1 complexity | beebad69511d2b1840f2f36f8e452461 MD5 | raw file
  1. package org.tuckey.web.filters.urlrewrite.sample;
  2. import org.tuckey.web.filters.urlrewrite.Conf;
  3. import org.tuckey.web.filters.urlrewrite.UrlRewriteFilter;
  4. import org.tuckey.web.filters.urlrewrite.UrlRewriter;
  5. import javax.servlet.FilterChain;
  6. import javax.servlet.FilterConfig;
  7. import javax.servlet.ServletException;
  8. import javax.servlet.ServletRequest;
  9. import javax.servlet.ServletResponse;
  10. import java.io.FileInputStream;
  11. import java.util.ArrayList;
  12. import java.util.List;
  13. /**
  14. * Sample of how you might load multiple configuration files. (NOT to be used verbatim!!)
  15. */
  16. public class SampleMultiUrlRewriteFilter extends UrlRewriteFilter {
  17. private List urlrewriters = new ArrayList();
  18. public void loadUrlRewriter(FilterConfig filterConfig) throws ServletException {
  19. // add configurations
  20. try {
  21. Conf conf1 = new Conf(filterConfig.getServletContext(), new FileInputStream("someconf.xml"), "someconf.xml", "");
  22. urlrewriters.add(new UrlRewriter(conf1));
  23. Conf conf2 = new SampleConfExt();
  24. urlrewriters.add(new UrlRewriter(conf2));
  25. } catch (Exception e) {
  26. throw new ServletException(e);
  27. }
  28. }
  29. public UrlRewriter getUrlRewriter(ServletRequest request, ServletResponse response, FilterChain chain) {
  30. // do some logic to decide what urlrewriter to use (possibly do a reload check on the conf file)
  31. return (UrlRewriter) urlrewriters.get(0);
  32. }
  33. public void destroyUrlRewriter() {
  34. for (int i = 0; i < urlrewriters.size(); i++) {
  35. UrlRewriter urlRewriter = (UrlRewriter) urlrewriters.get(i);
  36. urlRewriter.destroy();
  37. }
  38. }
  39. }