cziegeler    02/05/27 07:56:28

  Modified:    src/java/org/apache/cocoon/components/pipeline
                        AbstractProcessingPipeline.java
                        ProcessingPipeline.java
               src/java/org/apache/cocoon/components/pipeline/impl
                        CachingProcessingPipeline.java
               src/java/org/apache/cocoon/components/source
                        SitemapSource.java
               src/java/org/apache/cocoon/components/source/impl
                        SitemapSource.java
  Log:
  Minor updates
  
  Revision  Changes    Path
  1.12      +11 -1     
xml-cocoon2/src/java/org/apache/cocoon/components/pipeline/AbstractProcessingPipeline.java
  
  Index: AbstractProcessingPipeline.java
  ===================================================================
  RCS file: 
/home/cvs/xml-cocoon2/src/java/org/apache/cocoon/components/pipeline/AbstractProcessingPipeline.java,v
  retrieving revision 1.11
  retrieving revision 1.12
  diff -u -r1.11 -r1.12
  --- AbstractProcessingPipeline.java   27 May 2002 13:14:52 -0000      1.11
  +++ AbstractProcessingPipeline.java   27 May 2002 14:56:28 -0000      1.12
  @@ -51,6 +51,7 @@
   package org.apache.cocoon.components.pipeline;
   
   import org.apache.avalon.excalibur.pool.Recyclable;
  +import org.apache.excalibur.source.SourceValidity;
   import org.apache.avalon.framework.component.Component;
   import org.apache.avalon.framework.component.ComponentException;
   import org.apache.avalon.framework.component.ComponentManager;
  @@ -81,7 +82,7 @@
    *
    * @since @next-version@
    * @author <a href="mailto:[EMAIL PROTECTED]";>Carsten Ziegeler</a>
  - * @version CVS $Id: AbstractProcessingPipeline.java,v 1.11 2002/05/27 13:14:52 
cziegeler Exp $
  + * @version CVS $Id: AbstractProcessingPipeline.java,v 1.12 2002/05/27 14:56:28 
cziegeler Exp $
    */
   public abstract class AbstractProcessingPipeline
     extends AbstractLogEnabled
  @@ -614,4 +615,13 @@
           return this.process( environment );
       }
   
  +    /**
  +     * Return valid validity objects for the event pipeline
  +     * If the "event pipeline" (= the complete pipeline without the
  +     * serializer) is cacheable and valid, return all validity objects.
  +     * Otherwise return <code>null</code>
  +     */
  +    public SourceValidity[] getValiditiesForEventPipeline() {
  +        return null;
  +    }
   }
  
  
  
  1.7       +10 -1     
xml-cocoon2/src/java/org/apache/cocoon/components/pipeline/ProcessingPipeline.java
  
  Index: ProcessingPipeline.java
  ===================================================================
  RCS file: 
/home/cvs/xml-cocoon2/src/java/org/apache/cocoon/components/pipeline/ProcessingPipeline.java,v
  retrieving revision 1.6
  retrieving revision 1.7
  diff -u -r1.6 -r1.7
  --- ProcessingPipeline.java   27 May 2002 13:14:52 -0000      1.6
  +++ ProcessingPipeline.java   27 May 2002 14:56:28 -0000      1.7
  @@ -57,6 +57,7 @@
   import org.apache.cocoon.environment.Environment;
   import org.apache.cocoon.generation.Generator;
   import org.apache.cocoon.xml.XMLConsumer;
  +import org.apache.excalibur.source.SourceValidity;
   
   /**
    * A <code>ProcessingPipeline<code> produces the response for a given request.
  @@ -78,7 +79,7 @@
    *
    * @author <a href="mailto:[EMAIL PROTECTED]";>Carsten Ziegeler</a>
    * @author <a href="mailto:[EMAIL PROTECTED]";>Giacomo Pati</a>
  - * @version CVS $Id: ProcessingPipeline.java,v 1.6 2002/05/27 13:14:52 cziegeler 
Exp $
  + * @version CVS $Id: ProcessingPipeline.java,v 1.7 2002/05/27 14:56:28 cziegeler 
Exp $
    */
   public interface ProcessingPipeline
          extends   Component, Recomposable {
  @@ -151,4 +152,12 @@
        */
       boolean process(Environment environment, XMLConsumer consumer)
       throws ProcessingException;
  +
  +    /**
  +     * Return valid validity objects for the event pipeline
  +     * If the "event pipeline" (= the complete pipeline without the
  +     * serializer) is cacheable and valid, return all validity objects.
  +     * Otherwise return <code>null</code>
  +     */
  +    SourceValidity[] getValiditiesForEventPipeline();
   }
  
  
  
  1.13      +12 -1     
