sylvain 2003/10/31 03:22:17
Modified: src/java/org/apache/cocoon Constants.java
src/java/org/apache/cocoon/components/flow/javascript/fom
FOM_Cocoon.java
src/java/org/apache/cocoon/components/pipeline
AbstractProcessingPipeline.java
src/java/org/apache/cocoon/components/treeprocessor
AbstractProcessingNodeBuilder.java
Log:
Port changes done in 2.1
Revision Changes Path
1.12 +7 -1 cocoon-2.2/src/java/org/apache/cocoon/Constants.java
Index: Constants.java
===================================================================
RCS file: /home/cvs/cocoon-2.2/src/java/org/apache/cocoon/Constants.java,v
retrieving revision 1.11
retrieving revision 1.12
diff -u -r1.11 -r1.12
--- Constants.java 20 Oct 2003 08:15:27 -0000 1.11
+++ Constants.java 31 Oct 2003 11:22:16 -0000 1.12
@@ -306,6 +306,12 @@
* FIXME(GP): Isn't this Action specific only?
*/
public static final boolean DESCRIPTOR_RELOADABLE_DEFAULT = true;
+
+ /**
+ * The special parameter passed to each sitemap component (matchers,
generators, etc) that
+ * contains the location of the sitemap statement where this component
is used.
+ */
+ public static final String SITEMAP_PARAMETERS_LOCATION =
"org.apache.cocoon.sitemap/Location";
}
1.16 +2 -2
cocoon-2.2/src/java/org/apache/cocoon/components/flow/javascript/fom/FOM_Cocoon.java
Index: FOM_Cocoon.java
===================================================================
RCS file:
/home/cvs/cocoon-2.2/src/java/org/apache/cocoon/components/flow/javascript/fom/FOM_Cocoon.java,v
retrieving revision 1.15
retrieving revision 1.16
diff -u -r1.15 -r1.16
--- FOM_Cocoon.java 28 Oct 2003 17:21:14 -0000 1.15
+++ FOM_Cocoon.java 31 Oct 2003 11:22:16 -0000 1.16
@@ -186,7 +186,7 @@
Object obj,
Object continuation)
throws Exception {
- return forwardTo(uri, obj, (Continuation)unwrap(continuation));
+ return forwardTo(uri, unwrap(obj),
(Continuation)unwrap(continuation));
}
1.14 +11 -1
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.13
retrieving revision 1.14
diff -u -r1.13 -r1.14
--- AbstractProcessingPipeline.java 30 Oct 2003 14:05:13 -0000 1.13
+++ AbstractProcessingPipeline.java 31 Oct 2003 11:22:17 -0000 1.14
@@ -79,6 +79,7 @@
import org.apache.cocoon.generation.Generator;
import org.apache.cocoon.reading.Reader;
import org.apache.cocoon.serialization.Serializer;
+import org.apache.cocoon.sitemap.SitemapModelComponent;
import org.apache.cocoon.transformation.Transformer;
import org.apache.cocoon.xml.XMLConsumer;
import org.apache.cocoon.xml.XMLProducer;
@@ -402,6 +403,15 @@
environment.getObjectModel(),
(String)transformerSourceItt.next(),
(Parameters)transformerParamItt.next());
+ }
+
+ if (this.serializer instanceof SitemapModelComponent) {
+ ((SitemapModelComponent)this.serializer).setup(
+ this.processor.getEnvironmentHelper(),
+ environment.getObjectModel(),
+ this.serializerSource,
+ this.serializerParam
+ );
}
String mimeType = this.serializer.getMimeType();
1.3 +8 -3
cocoon-2.2/src/java/org/apache/cocoon/components/treeprocessor/AbstractProcessingNodeBuilder.java
Index: AbstractProcessingNodeBuilder.java
===================================================================
RCS file:
/home/cvs/cocoon-2.2/src/java/org/apache/cocoon/components/treeprocessor/AbstractProcessingNodeBuilder.java,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -r1.2 -r1.3
--- AbstractProcessingNodeBuilder.java 30 Oct 2003 13:02:31 -0000
1.2
+++ AbstractProcessingNodeBuilder.java 31 Oct 2003 11:22:17 -0000
1.3
@@ -59,9 +59,11 @@
import org.apache.avalon.framework.service.ServiceException;
import org.apache.avalon.framework.service.ServiceManager;
import org.apache.avalon.framework.service.Serviceable;
+import org.apache.cocoon.Constants;
import
org.apache.cocoon.components.treeprocessor.variables.VariableResolverFactory;
import org.apache.cocoon.sitemap.PatternException;
+import java.util.Collections;
import java.util.HashMap;
import java.util.Map;
@@ -114,10 +116,13 @@
Configuration[] children = config.getChildren("parameter");
if (children.length == 0) {
- return null;
+ // Parameters are only the component's location
+ return
Collections.singletonMap(Constants.SITEMAP_PARAMETERS_LOCATION,
config.getLocation());
}
- Map params = new HashMap();
+ Map params = new HashMap(children.length+1);
+ // Add the location information as a parameter
+ params.put(Constants.SITEMAP_PARAMETERS_LOCATION,
config.getLocation());
for (int i = 0; i < children.length; i++) {
Configuration child = children[i];
if (true) { // FIXME : check namespace