cziegeler    2002/06/04 01:55:48

  Modified:    lib/core avalon-excalibur-20020603.jar
               src/java/org/apache/cocoon/caching
                        CacheValidityToSourceValidity.java
                        SourceCacheValidity.java
               src/java/org/apache/cocoon/components/pipeline/impl
                        CachingProcessingPipeline.java
  Log:
  Updated to latest excalibur. Now the SourceValidity.isValid() method has three 
return values which makes testing in general a little bit faster.
  
  Revision  Changes    Path
  1.3       +345 -332  xml-cocoon2/lib/core/avalon-excalibur-20020603.jar
  
        <<Binary file>>
  
  
  1.5       +6 -4      
xml-cocoon2/src/java/org/apache/cocoon/caching/CacheValidityToSourceValidity.java
  
  Index: CacheValidityToSourceValidity.java
  ===================================================================
  RCS file: 
/home/cvs/xml-cocoon2/src/java/org/apache/cocoon/caching/CacheValidityToSourceValidity.java,v
  retrieving revision 1.4
  retrieving revision 1.5
  diff -u -r1.4 -r1.5
  --- CacheValidityToSourceValidity.java        29 May 2002 10:24:18 -0000      1.4
  +++ CacheValidityToSourceValidity.java        4 Jun 2002 08:55:48 -0000       1.5
  @@ -58,7 +58,7 @@
    *
    * @since @next-version@
    * @author <a href="mailto:[EMAIL PROTECTED]";>Carsten Ziegeler</a>
  - * @version CVS $Id: CacheValidityToSourceValidity.java,v 1.4 2002/05/29 10:24:18 
cziegeler Exp $
  + * @version CVS $Id: CacheValidityToSourceValidity.java,v 1.5 2002/06/04 08:55:48 
cziegeler Exp $
    */
   public final class CacheValidityToSourceValidity
   implements SourceValidity {
  @@ -85,11 +85,13 @@
   
       /**
        * Check if the component is still valid.
  -     * If <code>false</code> is returned the isValid(SourceValidity) must be
  +     * If <code>0</code> is returned the isValid(SourceValidity) must be
        * called afterwards!
  +     * If -1 is returned, the component is not valid anymore and if +1
  +     * is returnd, the component is valid.
        */
  -    public boolean isValid() {
  -        return false;
  +    public int isValid() {
  +        return 0;
       }
   
       /**
  
  
  
  1.5       +4 -3      
xml-cocoon2/src/java/org/apache/cocoon/caching/SourceCacheValidity.java
  
  Index: SourceCacheValidity.java
  ===================================================================
  RCS file: 
/home/cvs/xml-cocoon2/src/java/org/apache/cocoon/caching/SourceCacheValidity.java,v
  retrieving revision 1.4
  retrieving revision 1.5
  diff -u -r1.4 -r1.5
  --- SourceCacheValidity.java  6 May 2002 13:22:31 -0000       1.4
  +++ SourceCacheValidity.java  4 Jun 2002 08:55:48 -0000       1.5
  @@ -58,7 +58,7 @@
    *
    * @since @next-version@
    * @author <a href="mailto:[EMAIL PROTECTED]";>Carsten Ziegeler</a>
  - * @version CVS $Id: SourceCacheValidity.java,v 1.4 2002/05/06 13:22:31 cziegeler 
Exp $
  + * @version CVS $Id: SourceCacheValidity.java,v 1.5 2002/06/04 08:55:48 cziegeler 
Exp $
    */
   public final class SourceCacheValidity
   implements CacheValidity {
  @@ -78,8 +78,9 @@
        * type and has the same values.
        */
       public boolean isValid(CacheValidity validity) {
  -        if (this.sourceValidity.isValid()) return true;
  -        if (validity instanceof SourceCacheValidity) {
  +        final int valid = this.sourceValidity.isValid();
  +        if (valid == 1) return true;
  +        if (valid == 0 && validity instanceof SourceCacheValidity) {
               return 
this.sourceValidity.isValid(((SourceCacheValidity)validity).getSourceValidity());
           }
           return false;
  
  
  
  1.22      +11 -5     
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.21
  retrieving revision 1.22
  diff -u -r1.21 -r1.22
  --- CachingProcessingPipeline.java    29 May 2002 10:24:18 -0000      1.21
  +++ CachingProcessingPipeline.java    4 Jun 2002 08:55:48 -0000       1.22
  @@ -92,7 +92,7 @@
    *
    * @since @next-version@
    * @author <a href="mailto:[EMAIL PROTECTED]";>Carsten Ziegeler</a>
  - * @version CVS $Id: CachingProcessingPipeline.java,v 1.21 2002/05/29 10:24:18 
cziegeler Exp $
  + * @version CVS $Id: CachingProcessingPipeline.java,v 1.22 2002/06/04 08:55:48 
cziegeler Exp $
    */
   public class CachingProcessingPipeline
   extends AbstractProcessingPipeline
  @@ -396,8 +396,9 @@
                   SourceValidity[] validities = response.getValidityObjects();
                   int i = 0;
                   while (responseIsValid && i < validities.length) {
  -                    boolean isValid = validities[i].isValid();
  -                    if ( !isValid ) {
  +                    int valid = validities[i].isValid();
  +                    boolean isValid = false;
  +                    if ( valid == 0) {
                           final SourceValidity validity;
                           if (i == 0) {
                               // test generator
  @@ -432,6 +433,8 @@
                               validities[i] = validity;
                               if (validity == null) responseIsUsable = false;
                           }
  +                    } else {
  +                        isValid = (valid == 1);
                       }
                       if ( isValid ) i++;
                   }
  @@ -674,8 +677,9 @@
                           throw new ProcessingException("Cached response is not 
correct.");
                       }
                       SourceValidity cachedValidity = validities[0];
  -                    boolean valid = cachedValidity.isValid();
  -                    if ( !valid ) {
  +                    int result = cachedValidity.isValid();
  +                    boolean valid = false;
  +                    if ( result == 0 ) {
                           // get reader validity and compare
                           if (isCacheableProcessingComponent) {
                               readerValidity = 
((CacheableProcessingComponent)super.reader).generateValidity();
  @@ -688,6 +692,8 @@
                           if (readerValidity != null) {
                                valid = cachedValidity.isValid(readerValidity);
                           }
  +                    } else {
  +                        valid = (result > 0);
                       }
   
                       if (valid) {
  
  
  

----------------------------------------------------------------------
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