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/10/19 18:12:54 UTC

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

cziegeler    2003/10/19 09:12:54

  Modified:    src/java/org/apache/cocoon/components/treeprocessor
                        TreeProcessor.java
               src/java/org/apache/cocoon Cocoon.java
               src/java/org/apache/cocoon/components/pipeline
                        AbstractProcessingPipeline.java
  Log:
  Setting per sitemap source resolver during setup
  
  Revision  Changes    Path
  1.17      +3 -3      cocoon-2.2/src/java/org/apache/cocoon/components/treeprocessor/TreeProcessor.java
  
  Index: TreeProcessor.java
  ===================================================================
  RCS file: /home/cvs/cocoon-2.2/src/java/org/apache/cocoon/components/treeprocessor/TreeProcessor.java,v
  retrieving revision 1.16
  retrieving revision 1.17
  diff -u -r1.16 -r1.17
  --- TreeProcessor.java	19 Oct 2003 16:06:32 -0000	1.16
  +++ TreeProcessor.java	19 Oct 2003 16:12:54 -0000	1.17
  @@ -591,8 +591,8 @@
        * @see org.apache.cocoon.Processor#getSourceResolver()
        */
       public org.apache.cocoon.environment.SourceResolver getSourceResolver() {
  -        // TODO Auto-generated method stub
  -        return null;
  +        // TODO (CZ) Add real resolver here
  +        return (org.apache.cocoon.environment.SourceResolver)this.resolver;
       }
   
   }
  
  
  
  1.22      +2 -2      cocoon-2.2/src/java/org/apache/cocoon/Cocoon.java
  
  Index: Cocoon.java
  ===================================================================
  RCS file: /home/cvs/cocoon-2.2/src/java/org/apache/cocoon/Cocoon.java,v
  retrieving revision 1.21
  retrieving revision 1.22
  diff -u -r1.21 -r1.22
  --- Cocoon.java	19 Oct 2003 16:06:32 -0000	1.21
  +++ Cocoon.java	19 Oct 2003 16:12:54 -0000	1.22
  @@ -487,7 +487,7 @@
        */
       public org.apache.cocoon.environment.SourceResolver getSourceResolver() {
           // TODO (CZ) Implement me
  -        return null;
  +        return (org.apache.cocoon.environment.SourceResolver)this.sourceResolver;
       }
   
   }
  
  
  
  1.10      +19 -69    cocoon-2.2/src/java/org/apache/cocoon/components/pipeline/AbstractProcessingPipeline.java
  
  Index: AbstractProcessingPipeline.java
  ===================================================================
  RCS file: /home/cvs/cocoon-2.2/src/java/org/apache/cocoon/components/pipeline/AbstractProcessingPipeline.java,v
  retrieving revision 1.9
  retrieving revision 1.10
  diff -u -r1.9 -r1.10
  --- AbstractProcessingPipeline.java	15 Oct 2003 18:03:53 -0000	1.9
  +++ AbstractProcessingPipeline.java	19 Oct 2003 16:12:54 -0000	1.10
  @@ -50,8 +50,15 @@
   */
   package org.apache.cocoon.components.pipeline;
   
  +import java.io.ByteArrayOutputStream;
  +import java.io.IOException;
  +import java.net.SocketException;
  +import java.util.ArrayList;
  +import java.util.Iterator;
  +import java.util.NoSuchElementException;
  +import java.util.StringTokenizer;
  +
   import org.apache.avalon.excalibur.pool.Recyclable;
  -import org.apache.avalon.framework.activity.Disposable;
   import org.apache.avalon.framework.component.Component;
   import org.apache.avalon.framework.component.ComponentException;
   import org.apache.avalon.framework.component.ComponentManager;
  @@ -62,6 +69,7 @@
   import org.apache.avalon.framework.parameters.Parameters;
   import org.apache.cocoon.ConnectionResetException;
   import org.apache.cocoon.ProcessingException;
  +import org.apache.cocoon.Processor;
   import org.apache.cocoon.components.CocoonComponentManager;
   import org.apache.cocoon.environment.Environment;
   import org.apache.cocoon.environment.ObjectModelHelper;
  @@ -72,21 +80,9 @@
   import org.apache.cocoon.transformation.Transformer;
   import org.apache.cocoon.xml.XMLConsumer;
   import org.apache.cocoon.xml.XMLProducer;
  -import org.apache.excalibur.source.Source;
  -import org.apache.excalibur.source.SourceResolver;
   import org.apache.excalibur.source.SourceValidity;
   import org.xml.sax.SAXException;
   
  -import java.io.ByteArrayOutputStream;
  -import java.io.IOException;
  -import java.net.MalformedURLException;
  -import java.net.SocketException;
  -import java.util.ArrayList;
  -import java.util.Iterator;
  -import java.util.Map;
  -import java.util.NoSuchElementException;
  -import java.util.StringTokenizer;
  -
   /**
    * This is the base for all implementations of a <code>ProcessingPipeline</code>.
    *
  @@ -96,7 +92,7 @@
    */
   public abstract class AbstractProcessingPipeline
     extends AbstractLogEnabled
  -  implements ProcessingPipeline, Parameterizable, Recyclable, Disposable {
  +  implements ProcessingPipeline, Parameterizable, Recyclable {
   
       // Generator stuff
       protected Generator generator;
  @@ -155,11 +151,8 @@
       /** Output Buffer Size */
       protected int  outputBufferSize;
   
  -    /** The source resolver */
  -    protected SourceResolver resolver;
  -    
  -    /** The wrapper passed on the sitemap components */
  -    protected org.apache.cocoon.environment.SourceResolver resolverWrapper;
  +    /** The current Processor */
  +    protected Processor processor;
       
       /**
        * Composable Interface
  @@ -168,8 +161,6 @@
       throws ComponentException {
           this.manager = manager;
           this.newManager = manager;
  -        this.resolver = (SourceResolver)this.manager.lookup(SourceResolver.ROLE);
  -        this.resolverWrapper = new SourceResolverWrapper(this.resolver);
       }
   
       /**
  @@ -392,7 +383,7 @@
           try {
               // setup the generator
               this.generator.setup(
  -                this.resolverWrapper,
  +                this.processor.getSourceResolver(),
                   environment.getObjectModel(),
                   generatorSource,
                   generatorParam
  @@ -405,7 +396,7 @@
               while ( transformerItt.hasNext() ) {
                   Transformer trans = (Transformer)transformerItt.next();
                   trans.setup(
  -                    this.resolverWrapper,
  +                    this.processor.getSourceResolver(),
                       environment.getObjectModel(),
                       (String)transformerSourceItt.next(),
                       (Parameters)transformerParamItt.next()
  @@ -511,6 +502,8 @@
        */
       protected void preparePipeline(Environment environment)
       throws ProcessingException {
  +        // TODO (CZ) Get the processor set via IoC
  +        this.processor = CocoonComponentManager.getCurrentProcessor();
           if ( !checkPipeline() ) {
               throw new ProcessingException("Attempted to process incomplete pipeline.");
           }
  @@ -576,7 +569,7 @@
       throws ProcessingException {
           try {
               String mimeType;
  -            this.reader.setup(this.resolverWrapper,environment.getObjectModel(),readerSource,readerParam);
  +            this.reader.setup(this.processor.getSourceResolver(),environment.getObjectModel(),readerSource,readerParam);
               mimeType = this.reader.getMimeType();
               if ( mimeType != null ) {
                   environment.setContentType(mimeType);
  @@ -680,6 +673,7 @@
           }
           this.serializer = null;
           this.parameters = null;
  +        this.processor = null;
       }
   
       /**
  @@ -784,50 +778,6 @@
        */
       public String getKeyForEventPipeline() {
           return null;
  -    }
  -
  -    /* (non-Javadoc)
  -     * @see org.apache.avalon.framework.activity.Disposable#dispose()
  -     */
  -    public void dispose() {
  -        if ( this.manager != null ) {
  -            this.manager.release(this.resolver);
  -            this.resolver = null;
  -            this.manager = null;
  -        }
  -    }
  -
  -}
  -
  -final class SourceResolverWrapper
  -implements org.apache.cocoon.environment.SourceResolver {
  -    
  -    protected SourceResolver resolver;
  -    
  -    public SourceResolverWrapper(SourceResolver resolver) {
  -        this.resolver = resolver;
  -    }
  -    /* (non-Javadoc)
  -     * @see org.apache.excalibur.source.SourceResolver#release(org.apache.excalibur.source.Source)
  -     */
  -    public void release(Source source) {
  -        this.resolver.release(source);
  -    }
  -
  -    /* (non-Javadoc)
  -     * @see org.apache.excalibur.source.SourceResolver#resolveURI(java.lang.String, java.lang.String, java.util.Map)
  -     */
  -    public Source resolveURI(String arg0, String arg1, Map arg2)
  -    throws MalformedURLException, IOException {
  -        return this.resolveURI(arg0, arg1, arg2);
  -    }
  -
  -    /* (non-Javadoc)
  -     * @see org.apache.excalibur.source.SourceResolver#resolveURI(java.lang.String)
  -     */
  -    public Source resolveURI(String arg0)
  -    throws MalformedURLException, IOException {
  -        return this.resolver.resolveURI(arg0);
       }
   
   }