[jboss-cvs] jboss-seam/src/main/org/jboss/seam/web ...

Gavin King gavin.king at jboss.com
Sat Feb 10 04:21:42 EST 2007


  User: gavin   
  Date: 07/02/10 04:21:42

  Modified:    src/main/org/jboss/seam/web   BaseFilter.java
                        SeamFilter.java
  Log:
  call destroy()
  
  Revision  Changes    Path
  1.2       +3 -2      jboss-seam/src/main/org/jboss/seam/web/BaseFilter.java
  
  (In the diff below, changes in quantity of whitespace are not shown.)
  
  Index: BaseFilter.java
  ===================================================================
  RCS file: /cvsroot/jboss/jboss-seam/src/main/org/jboss/seam/web/BaseFilter.java,v
  retrieving revision 1.1
  retrieving revision 1.2
  diff -u -b -r1.1 -r1.2
  --- BaseFilter.java	10 Feb 2007 07:32:34 -0000	1.1
  +++ BaseFilter.java	10 Feb 2007 09:21:42 -0000	1.2
  @@ -109,5 +109,6 @@
         return false;
      }      
      
  -   public void destroy() { }
  +   public void destroy() {}
  +   
   }
  
  
  
  1.3       +13 -23    jboss-seam/src/main/org/jboss/seam/web/SeamFilter.java
  
  (In the diff below, changes in quantity of whitespace are not shown.)
  
  Index: SeamFilter.java
  ===================================================================
  RCS file: /cvsroot/jboss/jboss-seam/src/main/org/jboss/seam/web/SeamFilter.java,v
  retrieving revision 1.2
  retrieving revision 1.3
  diff -u -b -r1.2 -r1.3
  --- SeamFilter.java	10 Feb 2007 08:36:35 -0000	1.2
  +++ SeamFilter.java	10 Feb 2007 09:21:42 -0000	1.3
  @@ -7,7 +7,6 @@
   import javax.servlet.Filter;
   import javax.servlet.FilterChain;
   import javax.servlet.FilterConfig;
  -import javax.servlet.ServletContext;
   import javax.servlet.ServletException;
   import javax.servlet.ServletRequest;
   import javax.servlet.ServletResponse;
  @@ -22,8 +21,6 @@
   {
      private static final LogProvider log = Logging.getLogProvider(SeamFilter.class);   
      
  -   private ServletContext servletContext;
  -   
      private List<Filter> filters = new ArrayList<Filter>();   
      
      private class FilterChainImpl implements FilterChain
  @@ -31,7 +28,7 @@
         private FilterChain chain;
         private int index;
              
  -      public FilterChainImpl(FilterChain chain)
  +      private FilterChainImpl(FilterChain chain)
         {
            this.chain = chain;
            index = -1;
  @@ -68,30 +65,17 @@
         }
      }
   
  -   protected ServletContext getServletContext()
  -   {
  -      return servletContext;
  -   }   
  -   
      public void init(FilterConfig filterConfig) 
         throws ServletException 
      {      
  -      servletContext = filterConfig.getServletContext();      
  -      initFilters(filterConfig);
  -   }
  -   
  -   protected void initFilters(FilterConfig filterConfig)
  -      throws ServletException
  -   {
  -      Context ctx = new WebApplicationContext(servletContext); 
  -      
  -      Init init = (Init) ctx.get(Init.class);
  +      Context tempApplicationContext = new WebApplicationContext( filterConfig.getServletContext() ); 
  +      Init init = (Init) tempApplicationContext.get(Init.class);
         for ( Class filterClass : init.getInstalledFilters() )
         {
  -         Filter filter = (Filter) ctx.get(filterClass);
  +         Filter filter = (Filter) tempApplicationContext.get(filterClass);
            if ( !isDisabled(filter) ) 
            {
  -            log.info( "Installed filter " + filterClass.getName() );
  +            log.info( "Initializing filter: " + filterClass.getName() );
               filter.init(filterConfig);
               filters.add(filter);
            }
  @@ -107,8 +91,14 @@
      
      private boolean isDisabled(Filter filter)
      {
  -      return filter instanceof BaseFilter && ((BaseFilter) filter).isDisabled();
  +      return filter instanceof BaseFilter && ( (BaseFilter) filter ).isDisabled();
      }     
   
  -   public void destroy() {}
  +   public void destroy() 
  +   {
  +      for (Filter filter: filters)
  +      {
  +         filter.destroy();
  +      }
  +   }
   }
  
  
  



More information about the jboss-cvs-commits mailing list