You are viewing a plain text version of this content. The canonical link for it is here.
Posted to cvs@cocoon.apache.org by bl...@apache.org on 2001/04/27 17:14:45 UTC
cvs commit: xml-cocoon/src/org/apache/cocoon/components/saxconnector NullSAXConnector.java SAXConnector.java XIncludeSAXConnector.java
bloritsch 01/04/27 08:14:44
Modified: src/org/apache/cocoon Tag: xml-cocoon2 Cocoon.java
Roles.java
src/org/apache/cocoon/components/language/markup/sitemap/java
Tag: xml-cocoon2 sitemap.xsl
src/org/apache/cocoon/components/pipeline Tag: xml-cocoon2
AbstractEventPipeline.java
CachingEventPipeline.java EventPipeline.java
src/org/apache/cocoon/components/saxconnector Tag:
xml-cocoon2 NullSAXConnector.java SAXConnector.java
XIncludeSAXConnector.java
Log:
Revert to the setSitemap() hack. At least we are using IOC... :)
Revision Changes Path
No revision
No revision
1.4.2.80 +1 -2 xml-cocoon/src/org/apache/cocoon/Cocoon.java
Index: Cocoon.java
===================================================================
RCS file: /home/cvs/xml-cocoon/src/org/apache/cocoon/Cocoon.java,v
retrieving revision 1.4.2.79
retrieving revision 1.4.2.80
diff -u -r1.4.2.79 -r1.4.2.80
--- Cocoon.java 2001/04/26 21:12:02 1.4.2.79
+++ Cocoon.java 2001/04/27 15:14:11 1.4.2.80
@@ -52,7 +52,7 @@
*
* @author <a href="mailto:fumagalli@exoffice.com">Pierpaolo Fumagalli</a> (Apache Software Foundation, Exoffice Technologies)
* @author <a href="mailto:stefano@apache.org">Stefano Mazzocchi</a>
- * @version CVS $Revision: 1.4.2.79 $ $Date: 2001/04/26 21:12:02 $
+ * @version CVS $Revision: 1.4.2.80 $ $Date: 2001/04/27 15:14:11 $
*/
public class Cocoon extends AbstractLoggable implements ThreadSafe, Component, Initializable, Disposable, Modifiable, Processor, Contextualizable {
/** The application context */
@@ -212,7 +212,6 @@
getLogger().debug("Sitemap location = " + this.sitemapFileName);
getLogger().debug("Checking sitemap reload = " + this.checkSitemapReload);
getLogger().debug("Reloading sitemap asynchron = " + this.reloadSitemapAsynchron);
- this.componentManager.addComponentInstance(Roles.SITEMAP_MANAGER, this.sitemapManager);
}
/** Queries the class to estimate its ergodic period termination. */
1.1.2.17 +1 -2 xml-cocoon/src/org/apache/cocoon/Attic/Roles.java
Index: Roles.java
===================================================================
RCS file: /home/cvs/xml-cocoon/src/org/apache/cocoon/Attic/Roles.java,v
retrieving revision 1.1.2.16
retrieving revision 1.1.2.17
diff -u -r1.1.2.16 -r1.1.2.17
--- Roles.java 2001/04/26 21:12:03 1.1.2.16
+++ Roles.java 2001/04/27 15:14:14 1.1.2.17
@@ -12,7 +12,7 @@
* Created this interface to specify the Avalon role names.
*
* @author <a href="mailto:bloritsch@apache.org">Berin Loritsch</a>
- * @version CVS $Revision: 1.1.2.16 $ $Date: 2001/04/26 21:12:03 $
+ * @version CVS $Revision: 1.1.2.17 $ $Date: 2001/04/27 15:14:14 $
*/
public interface Roles {
@@ -49,6 +49,5 @@
String XML_DESERIALIZER = "org.apache.cocoon.components.sax.XMLDeserializer";
String EVENT_CACHE = "org.apache.cocoon.caching.EventCache";
String STREAM_CACHE = "org.apache.cocoon.caching.StreamCache";
- String SITEMAP_MANAGER = "org.apache.cocoon.sitemap.Manager";
}
No revision
No revision
1.1.2.109 +6 -1 xml-cocoon/src/org/apache/cocoon/components/language/markup/sitemap/java/Attic/sitemap.xsl
Index: sitemap.xsl
===================================================================
RCS file: /home/cvs/xml-cocoon/src/org/apache/cocoon/components/language/markup/sitemap/java/Attic/sitemap.xsl,v
retrieving revision 1.1.2.108
retrieving revision 1.1.2.109
diff -u -r1.1.2.108 -r1.1.2.109
--- sitemap.xsl 2001/04/25 07:55:46 1.1.2.108
+++ sitemap.xsl 2001/04/27 15:14:20 1.1.2.109
@@ -98,7 +98,7 @@
*
* @author <a href="mailto:giacomo@apache.org">Giacomo Pati</a>
* @author <a href="mailto:bloritsch@apache.org">Berin Loritsch</a>
- * @version CVS $Id: sitemap.xsl,v 1.1.2.108 2001/04/25 07:55:46 giacomo Exp $
+ * @version CVS $Id: sitemap.xsl,v 1.1.2.109 2001/04/27 15:14:20 bloritsch Exp $
*/
public class <xsl:value-of select="@file-name"/> extends AbstractSitemap {
static final String LOCATION = "<xsl:value-of select="translate(@file-path, '/', '.')"/>.<xsl:value-of select="@file-name"/>";
@@ -307,6 +307,7 @@
private boolean resource_<xsl:value-of select="translate(@name, '- ', '__')"/> (StreamPipeline pipeline,
EventPipeline eventPipeline, List listOfMaps, Environment environment, String cocoon_view, boolean internalRequest)
throws Exception {
+ eventPipeline.setSitemap(this);
Map map = null;
Parameters param = null;
<xsl:apply-templates select="./*"/>
@@ -327,6 +328,7 @@
private boolean view_<xsl:value-of select="translate(@name, '- ', '__')"/> (StreamPipeline pipeline,
EventPipeline eventPipeline, List listOfMaps, Environment environment, boolean internalRequest)
throws Exception {
+ eventPipeline.setSitemap(this);
Map map = null;
Parameters param = null;
<xsl:apply-templates select="./*"/>
@@ -377,6 +379,7 @@
components and the <code>StreamPipeline</code> to produce the requested resource */
EventPipeline eventPipeline = (EventPipeline)this.manager.lookup(Roles.EVENT_PIPELINE);
StreamPipeline pipeline = (StreamPipeline)this.manager.lookup(Roles.STREAM_PIPELINE);
+ eventPipeline.setSitemap(this);
pipeline.setEventPipeline(eventPipeline);
boolean result = false;
try {
@@ -411,6 +414,7 @@
XPath kind expressions in values of src attribute used with
generate and transform elements */
List listOfMaps = (List) new ArrayList();
+ eventPipeline.setSitemap(this);
Map map;
Parameters param;
Map objectModel = environment.getObjectModel();
@@ -463,6 +467,7 @@
try {
eventPipeline = (EventPipeline)this.manager.lookup(Roles.EVENT_PIPELINE);
pipeline = (StreamPipeline)this.manager.lookup(Roles.STREAM_PIPELINE);
+ eventPipeline.setSitemap(this);
pipeline.setEventPipeline(eventPipeline);
List listOfMaps = (List)(new ArrayList());
Map map;
No revision
No revision
1.1.2.10 +10 -1 xml-cocoon/src/org/apache/cocoon/components/pipeline/Attic/AbstractEventPipeline.java
Index: AbstractEventPipeline.java
===================================================================
RCS file: /home/cvs/xml-cocoon/src/org/apache/cocoon/components/pipeline/Attic/AbstractEventPipeline.java,v
retrieving revision 1.1.2.9
retrieving revision 1.1.2.10
diff -u -r1.1.2.9 -r1.1.2.10
--- AbstractEventPipeline.java 2001/04/25 17:06:16 1.1.2.9
+++ AbstractEventPipeline.java 2001/04/27 15:14:25 1.1.2.10
@@ -35,7 +35,7 @@
/**
* @author <a href="mailto:Giacomo.Pati@pwr.ch">Giacomo Pati</a>
* @author <a href="mailto:cziegeler@Carsten Ziegeler">Carsten Ziegeler</a>
- * @version CVS $Revision: 1.1.2.9 $ $Date: 2001/04/25 17:06:16 $
+ * @version CVS $Revision: 1.1.2.10 $ $Date: 2001/04/27 15:14:25 $
*/
public abstract class AbstractEventPipeline
extends AbstractXMLProducer
@@ -64,6 +64,10 @@
transformerSelector = (ComponentSelector)this.manager.lookup(Roles.TRANSFORMERS);
}
+ public final void setSitemap(final Sitemap sitemap) {
+ this.sitemap = sitemap;
+ }
+
public void setGenerator (String role, String source, Parameters param, Exception e)
throws Exception {
this.setGenerator (role, source, param);
@@ -192,6 +196,7 @@
// connect SAXConnector
SAXConnector connect = (SAXConnector) this.manager.lookup(Roles.SAX_CONNECTOR);
connect.setup((EntityResolver)environment,environment.getObjectModel(),null,null);
+ connect.setSitemap(this.sitemap);
this.connectors.add(connect);
next = (XMLConsumer) connect;
prev.setConsumer(next);
@@ -207,6 +212,7 @@
// insert SAXConnector
SAXConnector connect = (SAXConnector) this.manager.lookup(Roles.SAX_CONNECTOR);
connect.setup((EntityResolver)environment,environment.getObjectModel(),null,null);
+ connect.setSitemap(this.sitemap);
this.connectors.add(connect);
next = (XMLConsumer) connect;
prev.setConsumer(next);
@@ -242,6 +248,9 @@
public void recycle() {
super.recycle();
+
+ this.sitemap = null;
+
try {
// Release generator.
if ( this.generatorSelector != null ) {
1.1.2.11 +3 -1 xml-cocoon/src/org/apache/cocoon/components/pipeline/Attic/CachingEventPipeline.java
Index: CachingEventPipeline.java
===================================================================
RCS file: /home/cvs/xml-cocoon/src/org/apache/cocoon/components/pipeline/Attic/CachingEventPipeline.java,v
retrieving revision 1.1.2.10
retrieving revision 1.1.2.11
diff -u -r1.1.2.10 -r1.1.2.11
--- CachingEventPipeline.java 2001/04/25 17:06:19 1.1.2.10
+++ CachingEventPipeline.java 2001/04/27 15:14:26 1.1.2.11
@@ -52,7 +52,7 @@
* does not cache! (If it would cache, the response would be cached twice!)
*
* @author <a href="mailto:cziegeler@apache.org">Carsten Ziegeler</a>
- * @version CVS $Revision: 1.1.2.10 $ $Date: 2001/04/25 17:06:19 $
+ * @version CVS $Revision: 1.1.2.11 $ $Date: 2001/04/27 15:14:26 $
*/
public final class CachingEventPipeline
extends AbstractEventPipeline
@@ -311,6 +311,7 @@
// connect SAXConnector
SAXConnector connect = (SAXConnector) this.manager.lookup(Roles.SAX_CONNECTOR);
connect.setup((EntityResolver)environment,environment.getObjectModel(),null,null);
+ connect.setSitemap(this.sitemap);
this.connectors.add(connect);
next = (XMLConsumer) connect;
prev.setConsumer(next);
@@ -331,6 +332,7 @@
// insert SAXConnector
SAXConnector connect = (SAXConnector) this.manager.lookup(Roles.SAX_CONNECTOR);
connect.setup((EntityResolver)environment,environment.getObjectModel(),null,null);
+ connect.setSitemap(this.sitemap);
this.connectors.add(connect);
next = (XMLConsumer) connect;
prev.setConsumer(next);
1.1.2.7 +2 -1 xml-cocoon/src/org/apache/cocoon/components/pipeline/Attic/EventPipeline.java
Index: EventPipeline.java
===================================================================
RCS file: /home/cvs/xml-cocoon/src/org/apache/cocoon/components/pipeline/Attic/EventPipeline.java,v
retrieving revision 1.1.2.6
retrieving revision 1.1.2.7
diff -u -r1.1.2.6 -r1.1.2.7
--- EventPipeline.java 2001/04/25 17:06:20 1.1.2.6
+++ EventPipeline.java 2001/04/27 15:14:28 1.1.2.7
@@ -18,12 +18,13 @@
/**
* @author <a href="mailto:Giacomo.Pati@pwr.ch">Giacomo Pati</a>
- * @version CVS $Revision: 1.1.2.6 $ $Date: 2001/04/25 17:06:20 $
+ * @version CVS $Revision: 1.1.2.7 $ $Date: 2001/04/27 15:14:28 $
*/
public interface EventPipeline extends Component, Composable, Recyclable, Processor {
public void setGenerator (String role, String source, Parameters param, Exception e) throws Exception;
public void setGenerator (String role, String source, Parameters param) throws Exception;
public Generator getGenerator ();
public void addTransformer (String role, String source, Parameters param) throws Exception;
+ public void setSitemap(Sitemap sitemap);
public boolean process(Environment environment) throws Exception;
}
No revision
No revision
1.1.2.8 +6 -1 xml-cocoon/src/org/apache/cocoon/components/saxconnector/Attic/NullSAXConnector.java
Index: NullSAXConnector.java
===================================================================
RCS file: /home/cvs/xml-cocoon/src/org/apache/cocoon/components/saxconnector/Attic/NullSAXConnector.java,v
retrieving revision 1.1.2.7
retrieving revision 1.1.2.8
diff -u -r1.1.2.7 -r1.1.2.8
--- NullSAXConnector.java 2001/04/25 18:20:37 1.1.2.7
+++ NullSAXConnector.java 2001/04/27 15:14:34 1.1.2.8
@@ -20,9 +20,14 @@
/**
* Null implementation of the SAXConnector. Simply sends events on to the next component in the pipeline.
* @author <a href="prussell@apache.org">Paul Russell</a>
- * @version CVS $Revision: 1.1.2.7 $ $Date: 2001/04/25 18:20:37 $
+ * @version CVS $Revision: 1.1.2.8 $ $Date: 2001/04/27 15:14:34 $
*/
public class NullSAXConnector extends AbstractXMLPipe implements Poolable, SAXConnector {
+ /** Set the sitemap
+ */
+ public final void setSitemap(Sitemap sitemap) {
+ // do nothing.
+ }
/** Setup this SAXConnector.
*/
1.1.2.8 +7 -1 xml-cocoon/src/org/apache/cocoon/components/saxconnector/Attic/SAXConnector.java
Index: SAXConnector.java
===================================================================
RCS file: /home/cvs/xml-cocoon/src/org/apache/cocoon/components/saxconnector/Attic/SAXConnector.java,v
retrieving revision 1.1.2.7
retrieving revision 1.1.2.8
diff -u -r1.1.2.7 -r1.1.2.8
--- SAXConnector.java 2001/04/25 18:20:37 1.1.2.7
+++ SAXConnector.java 2001/04/27 15:14:36 1.1.2.8
@@ -16,7 +16,13 @@
/**
* Provides a connection between SAX components.
* @author <a href="mailto:prussell@apache.org">Paul Russell</a>
- * @version CVS $Revision: 1.1.2.7 $ $Date: 2001/04/25 18:20:37 $
+ * @version CVS $Revision: 1.1.2.8 $ $Date: 2001/04/27 15:14:36 $
*/
public interface SAXConnector extends XMLPipe, Component, SitemapModelComponent {
+ /**
+ * Pass reference to containing Sitemap.
+ * This is a temporary hack until something better
+ * comes along.
+ */
+ void setSitemap(Sitemap sitemap);
}
1.1.2.10 +13 -10 xml-cocoon/src/org/apache/cocoon/components/saxconnector/Attic/XIncludeSAXConnector.java
Index: XIncludeSAXConnector.java
===================================================================
RCS file: /home/cvs/xml-cocoon/src/org/apache/cocoon/components/saxconnector/Attic/XIncludeSAXConnector.java,v
retrieving revision 1.1.2.9
retrieving revision 1.1.2.10
diff -u -r1.1.2.9 -r1.1.2.10
--- XIncludeSAXConnector.java 2001/04/26 21:12:07 1.1.2.9
+++ XIncludeSAXConnector.java 2001/04/27 15:14:37 1.1.2.10
@@ -25,7 +25,7 @@
import org.apache.cocoon.components.pipeline.StreamPipeline;
import org.apache.cocoon.components.url.URLFactory;
import org.apache.cocoon.environment.Environment;
-import org.apache.cocoon.sitemap.Manager;
+import org.apache.cocoon.sitemap.Sitemap;
import org.apache.cocoon.xml.AbstractXMLPipe;
import org.apache.cocoon.xml.IncludeXMLConsumer;
import org.apache.cocoon.xml.XMLProducer;
@@ -40,13 +40,16 @@
/**
* Copy of code from XIncludeTransformer as a starting point for XIncludeSAXConnector.
* @author <a href="dims@yahoo.com">Davanum Srinivas</a>
- * @version CVS $Revision: 1.1.2.9 $ $Date: 2001/04/26 21:12:07 $
+ * @version CVS $Revision: 1.1.2.10 $ $Date: 2001/04/27 15:14:37 $
*/
public class XIncludeSAXConnector extends AbstractXMLPipe implements Composable, Recyclable, SAXConnector, Disposable {
/** Stacks namespaces during processing */
private ArrayList currentNS = new ArrayList();
+ /** The sitemap we manipulate */
+ private Sitemap sitemap;
+
/** The current <code>ComponentManager</code>. */
protected ComponentManager manager = null;
@@ -65,8 +68,12 @@
throws ProcessingException, SAXException, IOException {
environment = (Environment) resolver;
}
+
+ public final void setSitemap(final Sitemap sitemap) {
+ this.sitemap = sitemap;
+ }
- public void compose(ComponentManager manager) {
+ public final void compose(final ComponentManager manager) {
this.manager = manager;
}
@@ -154,7 +161,6 @@
protected void processXIncludeElement(String src, String element, String ns, String prefix)
throws SAXException,MalformedURLException,IOException {
- Manager sitemap = null;
EventPipeline eventPipeline = null;
StreamPipeline pipeline = null;
if (element == null) element="";
@@ -162,9 +168,8 @@
if (prefix == null) prefix="";
try {
- sitemap = (Manager) manager.lookup(Roles.SITEMAP_MANAGER);
getLogger().debug("Processing XInclude element: src=" + src
- + ", sitemap=" + sitemap
+ + ", sitemap=" + this.sitemap
+ ", element=" + element
+ ", ns=" + ns
+ ", prefix=" + prefix);
@@ -181,8 +186,7 @@
((XMLProducer)eventPipeline).setConsumer(consumer);
this.environment.pushURI(src);
- sitemap.invoke(this.environment, "", src, true, true, pipeline, eventPipeline);
- //sitemap.process(this.environment, pipeline, eventPipeline);
+ this.sitemap.process(this.environment, pipeline, eventPipeline);
eventPipeline.process(this.environment);
this.environment.popURI();
@@ -191,8 +195,6 @@
} catch (Exception e) {
getLogger().error("Error selecting sitemap",e);
} finally {
- if (sitemap != null)
- this.manager.release((Component)sitemap);
if(eventPipeline != null)
this.manager.release((Component)eventPipeline);
if(pipeline != null)
@@ -208,5 +210,6 @@
*/
public void recycle () {
this.currentNS.clear();
+ this.sitemap = null;
}
}
----------------------------------------------------------------------
In case of troubles, e-mail: webmaster@xml.apache.org
To unsubscribe, e-mail: cocoon-cvs-unsubscribe@xml.apache.org
For additional commands, e-mail: cocoon-cvs-help@xml.apache.org