xml-cocoon2/src/java/org/apache/cocoon/components/pipeline/impl/CachingProcessingPipeline.java
  
  Index: CachingProcessingPipeline.java
  ===================================================================
  RCS file: 
/home/cvs/xml-cocoon2/src/java/org/apache/cocoon/components/pipeline/impl/CachingProcessingPipeline.java,v
  retrieving revision 1.12
  retrieving revision 1.13
  diff -u -r1.12 -r1.13
  --- CachingProcessingPipeline.java    27 May 2002 12:06:13 -0000      1.12
  +++ CachingProcessingPipeline.java    27 May 2002 14:56:28 -0000      1.13
  @@ -89,7 +89,7 @@
    *
    * @since @next-version@
    * @author <a href="mailto:[EMAIL PROTECTED]";>Carsten Ziegeler</a>
  - * @version CVS $Id: CachingProcessingPipeline.java,v 1.12 2002/05/27 12:06:13 
cziegeler Exp $
  + * @version CVS $Id: CachingProcessingPipeline.java,v 1.13 2002/05/27 14:56:28 
cziegeler Exp $
    */
   public class CachingProcessingPipeline
   extends AbstractProcessingPipeline
  @@ -704,6 +704,17 @@
           }
   
           return true;
  +    }
  +
  +    /**
  +     * Return valid validity objects for the event pipeline
  +     * If the "event pipeline" (= the complete pipeline without the
  +     * serializer) is cacheable and valid, return all validity objects.
  +     * Otherwise return <code>null</code>
  +     */
  +    public SourceValidity[] getValiditiesForEventPipeline() {
  +        // FIXME (CZ) - Implement this
  +        return null;
       }
   
       /**
  
  
  
  1.15      +3 -19     
xml-cocoon2/src/java/org/apache/cocoon/components/source/SitemapSource.java
  
  Index: SitemapSource.java
  ===================================================================
  RCS file: 
/home/cvs/xml-cocoon2/src/java/org/apache/cocoon/components/source/SitemapSource.java,v
  retrieving revision 1.14
  retrieving revision 1.15
  diff -u -r1.14 -r1.15
  --- SitemapSource.java        27 May 2002 14:31:26 -0000      1.14
  +++ SitemapSource.java        27 May 2002 14:56:28 -0000      1.15
  @@ -86,8 +86,9 @@
   /**
    * Description of a source which is defined by a pipeline.
    *
  + * @deprecated by the Avalon Excalibur Source Resolving
    * @author <a href="mailto:[EMAIL PROTECTED]";>Carsten Ziegeler</a>
  - * @version CVS $Id: SitemapSource.java,v 1.14 2002/05/27 14:31:26 cziegeler Exp $
  + * @version CVS $Id: SitemapSource.java,v 1.15 2002/05/27 14:56:28 cziegeler Exp $
    */
   
   public final class SitemapSource
  @@ -265,24 +266,7 @@
               this.environment.changeToLastContext();
               this.processingPipeline = 
