cziegeler    2003/10/19 06:59:21

  Modified:    src/java/org/apache/cocoon/components/source/impl
                        SitemapSource.java
  Log:
  Remove hacky cast from environment to SourceResolver
  
  Revision  Changes    Path
  1.13      +15 -3     
cocoon-2.1/src/java/org/apache/cocoon/components/source/impl/SitemapSource.java
  
  Index: SitemapSource.java
  ===================================================================
  RCS file: 
/home/cvs/cocoon-2.1/src/java/org/apache/cocoon/components/source/impl/SitemapSource.java,v
  retrieving revision 1.12
  retrieving revision 1.13
  diff -u -r1.12 -r1.13
  --- SitemapSource.java        8 Oct 2003 20:18:34 -0000       1.12
  +++ SitemapSource.java        19 Oct 2003 13:59:21 -0000      1.13
  @@ -77,6 +77,7 @@
   import org.apache.excalibur.source.Source;
   import org.apache.excalibur.source.SourceException;
   import org.apache.excalibur.source.SourceNotFoundException;
  +import org.apache.excalibur.source.SourceResolver;
   import org.apache.excalibur.source.SourceValidity;
   import org.apache.excalibur.xml.sax.XMLizable;
   import org.xml.sax.ContentHandler;
  @@ -142,6 +143,9 @@
       /** The used protocol */
       private String protocol;
   
  +    /** SourceResolver (for the redirect source) */
  +    private SourceResolver sourceResolver;
  +    
       /**
        * Construct a new object
        */
  @@ -413,7 +417,10 @@
                   if (redirectURL.indexOf(":") == -1) {
                       redirectURL = this.protocol + ":/" + redirectURL;
                   }
  -                this.redirectSource = 
this.environment.resolveURI(redirectURL);
  +                if ( this.sourceResolver == null ) {
  +                    this.sourceResolver = (SourceResolver) 
this.manager.lookup(SourceResolver.ROLE);
  +                }
  +                this.redirectSource = 
this.sourceResolver.resolveURI(redirectURL);
                   this.redirectValidity = this.redirectSource.getValidity();
               }
           } catch (SAXException e) {
  @@ -485,7 +492,9 @@
           }
           this.processingPipeline = null;
           this.sourceValidity = null;
  -        if (this.redirectSource != null) 
this.environment.release(this.redirectSource);
  +        if (this.redirectSource != null) {
  +            this.sourceResolver.release(this.redirectSource);
  +        }
           this.environment.reset();
           this.redirectSource = null;
           this.redirectValidity = null;
  @@ -499,6 +508,9 @@
        */
       public void recycle() {
           this.reset();
  +        if ( this.sourceResolver != null ) {
  +            this.manager.release( this.sourceResolver );
  +        }
       }
   
       /**
  
  
  

Reply via email to