Author: vgritsenko Date: Fri Mar 18 08:53:15 2005 New Revision: 158097 URL: http://svn.apache.org/viewcvs?view=rev&rev=158097 Log: Use SourceValidity constants
Modified: cocoon/branches/BRANCH_2_1_X/src/blocks/forms/java/org/apache/cocoon/forms/DefaultCacheManager.java cocoon/branches/BRANCH_2_1_X/src/java/org/apache/cocoon/components/pipeline/impl/AbstractCachingProcessingPipeline.java cocoon/branches/BRANCH_2_1_X/src/java/org/apache/cocoon/components/source/impl/MultiSourceValidity.java Modified: cocoon/branches/BRANCH_2_1_X/src/blocks/forms/java/org/apache/cocoon/forms/DefaultCacheManager.java URL: http://svn.apache.org/viewcvs/cocoon/branches/BRANCH_2_1_X/src/blocks/forms/java/org/apache/cocoon/forms/DefaultCacheManager.java?view=diff&r1=158096&r2=158097 ============================================================================== --- cocoon/branches/BRANCH_2_1_X/src/blocks/forms/java/org/apache/cocoon/forms/DefaultCacheManager.java (original) +++ cocoon/branches/BRANCH_2_1_X/src/blocks/forms/java/org/apache/cocoon/forms/DefaultCacheManager.java Fri Mar 18 08:53:15 2005 @@ -1,12 +1,12 @@ /* - * Copyright 1999-2004 The Apache Software Foundation. - * + * Copyright 1999-2005 The Apache Software Foundation. + * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at - * + * * http://www.apache.org/licenses/LICENSE-2.0 - * + * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. @@ -33,13 +33,13 @@ /** * Component implementing the [EMAIL PROTECTED] CacheManager} role. - * + * * @version $Id$ */ -public class DefaultCacheManager - extends AbstractLogEnabled +public class DefaultCacheManager + extends AbstractLogEnabled implements CacheManager, ThreadSafe, Serviceable, Disposable, Configurable, Component { - + protected ServiceManager manager; protected Configuration configuration; protected FastHashMap cache = new FastHashMap(); @@ -61,29 +61,30 @@ // If source is not valid then remove object from cache and return null if (newValidity == null) { - cache.remove(key); + this.cache.remove(key); return null; } // If object is not in cache then return null - Object[] objectAndValidity = (Object[])cache.get(key); - if (objectAndValidity == null) + Object[] objectAndValidity = (Object[]) this.cache.get(key); + if (objectAndValidity == null) { return null; + } - // Check stored validity against current source validity - SourceValidity storedValidity = (SourceValidity)objectAndValidity[1]; + // Check stored validity against current source validity + SourceValidity storedValidity = (SourceValidity) objectAndValidity[1]; int valid = storedValidity.isValid(); boolean isValid; - if (valid == 0) { + if (valid == SourceValidity.UNKNOWN) { valid = storedValidity.isValid(newValidity); - isValid = (valid == 1); + isValid = (valid == SourceValidity.VALID); } else { - isValid = (valid == 1); + isValid = (valid == SourceValidity.VALID); } // If stored object is not valid then remove object from cache and return null if (!isValid) { - cache.remove(key); + this.cache.remove(key); return null; } Modified: cocoon/branches/BRANCH_2_1_X/src/java/org/apache/cocoon/components/pipeline/impl/AbstractCachingProcessingPipeline.java URL: http://svn.apache.org/viewcvs/cocoon/branches/BRANCH_2_1_X/src/java/org/apache/cocoon/components/pipeline/impl/AbstractCachingProcessingPipeline.java?view=diff&r1=158096&r2=158097 ============================================================================== --- cocoon/branches/BRANCH_2_1_X/src/java/org/apache/cocoon/components/pipeline/impl/AbstractCachingProcessingPipeline.java (original) +++ cocoon/branches/BRANCH_2_1_X/src/java/org/apache/cocoon/components/pipeline/impl/AbstractCachingProcessingPipeline.java Fri Mar 18 08:53:15 2005 @@ -491,23 +491,23 @@ while (responseIsValid && i < fromCacheValidityObjects.length) { boolean isValid = false; - // BH check if validities[i] is null, may happen - // if exception was thrown due to malformed content + // BH Check if validities[i] is null, may happen + // if exception was thrown due to malformed content SourceValidity validity = fromCacheValidityObjects[i]; - int valid = validity != null ? validity.isValid() : -1; - if (valid == 0) { // don't know if valid, make second test - - validity = this.getValidityForInternalPipeline(i); + int valid = validity == null ? SourceValidity.INVALID : validity.isValid(); + if (valid == SourceValidity.UNKNOWN) { + // Don't know if valid, make second test + validity = getValidityForInternalPipeline(i); if (validity != null) { - valid = fromCacheValidityObjects[i].isValid( validity ); - if (valid == 0) { + valid = fromCacheValidityObjects[i].isValid(validity); + if (valid == SourceValidity.UNKNOWN) { validity = null; } else { - isValid = (valid == 1); + isValid = (valid == SourceValidity.VALID); } } } else { - isValid = (valid == 1); + isValid = (valid == SourceValidity.VALID); } if (!isValid) { @@ -564,7 +564,7 @@ this.cacheCompleteResponse = false; } else { // the entry is invalid, remove it - this.cache.remove( this.fromCacheKey ); + this.cache.remove(this.fromCacheKey); } // try a shorter key @@ -686,7 +686,7 @@ SourceValidity[] validities = cachedObject.getValidityObjects(); if (validities == null || validities.length != 1) { // to avoid getting here again and again, we delete it - this.cache.remove( pcKey ); + this.cache.remove(pcKey); if (getLogger().isDebugEnabled()) { getLogger().debug("Cached response for '" + environment.getURI() + "' using key: " + pcKey + " is invalid."); @@ -694,31 +694,31 @@ this.cachedResponse = null; } else { SourceValidity cachedValidity = validities[0]; - int result = cachedValidity.isValid(); - boolean valid = false; - if ( result == 0 ) { + boolean isValid = false; + int valid = cachedValidity.isValid(); + if (valid == SourceValidity.UNKNOWN) { // get reader validity and compare if (isCacheableProcessingComponent) { - readerValidity = ((CacheableProcessingComponent)super.reader).getValidity(); + readerValidity = ((CacheableProcessingComponent) super.reader).getValidity(); } else { - CacheValidity cv = ((Cacheable)super.reader).generateValidity(); + CacheValidity cv = ((Cacheable) super.reader).generateValidity(); if (cv != null) { - readerValidity = CacheValidityToSourceValidity.createValidity( cv ); + readerValidity = CacheValidityToSourceValidity.createValidity(cv); } } if (readerValidity != null) { - result = cachedValidity.isValid(readerValidity); - if ( result == 0 ) { + valid = cachedValidity.isValid(readerValidity); + if (valid == SourceValidity.UNKNOWN) { readerValidity = null; } else { - valid = (result == 1); + isValid = (valid == SourceValidity.VALID); } } } else { - valid = (result > 0); + isValid = (valid == SourceValidity.VALID); } - if (valid) { + if (isValid) { if (getLogger().isDebugEnabled()) { getLogger().debug("processReader: using valid cached content for '" + environment.getURI() + "'."); @@ -726,10 +726,10 @@ byte[] response = cachedObject.getResponse(); if (response.length > 0) { usedCache = true; - if ( cachedObject.getContentType() != null ) { + if (cachedObject.getContentType() != null) { environment.setContentType(cachedObject.getContentType()); } else { - this.setMimeTypeForReader(environment); + setMimeTypeForReader(environment); } outputStream = environment.getOutputStream(0); environment.setContentLength(response.length); Modified: cocoon/branches/BRANCH_2_1_X/src/java/org/apache/cocoon/components/source/impl/MultiSourceValidity.java URL: http://svn.apache.org/viewcvs/cocoon/branches/BRANCH_2_1_X/src/java/org/apache/cocoon/components/source/impl/MultiSourceValidity.java?view=diff&r1=158096&r2=158097 ============================================================================== --- cocoon/branches/BRANCH_2_1_X/src/java/org/apache/cocoon/components/source/impl/MultiSourceValidity.java (original) +++ cocoon/branches/BRANCH_2_1_X/src/java/org/apache/cocoon/components/source/impl/MultiSourceValidity.java Fri Mar 18 08:53:15 2005 @@ -1,5 +1,5 @@ /* - * Copyright 1999-2004 The Apache Software Foundation. + * Copyright 1999-2005 The Apache Software Foundation. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -28,7 +28,7 @@ * <p>An aggregated [EMAIL PROTECTED] SourceValidity} for multiple sources.</p> * * @author <a href="http://www.apache.org/~sylvain">Sylvain Wallez</a> - * @version CVS $Id$ + * @version $Id$ */ public class MultiSourceValidity extends AbstractAggregatedValidity implements SourceValidity { @@ -160,7 +160,7 @@ /* Check the validity status */ SourceValidity validity = (SourceValidity) validities.get(i); - switch(validity.isValid()) { + switch (validity.isValid()) { /* The current source is valid: just continue to next source */ case SourceValidity.VALID: @@ -173,24 +173,30 @@ /* The source validity is not known: check with the new source */ case SourceValidity.UNKNOWN: /* We have no resolver: definitely don't know */ - if (resolver == null) return 0; + if (resolver == null) { + return SourceValidity.UNKNOWN; + } /* Check the new source by asking to the resolver */ Source newSrc = null; int newValidity = SourceValidity.INVALID; try { - newSrc = resolver.resolveURI((String) uris.get(i)); + newSrc = resolver.resolveURI((String) this.uris.get(i)); newValidity = validity.isValid(newSrc.getValidity()); } catch(IOException ioe) { /* Swallow the IOException, but set the new validity */ newValidity = SourceValidity.INVALID; } finally { /* Make sure that the source is released */ - if (newSrc != null) resolver.release(newSrc); + if (newSrc != null) { + resolver.release(newSrc); + } } /* If the source is still valid, go to the next one */ - if (newValidity == SourceValidity.VALID) break; + if (newValidity == SourceValidity.VALID) { + break; + } /* The source is not valid (or unknown), we invalidate the lot */ return SourceValidity.INVALID; @@ -202,6 +208,6 @@ } /* All items checked successfully */ - return 1; + return SourceValidity.VALID; } }