this.processor.processInternal(this.environment);
               String redirectURL = this.environment.getRedirectURL();
  -            if (redirectURL == null) {
  -                    // FIXME (CZ) - Caching
  -/*                    if (this.eventPipeline.getGenerator() != null &&
  -                        this.eventPipeline instanceof CacheableEventPipeline) {
  -                        CacheableEventPipeline cep = 
(CacheableEventPipeline)this.eventPipeline;
  -                        PipelineCacheKey pck = cep.generateKey(this.environment);
  -                        Map validity = null;
  -                        if (pck != null) {
  -                            validity = cep.generateValidity(this.environment);
  -                            if (validity != null) {
  -                                // the event pipeline is cacheable
  -                                // now calculate a last modification date
  -                                String hashKey = pck.toString() + 
validity.toString();
  -                                this.lastModificationDate = HashUtil.hash(hashKey);
  -                            }
  -                        }
  -                    }*/
  -            } else {
  +            if (redirectURL != null) {
                   if (redirectURL.indexOf(":") == -1) {
                       redirectURL = "cocoon:/" + redirectURL;
                   }
  
  
  
  1.8       +12 -36    
xml-cocoon2/src/java/org/apache/cocoon/components/source/impl/SitemapSource.java
  
  Index: SitemapSource.java
  ===================================================================
  RCS file: 
/home/cvs/xml-cocoon2/src/java/org/apache/cocoon/components/source/impl/SitemapSource.java,v
  retrieving revision 1.7
  retrieving revision 1.8
  diff -u -r1.7 -r1.8
  --- SitemapSource.java        27 May 2002 14:31:26 -0000      1.7
  +++ SitemapSource.java        27 May 2002 14:56:28 -0000      1.8
  @@ -53,7 +53,7 @@
   import org.apache.excalibur.source.Source;
   import org.apache.excalibur.source.SourceException;
   import org.apache.excalibur.source.SourceValidity;
  -import org.apache.excalibur.source.impl.validity.TimeStampValidity;
  +import org.apache.excalibur.source.impl.validity.AggregatedValidity;
   import org.apache.avalon.excalibur.pool.Recyclable;
   import org.apache.avalon.excalibur.xml.XMLizable;
   import org.apache.avalon.framework.component.ComponentException;
  @@ -93,15 +93,15 @@
    * Description of a source which is defined by a pipeline.
    *
    * @author <a href="mailto:[EMAIL PROTECTED]";>Carsten Ziegeler</a>
  - * @version CVS $Id: SitemapSource.java,v 1.7 2002/05/27 14:31:26 cziegeler Exp $
  + * @version CVS $Id: SitemapSource.java,v 1.8 2002/05/27 14:56:28 cziegeler Exp $
    */
   
   public final class SitemapSource
   extends AbstractXMLConsumer
   implements Source, XMLizable, Recyclable {
   
  -    /** The last modification date or 0 */
  -    private long lastModificationDate;
  +    /** validities for the internal pipeline */
  +    private AggregatedValidity sourceValidity;
   
       /** The system id */
       private String systemId;
  @@ -204,17 +204,6 @@
       }
   
       /**
  -     * Get the last modification date of the source or 0 if it
  -     * is not possible to determine the date.
  -     */
  -    public long getLastModified() {
  -        if (this.needsRefresh) {
  -            this.discardValidity();
  -        }
  -        return this.lastModificationDate;
  -    }
  -
  -    /**
        * Get the content length of the source or -1 if it
        * is not possible to determine the length.
        */
  @@ -275,11 +264,7 @@
           if (this.redirectSource != null) {
               return this.redirectValidity;
           }
  -        if (this.lastModificationDate < 1) {
  -            return null;
  -        } else {
  -            return new TimeStampValidity( this.lastModificationDate );
  -        }
  +        return this.sourceValidity;
       }
   
       /**
  @@ -304,22 +289,13 @@
               this.processingPipeline = 
this.processor.processInternal(this.environment);
               String redirectURL = this.environment.getRedirectURL();
               if (redirectURL == null) {
  -                // FIXME (CZ) - Caching
  -                /*if (this.processingPipeline.getGenerator() != null &&
  -                    this.eventPipeline instanceof CacheableEventPipeline) {
  -                    CacheableEventPipeline cep = 
(CacheableEventPipeline)this.eventPipeline;
  -                    PipelineCacheKey pck = cep.generateKey(this.environment);
  -                    Map validity = null;
  -                    if (pck != null) {
  -                        validity = cep.generateValidity(this.environment);
  -                        if (validity != null) {
  -                            // the event pipeline is cacheable
  -                            // now calculate a last modification date
  -                            String hashKey = pck.toString() + validity.toString();
  -                            this.lastModificationDate = HashUtil.hash(hashKey);
  -                        }
  +                SourceValidity[] eventPipelineValidities = 
this.processingPipeline.getValiditiesForEventPipeline();
  +                if ( eventPipelineValidities != null ) {
  +                    this.sourceValidity = new AggregatedValidity();
  +                    for(int i=0; i < eventPipelineValidities.length;i++) {
  +                        this.sourceValidity.add(eventPipelineValidities[i]);
                       }
  -                } */
  +                }
               } else {
                   if (redirectURL.indexOf(":") == -1) {
                       redirectURL = "cocoon:/" + redirectURL;
  @@ -395,7 +371,7 @@
       private void reset() {
           if (this.processingPipeline != null) 
this.manager.release(this.processingPipeline);
           this.processingPipeline = null;
  -        this.lastModificationDate = 0;
  +        this.sourceValidity = null;
           if (this.redirectSource != null) 
this.environment.release(this.redirectSource);
           this.environment.reset();
           this.redirectSource = null;
  
  
  

----------------------------------------------------------------------
In case of troubles, e-mail:     [EMAIL PROTECTED]
To unsubscribe, e-mail:          [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to