You are viewing a plain text version of this content. The canonical link for it is here.
Posted to cvs@cocoon.apache.org by vg...@apache.org on 2007/12/24 02:21:52 UTC
svn commit: r606651 - in /cocoon/trunk/core/cocoon-sitemap:
cocoon-sitemap-api/src/main/java/org/apache/cocoon/
cocoon-sitemap-components/src/main/java/org/apache/cocoon/components/source/impl/
cocoon-sitemap-impl/src/main/java/org/apache/cocoon/compon...
Author: vgritsenko
Date: Sun Dec 23 17:21:51 2007
New Revision: 606651
URL: http://svn.apache.org/viewvc?rev=606651&view=rev
Log:
Get rid of InternalPipelineDescription.pipelineSelector.
Modified:
cocoon/trunk/core/cocoon-sitemap/cocoon-sitemap-api/src/main/java/org/apache/cocoon/Processor.java
cocoon/trunk/core/cocoon-sitemap/cocoon-sitemap-components/src/main/java/org/apache/cocoon/components/source/impl/SitemapSource.java
cocoon/trunk/core/cocoon-sitemap/cocoon-sitemap-impl/src/main/java/org/apache/cocoon/components/treeprocessor/InvokeContext.java
Modified: cocoon/trunk/core/cocoon-sitemap/cocoon-sitemap-api/src/main/java/org/apache/cocoon/Processor.java
URL: http://svn.apache.org/viewvc/cocoon/trunk/core/cocoon-sitemap/cocoon-sitemap-api/src/main/java/org/apache/cocoon/Processor.java?rev=606651&r1=606650&r2=606651&view=diff
==============================================================================
--- cocoon/trunk/core/cocoon-sitemap/cocoon-sitemap-api/src/main/java/org/apache/cocoon/Processor.java (original)
+++ cocoon/trunk/core/cocoon-sitemap/cocoon-sitemap-api/src/main/java/org/apache/cocoon/Processor.java Sun Dec 23 17:21:51 2007
@@ -17,7 +17,7 @@
package org.apache.cocoon;
import org.apache.avalon.framework.service.ServiceManager;
-import org.apache.avalon.framework.service.ServiceSelector;
+
import org.apache.cocoon.components.pipeline.ProcessingPipeline;
import org.apache.cocoon.environment.Environment;
import org.apache.cocoon.environment.SourceResolver;
@@ -32,34 +32,40 @@
String ROLE = Processor.class.getName();
/**
- *
+ * Keeps together processing pipeline, its owners, and environment state variables.
*/
public static class InternalPipelineDescription {
-
- public ProcessingPipeline processingPipeline;
+
+ /** Processor owning this service manager and pipeline */
+ public Processor processor;
+
+ /** Service manager of this pipeline */
public ServiceManager pipelineManager;
- public ServiceSelector pipelineSelector;
- public Processor lastProcessor;
+
+ /** Processing pipeline itself */
+ public ProcessingPipeline processingPipeline;
+
+ /** Environment prefix */
public String prefix;
+
+ /** Environment URI */
public String uri;
- public InternalPipelineDescription(ProcessingPipeline pipeline,
- ServiceSelector selector,
- ServiceManager manager) {
- this.processingPipeline = pipeline;
- this.pipelineSelector = selector;
+ public InternalPipelineDescription(Processor processor,
+ ServiceManager manager,
+ ProcessingPipeline pipeline) {
+ this.processor = processor;
this.pipelineManager = manager;
+ this.processingPipeline = pipeline;
}
public void release() {
- if (this.pipelineSelector != null) {
- this.pipelineSelector.release(this.processingPipeline);
- this.pipelineManager.release(this.pipelineSelector);
+ if (this.pipelineManager != null) {
+ this.pipelineManager.release(this.processingPipeline);
}
- this.lastProcessor = null;
this.processingPipeline = null;
this.pipelineManager = null;
- this.pipelineSelector = null;
+ this.processor = null;
}
}
Modified: cocoon/trunk/core/cocoon-sitemap/cocoon-sitemap-components/src/main/java/org/apache/cocoon/components/source/impl/SitemapSource.java
URL: http://svn.apache.org/viewvc/cocoon/trunk/core/cocoon-sitemap/cocoon-sitemap-components/src/main/java/org/apache/cocoon/components/source/impl/SitemapSource.java?rev=606651&r1=606650&r2=606651&view=diff
==============================================================================
--- cocoon/trunk/core/cocoon-sitemap/cocoon-sitemap-components/src/main/java/org/apache/cocoon/components/source/impl/SitemapSource.java (original)
+++ cocoon/trunk/core/cocoon-sitemap/cocoon-sitemap-components/src/main/java/org/apache/cocoon/components/source/impl/SitemapSource.java Sun Dec 23 17:21:51 2007
@@ -192,7 +192,7 @@
try {
ByteArrayOutputStream os = new ByteArrayOutputStream();
this.environment.setOutputStream(os);
- EnvironmentHelper.enterProcessor(this.pipelineDescription.lastProcessor,
+ EnvironmentHelper.enterProcessor(this.pipelineDescription.processor,
this.environment);
try {
@@ -286,7 +286,7 @@
String redirectURL = this.environment.getRedirectURL();
if (redirectURL == null) {
- EnvironmentHelper.enterProcessor(this.pipelineDescription.lastProcessor,
+ EnvironmentHelper.enterProcessor(this.pipelineDescription.processor,
this.environment);
try {
this.pipelineDescription.processingPipeline.prepareInternal(this.environment);
@@ -356,7 +356,7 @@
}
// We have to add an environment changer
// for clean environment stack handling.
- EnvironmentHelper.enterProcessor(this.pipelineDescription.lastProcessor,
+ EnvironmentHelper.enterProcessor(this.pipelineDescription.processor,
this.environment);
try {
this.pipelineDescription.processingPipeline.process(this.environment,
Modified: cocoon/trunk/core/cocoon-sitemap/cocoon-sitemap-impl/src/main/java/org/apache/cocoon/components/treeprocessor/InvokeContext.java
URL: http://svn.apache.org/viewvc/cocoon/trunk/core/cocoon-sitemap/cocoon-sitemap-impl/src/main/java/org/apache/cocoon/components/treeprocessor/InvokeContext.java?rev=606651&r1=606650&r2=606651&view=diff
==============================================================================
--- cocoon/trunk/core/cocoon-sitemap/cocoon-sitemap-impl/src/main/java/org/apache/cocoon/components/treeprocessor/InvokeContext.java (original)
+++ cocoon/trunk/core/cocoon-sitemap/cocoon-sitemap-impl/src/main/java/org/apache/cocoon/components/treeprocessor/InvokeContext.java Sun Dec 23 17:21:51 2007
@@ -26,7 +26,6 @@
import org.apache.avalon.framework.parameters.Parameters;
import org.apache.avalon.framework.service.ServiceException;
import org.apache.avalon.framework.service.ServiceManager;
-import org.apache.avalon.framework.service.ServiceSelector;
import org.apache.avalon.framework.service.Serviceable;
import org.apache.cocoon.Processor;
@@ -84,9 +83,6 @@
/** The parameters for the processing pipeline */
protected Parameters processingPipelineParameters;
- /** The Selector for the processing pipeline */
- protected ServiceSelector pipelineSelector;
-
/** The ProcessingPipeline used */
protected ProcessingPipeline processingPipeline;
@@ -203,13 +199,13 @@
// Keep current manager for proper release
this.pipelinesManager = this.currentManager;
- this.pipelineSelector = (ServiceSelector)this.pipelinesManager.lookup(ProcessingPipeline.ROLE+"Selector");
- this.processingPipeline = (ProcessingPipeline)this.pipelineSelector.select(this.processingPipelineType);
- this.processingPipeline.setProcessorManager(this.currentManager);
+ this.processingPipeline = (ProcessingPipeline) this.pipelinesManager.lookup(ProcessingPipeline.ROLE + '/' + this.processingPipelineType);
+ this.processingPipeline.setProcessorManager(this.pipelinesManager);
this.processingPipeline.setup(this.processingPipelineParameters);
this.processingPipeline.setErrorHandler(this.errorHandler);
}
+
return this.processingPipeline;
}
@@ -219,11 +215,8 @@
public void setInternalPipelineDescription(Processor.InternalPipelineDescription desc) {
this.processingPipeline = desc.processingPipeline;
this.pipelinesManager = desc.pipelineManager;
- this.lastProcessor = desc.lastProcessor;
- this.pipelineSelector = desc.pipelineSelector;
- this.internalPipelineDescription = new Processor.InternalPipelineDescription(
- this.processingPipeline, this.pipelineSelector, this.pipelinesManager);
- this.internalPipelineDescription.lastProcessor = this.lastProcessor;
+ this.lastProcessor = desc.processor;
+ this.internalPipelineDescription = new Processor.InternalPipelineDescription(this.lastProcessor, this.pipelinesManager, this.processingPipeline);
this.internalPipelineDescription.prefix = desc.prefix;
this.internalPipelineDescription.uri = desc.uri;
}
@@ -233,9 +226,7 @@
*/
public Processor.InternalPipelineDescription getInternalPipelineDescription(Environment env) {
if (this.internalPipelineDescription == null) {
- this.internalPipelineDescription = new Processor.InternalPipelineDescription(
- this.processingPipeline, this.pipelineSelector, this.pipelinesManager);
- this.internalPipelineDescription.lastProcessor = this.lastProcessor;
+ this.internalPipelineDescription = new Processor.InternalPipelineDescription(this.lastProcessor, this.pipelinesManager, this.processingPipeline);
this.internalPipelineDescription.prefix = env.getURIPrefix();
this.internalPipelineDescription.uri = env.getURI();
}
@@ -345,12 +336,8 @@
public void dispose() {
if (this.internalPipelineDescription == null && this.pipelinesManager != null) {
if (this.processingPipeline != null) {
- this.pipelineSelector.release(this.processingPipeline);
+ this.pipelinesManager.release(this.processingPipeline);
this.processingPipeline = null;
- }
- if (this.pipelineSelector != null) {
- this.pipelinesManager.release(this.pipelineSelector);
- this.pipelineSelector = null;
}
this.pipelinesManager = null;