tomcat-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Apache Wiki <wikidi...@apache.org>
Subject [Tomcat Wiki] Update of "SummerOfCode2009" by xxd82329
Date Mon, 15 Jun 2009 09:49:01 GMT
Dear Wiki user,

You have subscribed to a wiki page or wiki category on "Tomcat Wiki" for change notification.

The following page has been changed by xxd82329:
http://wiki.apache.org/tomcat/SummerOfCode2009

------------------------------------------------------------------------------
  
  2. Filters has orders, so the order they appear in the configuration file should be maintained.
And some filter has to be the first one in the filter chain. I could not get an idea to guarantee
this elegantly other than give some comment in the configuration file or in the documentation.

  
+ 3. I will modify the digestor code in order to load the configuration about filters in,
ContextRuleSet.java, EngineRuleSet.java, HostRuleSet.java in particular. And those filters
information will be store in an order map (I'd like to choose treeMap now) -- TreeMap<FilterMetaInfo,
Filter>. The FilterMetaInfo class is generally like this: 
+ 
+ 	private final FilterLevels level;
+ 
+ 	private final int order;
+ 
+ FilterLevels is an enum which contains: ENGINE, HOST, CONTEXT. 
+ 
- 3. Do I need to remove all the pipeline facility or can I try to remove as much logic as
possible from StandardEngineValve/StandardHostValve/StandardHostValve? I found that those
valve just delegate to the lower level pipeline(valves), and the lowest StandardWrapperValve
will actually finish the job (filterChain and/or the servlet invocation). 
+ 4. Do I need to remove all the pipeline facility or can I try to remove as much logic as
possible from StandardEngineValve/StandardHostValve/StandardHostValve? I found that those
valve just delegate to the lower level pipeline(valves), and the lowest StandardWrapperValve
will actually finish the job (filterChain and/or the servlet invocation). 
  
  All these jobs should be finished somewhere, if we do not use valves. Can I just override
the invoke() method of Container interface for StandardEngine/StandardHost/StandardContext/StandardWrapper,
and high level container will call the invoke() method of the container which have a lower
level than itself, for example, in invoke() method of StandardEngine, the invoke() method
of StandardHost will be called. And I will move all the valve invoke() logic into the corresponding
invoke() method of its container.
  

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@tomcat.apache.org
For additional commands, e-mail: dev-help@tomcat.apache.org


Mime
View raw message