taylor      2004/11/11 11:20:45

  Modified:    portal/src/java/org/apache/jetspeed/request
                        JetspeedRequestContextComponent.java
               portal/src/java/org/apache/jetspeed/engine
                        AbstractEngine.java
  Log:
  abstracted threadlocal into request context component
  
  Revision  Changes    Path
  1.8       +12 -3     
jakarta-jetspeed-2/portal/src/java/org/apache/jetspeed/request/JetspeedRequestContextComponent.java
  
  Index: JetspeedRequestContextComponent.java
  ===================================================================
  RCS file: 
/home/cvs/jakarta-jetspeed-2/portal/src/java/org/apache/jetspeed/request/JetspeedRequestContextComponent.java,v
  retrieving revision 1.7
  retrieving revision 1.8
  diff -u -r1.7 -r1.8
  --- JetspeedRequestContextComponent.java      17 Oct 2004 14:02:38 -0000      
1.7
  +++ JetspeedRequestContextComponent.java      11 Nov 2004 19:20:45 -0000      
1.8
  @@ -38,15 +38,16 @@
       private Class contextClass = null;
       /** The user info manager. */
       private UserInfoManager userInfoMgr;
  +    private ThreadLocal tlRequestContext = new ThreadLocal();
   
       private final static Log log = 
LogFactory.getLog(JetspeedRequestContextComponent.class);
   
       public JetspeedRequestContextComponent(String contextClassName)
       {
  -        this(contextClassName, null);
       }
   
  -    public JetspeedRequestContextComponent(String contextClassName, 
UserInfoManager userInfoMgr)
  +    public JetspeedRequestContextComponent(String contextClassName, 
  +                                           UserInfoManager userInfoMgr)
       {
           this.contextClassName = contextClassName;
           this.userInfoMgr = userInfoMgr;
  @@ -80,11 +81,14 @@
               log.error(msg);
           }
   
  +        tlRequestContext.set(context);
  +        
           return context;
       }
   
       public void release(RequestContext context)
       {
  +        tlRequestContext.set(null);
       }
   
       /**
  @@ -97,6 +101,11 @@
       public RequestContext getRequestContext(HttpServletRequest request)
       {
           return (RequestContext) 
request.getAttribute(RequestContext.REQUEST_PORTALENV);
  +    }
  +    
  +    public RequestContext getRequestContext()
  +    {
  +        return (RequestContext) tlRequestContext.get();        
       }
   
   }
  
  
  
  1.11      +8 -4      
jakarta-jetspeed-2/portal/src/java/org/apache/jetspeed/engine/AbstractEngine.java
  
  Index: AbstractEngine.java
  ===================================================================
  RCS file: 
/home/cvs/jakarta-jetspeed-2/portal/src/java/org/apache/jetspeed/engine/AbstractEngine.java,v
  retrieving revision 1.10
  retrieving revision 1.11
  diff -u -r1.10 -r1.11
  --- AbstractEngine.java       24 Aug 2004 21:35:07 -0000      1.10
  +++ AbstractEngine.java       11 Nov 2004 19:20:45 -0000      1.11
  @@ -25,6 +25,7 @@
   import org.apache.commons.configuration.Configuration;
   import org.apache.commons.logging.Log;
   import org.apache.commons.logging.LogFactory;
  +import org.apache.jetspeed.Jetspeed;
   import org.apache.jetspeed.JetspeedPortalContext;
   import org.apache.jetspeed.PortalContext;
   import org.apache.jetspeed.PortalReservedParameters;
  @@ -33,6 +34,7 @@
   import org.apache.jetspeed.exception.JetspeedException;
   import org.apache.jetspeed.pipeline.Pipeline;
   import org.apache.jetspeed.request.RequestContext;
  +import org.apache.jetspeed.request.RequestContextComponent;
   import org.apache.log4j.PropertyConfigurator;
   import org.apache.ojb.broker.util.ClassHelper;
   import org.apache.pluto.PortletContainer;
  @@ -65,7 +67,6 @@
           private static final Log log = 
LogFactory.getLog(AbstractEngine.class);
       private static final Log console = LogFactory.getLog(CONSOLE_LOGGER);
       /** stores the most recent RequestContext on a per thread basis */
  -    private ThreadLocal tlRequestContext = new ThreadLocal();
       protected boolean useInternalJNDI;
       protected String defaultPipelineName;
   
  @@ -238,7 +239,7 @@
               {                
                   targetPipeline = 
(String)context.getAttribute(PortalReservedParameters.PIPELINE);                
               }
  -            tlRequestContext.set(context);
  +            // tlRequestContext.set(context);
               Pipeline pipeline = getPipeline();
               if (targetPipeline != null)
               {
  @@ -337,7 +338,10 @@
        */
       public RequestContext getCurrentRequestContext()
       {
  -        return (RequestContext) tlRequestContext.get();
  +        RequestContextComponent contextComponent = (RequestContextComponent) 
Jetspeed.getComponentManager()
  +            .getComponent(RequestContextComponent.class);
  +        return contextComponent.getRequestContext();
  +        //return (RequestContext) tlRequestContext.get();
       }
   
       public ComponentManager getComponentManager()
  
  
  

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to