You are viewing a plain text version of this content. The canonical link for it is here.
Posted to cvs@cocoon.apache.org by cz...@apache.org on 2003/07/11 10:59:03 UTC

cvs commit: cocoon-2.1/src/java/org/apache/cocoon/components/pipeline AbstractProcessingPipeline.java

cziegeler    2003/07/11 01:59:03

  Modified:    .        status.xml
               src/java/org/apache/cocoon/components/pipeline/impl
                        AbstractCachingProcessingPipeline.java
               src/java/org/apache/cocoon/caching/impl CacheImpl.java
               src/java/org/apache/cocoon/components/pipeline
                        AbstractProcessingPipeline.java
  Log:
  Making store configurable for cache
  Making cache configurable for caching processing pipeline
  
  Revision  Changes    Path
  1.85      +9 -1      cocoon-2.1/status.xml
  
  Index: status.xml
  ===================================================================
  RCS file: /home/cvs/cocoon-2.1/status.xml,v
  retrieving revision 1.84
  retrieving revision 1.85
  diff -u -r1.84 -r1.85
  --- status.xml	10 Jul 2003 23:38:04 -0000	1.84
  +++ status.xml	11 Jul 2003 08:59:03 -0000	1.85
  @@ -184,6 +184,14 @@
     <changes>
   
    <release version="@version@" date="@date@">
  +  <action dev="CZ" type="update">
  +   The cache used by the caching processing pipeline is now configurable
  +   allowing to use different caches in different pipelines.
  +  </action>
  +  <action dev="CZ" type="update">
  +   The cache uses now a configured store. This allows to use differently
  +   configured caches at the same time.
  +  </action>
     <action dev="JH" type="fix" fixes-bug="14327">
     	Reverted the encoding changes in the JSP engine. The fix should be done in
     	the JSPReader, that already contains a TODO.
  
  
  
  1.7       +15 -4     cocoon-2.1/src/java/org/apache/cocoon/components/pipeline/impl/AbstractCachingProcessingPipeline.java
  
  Index: AbstractCachingProcessingPipeline.java
  ===================================================================
  RCS file: /home/cvs/cocoon-2.1/src/java/org/apache/cocoon/components/pipeline/impl/AbstractCachingProcessingPipeline.java,v
  retrieving revision 1.6
  retrieving revision 1.7
  diff -u -r1.6 -r1.7
  --- AbstractCachingProcessingPipeline.java	30 May 2003 09:23:14 -0000	1.6
  +++ AbstractCachingProcessingPipeline.java	11 Jul 2003 08:59:03 -0000	1.7
  @@ -60,6 +60,7 @@
   import org.apache.avalon.framework.activity.Disposable;
   import org.apache.avalon.framework.component.ComponentException;
   import org.apache.avalon.framework.component.ComponentManager;
  +import org.apache.avalon.framework.parameters.ParameterException;
   import org.apache.avalon.framework.parameters.Parameters;
   import org.apache.cocoon.ConnectionResetException;
   import org.apache.cocoon.ProcessingException;
  @@ -84,7 +85,7 @@
    * @version CVS $Id$
    */
   public abstract class AbstractCachingProcessingPipeline
  -            extends AbstractProcessingPipeline
  +    extends AbstractProcessingPipeline
       implements Disposable {
   
       /** This is the Cache holding cached responses */
  @@ -152,15 +153,25 @@
       public void compose (ComponentManager manager)
       throws ComponentException {
           super.compose(manager);
  -        this.cache = (Cache)this.manager.lookup(Cache.ROLE);
       }
   
       /**
        * Parameterizable Interface - Configuration
        */
  -    public void parameterize(Parameters params) {
  +    public void parameterize(Parameters params)
  +    throws ParameterException {
           super.parameterize(params);
           this.configuredDoSmartCaching = params.getParameterAsBoolean("smart-caching", true);
  +        String cacheRole = params.getParameter("cache-role", Cache.ROLE);
  +        if ( this.getLogger().isDebugEnabled()) {
  +            this.getLogger().debug("Using cache " + cacheRole);
  +        }
  +        
  +        try {
  +            this.cache = (Cache)this.manager.lookup(cacheRole);
  +        } catch (ComponentException ce) {
  +            throw new ParameterException("Unable to lookup cache: " + cacheRole, ce);
  +        }
       }
       
       /**
  
  
  
  1.3       +7 -6      cocoon-2.1/src/java/org/apache/cocoon/caching/impl/CacheImpl.java
  
  Index: CacheImpl.java
  ===================================================================
  RCS file: /home/cvs/cocoon-2.1/src/java/org/apache/cocoon/caching/impl/CacheImpl.java,v
  retrieving revision 1.2
  retrieving revision 1.3
  diff -u -r1.2 -r1.3
  --- CacheImpl.java	11 Jul 2003 08:04:22 -0000	1.2
  +++ CacheImpl.java	11 Jul 2003 08:59:03 -0000	1.3
  @@ -87,16 +87,12 @@
       /** The component manager */
       protected ComponentManager manager;
   
  -    /** The role name of the store to use */
  -    protected String storeName;
  -    
       /**
        * Composable Interface
        */
       public void compose (ComponentManager manager)
       throws ComponentException {
           this.manager = manager;
  -        this.store = (Store)this.manager.lookup(this.storeName);
       }
   
       /**
  @@ -157,7 +153,12 @@
        * @see org.apache.avalon.framework.parameters.Parameterizable#parameterize(org.apache.avalon.framework.parameters.Parameters)
        */
       public void parameterize(Parameters parameters) throws ParameterException {
  -        this.storeName = parameters.getParameter("store", Store.TRANSIENT_STORE);
  +        String storeName = parameters.getParameter("store", Store.TRANSIENT_STORE);
  +        try {
  +            this.store = (Store)this.manager.lookup(storeName);
  +        } catch (ComponentException ce) {
  +            throw new ParameterException("Unable to lookup store: " + storeName, ce);
  +        }
       }
   
   }
  
  
  
  1.5       +4 -2      cocoon-2.1/src/java/org/apache/cocoon/components/pipeline/AbstractProcessingPipeline.java
  
  Index: AbstractProcessingPipeline.java
  ===================================================================
  RCS file: /home/cvs/cocoon-2.1/src/java/org/apache/cocoon/components/pipeline/AbstractProcessingPipeline.java,v
  retrieving revision 1.4
  retrieving revision 1.5
  diff -u -r1.4 -r1.5
  --- AbstractProcessingPipeline.java	30 May 2003 09:23:14 -0000	1.4
  +++ AbstractProcessingPipeline.java	11 Jul 2003 08:59:03 -0000	1.5
  @@ -56,6 +56,7 @@
   import org.apache.avalon.framework.component.ComponentManager;
   import org.apache.avalon.framework.component.ComponentSelector;
   import org.apache.avalon.framework.logger.AbstractLogEnabled;
  +import org.apache.avalon.framework.parameters.ParameterException;
   import org.apache.avalon.framework.parameters.Parameterizable;
   import org.apache.avalon.framework.parameters.Parameters;
   import org.apache.cocoon.ConnectionResetException;
  @@ -169,7 +170,8 @@
       /**
        * Parameterizable Interface - Configuration
        */
  -    public void parameterize(Parameters params) {
  +    public void parameterize(Parameters params) 
  +    throws ParameterException {
           this.configuration = params;
           final String expiresValue = params.getParameter("expires", null);
           if (expiresValue != null) {