giacomo 00/07/12 15:15:31
Modified: conf Tag: xml-cocoon2 cocoon.xconf
src/org/apache/cocoon/components/language/markup/sitemap/java
Tag: xml-cocoon2 sitemap.xsl
src/org/apache/cocoon/matching Tag: xml-cocoon2
BrowserMatcherFactory.java
src/org/apache/cocoon/sitemap Tag: xml-cocoon2
XSLTMatcherFactoryLoader.java
xdocs/drafts Tag: xml-cocoon2 sitemap-working-draft.xmap
Added: src/org/apache/cocoon/generation Tag: xml-cocoon2
StatusGenerator.java
src/org/apache/cocoon/selection Tag: xml-cocoon2
BrowserSelectorFactory.java SelectorFactory.java
src/org/apache/cocoon/sitemap Tag: xml-cocoon2
XSLTSelectorFactoryLoader.java
Removed: src/org/apache/arch/config Tag: xml-cocoon2
SitemapConfigurationBuilder.java
Log:
Saving day work of generated SitemapProcessor
Revision Changes Path
No revision
No revision
1.1.2.11 +152 -141 xml-cocoon/conf/Attic/cocoon.xconf
Index: cocoon.xconf
===================================================================
RCS file: /home/cvs/xml-cocoon/conf/Attic/cocoon.xconf,v
retrieving revision 1.1.2.10
retrieving revision 1.1.2.11
diff -u -r1.1.2.10 -r1.1.2.11
--- cocoon.xconf 2000/07/11 23:46:32 1.1.2.10
+++ cocoon.xconf 2000/07/12 22:15:05 1.1.2.11
@@ -1,141 +1,152 @@
-<?xml version="1.0"?>
-<cocoon version="2.0">
-
-<!-- ===================== General Components =========================== -->
-
- <component role="parser"
class="org.apache.cocoon.components.parser.XercesParser"/>
- <component role="store"
class="org.apache.cocoon.components.store.MemoryStore"/>
-
- <component role="factory"
class="org.apache.avalon.NamedComponentManagerImpl">
- <component-type name="programming-language">
- <component-instance name="java"
class="org.apache.cocoon.components.language.programming.java.JavaLanguage">
- <parameter name="compiler"
value="org.apache.cocoon.components.language.programming.java.Javac"/>
- <parameter name="code-formatter"
value="org.apache.cocoon.components.language.programming.java.JstyleFormatter"/>
- <parameter name="class-loader"
value="org.apache.cocoon.components.classloader.ClassLoaderManagerImpl"/>
- </component-instance>
- </component-type>
-
- <component-type name="markup-language">
- <component-instance name="xsp"
class="org.apache.cocoon.components.language.markup.xsp.XSPMarkupLanguage">
- <parameter name="prefix" value="xsp"/>
- <parameter name="uri" value="http://xml.apache.org/cocoon/xsp"/>
-
- <target-language name="java">
- <parameter name="core-logicsheet"
value="resource://org/apache/cocoon/components/language/markup/xsp/java/xsp.xsl"/>
-
- <builtin-logicsheet>
- <parameter name="prefix" value="xsp-request"/>
- <parameter name="uri"
value="http://xml.apache.org/cocoon/xsp/request"/>
- <parameter name="href"
value="resource://org/apache/cocoon/components/language/markup/xsp/java/request.xsl"/>
- </builtin-logicsheet>
-
- <builtin-logicsheet>
- <parameter name="prefix" value="xsp-response"/>
- <parameter name="uri"
value="http://xml.apache.org/cocoon/xsp/response"/>
- <parameter name="href"
value="resource://org/apache/cocoon/components/language/markup/xsp/java/request.xsl"/>
- </builtin-logicsheet>
- </target-language>
- </component-instance>
-
- <component-instance name="sitemap"
class="org.apache.cocoon.components.language.markup.sitemap.SitemapMarkupLanguage">
- <parameter name="prefix" value="map"/>
- <parameter name="uri" value="http://xml.apache.org/cocoon/sitemap"/>
-
- <target-language name="java">
- <parameter name="core-logicsheet"
value="resource://org/apache/cocoon/components/language/markup/sitemap/java/sitemap.xsl"/>
- </target-language>
- </component-instance>
- </component-type>
- </component>
-
- <component role="program-generator"
class="org.apache.cocoon.components.language.generator.ProgramGeneratorImpl">
- <parameter name="repository" value="/tmp/repository"/>
- <parameter name="auto-reload" value="true"/>
- </component>
-
-<!-- ===================== Pipeline Components ===========================
-->
-
- <generator name="file"
class="org.apache.cocoon.generation.FileGenerator"/>
- <generator name="request"
class="org.apache.cocoon.generation.RequestGenerator"/>
- <generator name="directory"
class="org.apache.cocoon.generation.DirectoryGenerator"/>
- <generator name="serverpages"
class="org.apache.cocoon.generation.ServerPagesGenerator"/>
-
- <transformer name="xslt"
class="org.apache.cocoon.transformation.XalanTransformer"/>
- <transformer name="log"
class="org.apache.cocoon.transformation.LogTransformer"/>
- <transformer name="sql"
class="org.apache.cocoon.transformation.SQLTransformer"/>
- <transformer name="xinclude"
class="org.apache.cocoon.transformation.XIncludeTransformer"/>
-
- <serializer name="xml"
class="org.apache.cocoon.serialization.XMLSerializer"/>
- <serializer name="html"
class="org.apache.cocoon.serialization.HTMLSerializer"/>
- <serializer name="fo2pdf"
class="org.apache.cocoon.serialization.FO2PDFSerializer"/>
- <serializer name="svg2jpg"
class="org.apache.cocoon.serialization.SVGSerializer"/>
- <serializer name="image"
class="org.apache.cocoon.serialization.ImageSerializer"/>
-
-<!-- ============================== Sitemap ================================
-->
-
- <sitemap>
- <partition>
-
- <process uri="welcome" source="documents/welcome.xml">
- <generator name="file"/>
- <transformer name="xslt">
- <parameter name="stylesheet"
value="stylesheets/simple-welcome2html.xsl"/>
- </transformer>
- <serializer name="html">
- <parameter name="contentType" value="text/html"/>
- </serializer>
- </process>
-
- <process uri="hello" source="documents/hello-page.xml">
- <generator name="file"/>
- <transformer name="xslt">
- <parameter name="stylesheet"
value="stylesheets/simple-page2html.xsl"/>
- </transformer>
- <serializer name="html">
- <parameter name="contentType" value="text/html"/>
- </serializer>
- </process>
-
- <process uri="java.apache.org" source="documents/java_apache_org.xml">
- <generator name="file"/>
- <transformer name="xslt">
- <parameter name="stylesheet"
value="stylesheets/java_apache_org-html.xsl"/>
- </transformer>
- <serializer name="html">
- <parameter name="contentType" value="text/html"/>
- </serializer>
- </process>
-
- <process uri="jakarta.apache.org"
source="documents/jakarta_apache_org.xml">
- <generator name="file"/>
- <transformer name="xslt">
- <parameter name="stylesheet"
value="stylesheets/jakarta_apache_org-html.xsl"/>
- </transformer>
- <serializer name="html">
- <parameter name="contentType" value="text/html"/>
- </serializer>
- </process>
-
- <process uri="simple_dynamic_page"
source="documents/simple-dynamic-page.xsp">
- <generator name="serverpages"/>
- <transformer name="xslt">
- <parameter name="stylesheet"
value="stylesheets/dynamic-page2html.xsl"/>
- </transformer>
- <serializer name="html">
- <parameter name="contentType" value="text/html"/>
- </serializer>
- </process>
-
- <process uri="**/" source="**/">
- <generator name="directory"/>
- <transformer name="xslt">
- <parameter name="stylesheet"
value="stylesheets/simple-directory2html.xsl"/>
- </transformer>
- <serializer name="html">
- <parameter name="contentType" value="text/html"/>
- </serializer>
- </process>
-
- </partition>
- </sitemap>
-</cocoon>
+<?xml version="1.0"?>
+<cocoon version="2.0">
+
+<!-- ===================== General Components =========================== -->
+
+ <component role="parser"
class="org.apache.cocoon.components.parser.XercesParser"/>
+ <component role="store"
class="org.apache.cocoon.components.store.MemoryStore"/>
+
+ <component role="factory"
class="org.apache.avalon.NamedComponentManagerImpl">
+ <component-type name="programming-language">
+ <component-instance name="java"
class="org.apache.cocoon.components.language.programming.java.JavaLanguage">
+ <parameter name="compiler"
value="org.apache.cocoon.components.language.programming.java.Javac"/>
+ <parameter name="code-formatter"
value="org.apache.cocoon.components.language.programming.java.JstyleFormatter"/>
+ <parameter name="class-loader"
value="org.apache.cocoon.components.classloader.ClassLoaderManagerImpl"/>
+ </component-instance>
+ </component-type>
+
+ <component-type name="markup-language">
+ <component-instance name="xsp"
class="org.apache.cocoon.components.language.markup.xsp.XSPMarkupLanguage">
+ <parameter name="prefix" value="xsp"/>
+ <parameter name="uri" value="http://xml.apache.org/cocoon/xsp"/>
+
+ <target-language name="java">
+ <parameter name="core-logicsheet"
value="resource://org/apache/cocoon/components/language/markup/xsp/java/xsp.xsl"/>
+
+ <builtin-logicsheet>
+ <parameter name="prefix" value="xsp-request"/>
+ <parameter name="uri"
value="http://xml.apache.org/cocoon/xsp/request"/>
+ <parameter name="href"
value="resource://org/apache/cocoon/components/language/markup/xsp/java/request.xsl"/>
+ </builtin-logicsheet>
+
+ <builtin-logicsheet>
+ <parameter name="prefix" value="xsp-response"/>
+ <parameter name="uri"
value="http://xml.apache.org/cocoon/xsp/response"/>
+ <parameter name="href"
value="resource://org/apache/cocoon/components/language/markup/xsp/java/request.xsl"/>
+ </builtin-logicsheet>
+ </target-language>
+ </component-instance>
+
+ <component-instance name="sitemap"
class="org.apache.cocoon.components.language.markup.sitemap.SitemapMarkupLanguage">
+ <parameter name="prefix" value="map"/>
+ <parameter name="uri" value="http://xml.apache.org/cocoon/sitemap"/>
+
+ <target-language name="java">
+ <parameter name="core-logicsheet"
value="resource://org/apache/cocoon/components/language/markup/sitemap/java/sitemap.xsl"/>
+ </target-language>
+ </component-instance>
+ </component-type>
+ </component>
+
+ <component role="program-generator"
class="org.apache.cocoon.components.language.generator.ProgramGeneratorImpl">
+ <parameter name="repository" value="/tmp/repository"/>
+ <parameter name="auto-reload" value="true"/>
+ </component>
+
+<!-- ===================== Pipeline Components ===========================
-->
+
+ <generator name="file"
class="org.apache.cocoon.generation.FileGenerator"/>
+ <generator name="request"
class="org.apache.cocoon.generation.RequestGenerator"/>
+ <generator name="directory"
class="org.apache.cocoon.generation.DirectoryGenerator"/>
+ <generator name="serverpages"
class="org.apache.cocoon.generation.ServerPagesGenerator"/>
+ <generator name="status"
class="org.apache.cocoon.generation.StatusGenerator"/>
+
+ <transformer name="xslt"
class="org.apache.cocoon.transformation.XalanTransformer"/>
+ <transformer name="log"
class="org.apache.cocoon.transformation.LogTransformer"/>
+ <transformer name="sql"
class="org.apache.cocoon.transformation.SQLTransformer"/>
+ <transformer name="xinclude"
class="org.apache.cocoon.transformation.XIncludeTransformer"/>
+
+ <serializer name="xml"
class="org.apache.cocoon.serialization.XMLSerializer"/>
+ <serializer name="html"
class="org.apache.cocoon.serialization.HTMLSerializer"/>
+ <serializer name="fo2pdf"
class="org.apache.cocoon.serialization.FO2PDFSerializer"/>
+ <serializer name="svg2jpg"
class="org.apache.cocoon.serialization.SVGSerializer"/>
+ <serializer name="image"
class="org.apache.cocoon.serialization.ImageSerializer"/>
+
+<!-- ============================== Sitemap ================================
-->
+
+ <sitemap>
+ <partition>
+
+ <process uri="welcome" source="documents/welcome.xml">
+ <generator name="file"/>
+ <transformer name="xslt">
+ <parameter name="stylesheet"
value="stylesheets/simple-welcome2html.xsl"/>
+ </transformer>
+ <serializer name="html">
+ <parameter name="contentType" value="text/html"/>
+ </serializer>
+ </process>
+
+ <process uri="hello" source="documents/hello-page.xml">
+ <generator name="file"/>
+ <transformer name="xslt">
+ <parameter name="stylesheet"
value="stylesheets/simple-page2html.xsl"/>
+ </transformer>
+ <serializer name="html">
+ <parameter name="contentType" value="text/html"/>
+ </serializer>
+ </process>
+
+ <process uri="java.apache.org" source="documents/java_apache_org.xml">
+ <generator name="file"/>
+ <transformer name="xslt">
+ <parameter name="stylesheet"
value="stylesheets/java_apache_org-html.xsl"/>
+ </transformer>
+ <serializer name="html">
+ <parameter name="contentType" value="text/html"/>
+ </serializer>
+ </process>
+
+ <process uri="jakarta.apache.org"
source="documents/jakarta_apache_org.xml">
+ <generator name="file"/>
+ <transformer name="xslt">
+ <parameter name="stylesheet"
value="stylesheets/jakarta_apache_org-html.xsl"/>
+ </transformer>
+ <serializer name="html">
+ <parameter name="contentType" value="text/html"/>
+ </serializer>
+ </process>
+
+ <process uri="simple_dynamic_page"
source="documents/simple-dynamic-page.xsp">
+ <generator name="serverpages"/>
+ <transformer name="xslt">
+ <parameter name="stylesheet"
value="stylesheets/dynamic-page2html.xsl"/>
+ </transformer>
+ <serializer name="html">
+ <parameter name="contentType" value="text/html"/>
+ </serializer>
+ </process>
+
+ <process uri="status" source="status">
+ <generator name="status"/>
+ <filter name="xslt">
+ <parameter name="stylesheet"
value="stylesheets/simple-status.xsl"/>
+ </filter>
+ <serializer name="html">
+ <parameter name="contentType" value="text/html"/>
+ </serializer>
+ </process>
+
+ <process uri="**/" source="**/">
+ <generator name="directory"/>
+ <transformer name="xslt">
+ <parameter name="stylesheet"
value="stylesheets/simple-directory2html.xsl"/>
+ </transformer>
+ <serializer name="html">
+ <parameter name="contentType" value="text/html"/>
+ </serializer>
+ </process>
+
+ </partition>
+ </sitemap>
+</cocoon>
No revision
No revision
1.1.2.7 +499 -501
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.6
retrieving revision 1.1.2.7
diff -u -r1.1.2.6 -r1.1.2.7
--- sitemap.xsl 2000/07/11 23:46:36 1.1.2.6
+++ sitemap.xsl 2000/07/12 22:15:07 1.1.2.7
@@ -1,503 +1,501 @@
-<?xml version="1.0"?>
-<!-- Sitemap Core logicsheet for the Java language -->
-
-<xsl:stylesheet version="1.0"
- xmlns:map="http://apache.org/cocoon/sitemap/1.0"
- xmlns:java="http://xml.apache.org/xslt/java"
- xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
->
-
- <xsl:output method="text"/>
-
- <xsl:variable name="prefix">map</xsl:variable>
- <xsl:variable name="matcher-factory-loader"
select="java:org.apache.cocoon.sitemap.XSLTMatcherFactoryLoader.new()"/>
-<!--
- <xsl:variable name="selector-factory-loader"
select="java:org.apache.cocoon.sitemap.XSLTSelectorFactoryLoader.new()"/>
--->
-
- <xsl:template match="/">
- <code xml:space="preserve">
- <xsl:apply-templates/>
- </code>
- </xsl:template>
-
- <xsl:template match="map:sitemap">
- package <xsl:value-of select="translate(@file-path, '/', '.')"/>;
-
- import java.util.Map;
- import java.util.Stack;
- import java.util.Vector;
-
- import org.apache.avalon.Configuration;
- import org.apache.avalon.ConfigurationException;
- import org.apache.avalon.SitemapConfigurationBuilder;
- import org.apache.avalon.utils.Parameters;
- import org.apache.cocoon.Request;
- import org.apache.cocoon.Response;
- import org.apache.cocoon.selection.Selector;
- import org.apache.cocoon.transformation.Transformer;
- import org.apache.cocoon.generation.Generator;
- import org.apache.cocoon.matching.Matcher;
- import org.apache.cocoon.serialization.Serializer;
- import org.apache.cocoon.sitemap.AbstractSitemapProcessor;
- import org.apache.cocoon.sitemap.ResourcePipeline;
-
- import org.xml.sax.helpers.AttributesImpl;
-
-/**
- *
- * @author <a href="mailto:[EMAIL PROTECTED]">Giacomo Pati</a>
- * @version CVS $Revision: 1.1.2.6 $ $Date: 2000/07/11 23:46:36 $
- */
-public class <xsl:value-of select="@file-name"/> extends
AbstractSitemapProcessor {
-
- SitemapConfigurationBuilder confBuilder = new
SitemapConfigurationBuilder ();
- Parameters emptyParam = new Parameters();
-
- <!-- generate variables for all components -->
- /** The generators */
- <xsl:for-each
select="/map:sitemap/map:components/map:generators/map:generator">
- private Generator generator_<xsl:value-of select="translate(./@type,
'- ', '__')"/> = null;
- </xsl:for-each>
-
- /** The transformers */
- <xsl:for-each
select="/map:sitemap/map:components/map:transformers/map:transformer">
- private Transformer transformer_<xsl:value-of
select="translate(./@type, '- ', '__')"/> = null;
- </xsl:for-each>
-
- /** The serializers */
- <xsl:for-each
select="/map:sitemap/map:components/map:serializers/map:serializer">
- private Serializer serializer_<xsl:value-of select="translate(./@type,
'- ', '__')"/> = null;
- </xsl:for-each>
-
- /** The matchers */
- <xsl:for-each
select="/map:sitemap/map:components/map:matchers/map:[EMAIL PROTECTED]">
- private Matcher matcher_<xsl:value-of select="translate(./@type, '- ',
'__')"/> = null;
- </xsl:for-each>
-
- /** The selectors */
- <xsl:for-each
select="/map:sitemap/map:components/map:selctors/map:[EMAIL PROTECTED]">
- private Selector selector_<xsl:value-of select="translate(./@type, '-
', '__')"/> = null;
- </xsl:for-each>
-
- /** The sub sitemaps */
- <xsl:for-each select="/map:sitemap/map:pipelines//map:mount">
- SitemapProcessor sitemap_<xsl:value-of select="translate(@src,
':@./-{}#', '_____')"/> = null;
- </xsl:for-each>
-
- /** The generated matchers */
- <xsl:for-each
select="/map:sitemap/map:components/map:matchers/map:[EMAIL PROTECTED]">
- <xsl:variable name="factory" select="@factory"/>
- <xsl:variable name="type" select="@type"/>
- <xsl:variable name="default"><xsl:if test="$type =
../@default">true</xsl:if></xsl:variable>
- <xsl:for-each
select="/map:sitemap/map:pipelines/map:pipeline/descendant-or-self::map:[EMAIL
PROTECTED] or (not(@type) and $default!='')]">
- <xsl:variable name="matcher-name1" select="translate(@pattern,'/-
*?@:{}()[].#^\\$|!','_')"/>
- <xsl:variable name="matcher-name"
select='translate($matcher-name1,"'","")'/>
- private Map _matcher_<xsl:value-of select="$matcher-name"/> (Request
request) {
- <xsl:value-of select="java:getSource($matcher-factory-loader,
string($factory), string(@pattern))"/>;
- }
+<?xml version="1.0"?>
+<!-- Sitemap Core logicsheet for the Java language -->
+
+<xsl:stylesheet version="1.0"
+ xmlns:map="http://apache.org/cocoon/sitemap/1.0"
+ xmlns:java="http://xml.apache.org/xslt/java"
+ xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
+>
+
+ <xsl:output method="text"/>
+
+ <xsl:variable name="prefix">map</xsl:variable>
+ <xsl:variable name="matcher-factory-loader"
select="java:org.apache.cocoon.sitemap.XSLTMatcherFactoryLoader.new()"/>
+ <xsl:variable name="selector-factory-loader"
select="java:org.apache.cocoon.sitemap.XSLTSelectorFactoryLoader.new()"/>
+
+ <xsl:template match="/">
+ <code xml:space="preserve">
+ <xsl:apply-templates/>
+ </code>
+ </xsl:template>
+
+ <xsl:template match="map:sitemap">
+ package <xsl:value-of select="translate(@file-path, '/', '.')"/>;
+
+ import java.util.Map;
+ import java.util.Stack;
+ import java.util.Vector;
+
+ import org.apache.avalon.Configuration;
+ import org.apache.avalon.ConfigurationException;
+ import org.apache.avalon.SAXConfigurationBuilder;
+ import org.apache.avalon.utils.Parameters;
+
+ import org.apache.cocoon.Request;
+ import org.apache.cocoon.Response;
+ import org.apache.cocoon.selection.Selector;
+ import org.apache.cocoon.transformation.Transformer;
+ import org.apache.cocoon.generation.Generator;
+ import org.apache.cocoon.matching.Matcher;
+ import org.apache.cocoon.serialization.Serializer;
+ import org.apache.cocoon.sitemap.AbstractSitemapProcessor;
+ import org.apache.cocoon.sitemap.ResourcePipeline;
+
+ import org.xml.sax.helpers.AttributesImpl;
+
+/**
+ *
+ * @author <a href="mailto:[EMAIL PROTECTED]">Giacomo Pati</a>
+ * @version CVS $Revision: 1.1.2.7 $ $Date: 2000/07/12 22:15:07 $
+ */
+public class <xsl:value-of select="@file-name"/> extends
AbstractSitemapProcessor {
+
+ SAXConfigurationBuilder confBuilder = new SAXConfigurationBuilder ();
+ Parameters emptyParam = new Parameters();
+
+ <!-- generate variables for all components -->
+ /** The generators */
+ <xsl:for-each
select="/map:sitemap/map:components/map:generators/map:generator">
+ private Generator generator_<xsl:value-of select="translate(./@name,
'- ', '__')"/> = null;
+ </xsl:for-each>
+
+ /** The transformers */
+ <xsl:for-each
select="/map:sitemap/map:components/map:transformers/map:transformer">
+ private Transformer transformer_<xsl:value-of
select="translate(./@name, '- ', '__')"/> = null;
+ </xsl:for-each>
+
+ /** The serializers */
+ <xsl:for-each
select="/map:sitemap/map:components/map:serializers/map:serializer">
+ private Serializer serializer_<xsl:value-of select="translate(./@name,
'- ', '__')"/> = null;
+ </xsl:for-each>
+
+ /** The matchers */
+ <xsl:for-each
select="/map:sitemap/map:components/map:matchers/map:[EMAIL PROTECTED]">
+ private Matcher matcher_<xsl:value-of select="translate(./@name, '- ',
'__')"/> = null;
+ </xsl:for-each>
+
+ /** The selectors */
+ <xsl:for-each
select="/map:sitemap/map:components/map:selctors/map:[EMAIL PROTECTED]">
+ private Selector selector_<xsl:value-of select="translate(./@name, '-
', '__')"/> = null;
+ </xsl:for-each>
+
+ /** The sub sitemaps */
+ <xsl:for-each select="/map:sitemap/map:pipelines//map:mount">
+ SitemapProcessor sitemap_<xsl:value-of select="position()"/> = null;
+ </xsl:for-each>
+
+ /** The generated matchers */
+ <xsl:for-each
select="/map:sitemap/map:components/map:matchers/map:[EMAIL PROTECTED]">
+ <xsl:variable name="factory" select="@factory"/>
+ <xsl:variable name="type" select="@name"/>
+ <xsl:variable name="default"><xsl:if test="$type =
../@default">true</xsl:if></xsl:variable>
+ <xsl:for-each
select="/map:sitemap/map:pipelines/map:pipeline/descendant-or-self::map:[EMAIL
PROTECTED] or (not(@type) and $default!='')]">
+ <xsl:variable name="matcher-name1" select="translate(@pattern,'/-
*?@:{}()[].#^\\$|!','_')"/>
+ <xsl:variable name="matcher-name"
select='translate($matcher-name1,"'","")'/>
+ private Map _matcher_<xsl:value-of select="$matcher-name"/> (Request
request) {
+ <xsl:value-of select="java:getSource($matcher-factory-loader,
string($factory), string(@pattern))"/>
+ }
+ </xsl:for-each>
+ </xsl:for-each>
+
+ /** The generated selectors */
+ <xsl:for-each
select="/map:sitemap/map:components/map:selectors/map:[EMAIL PROTECTED]">
+ <xsl:variable name="factory" select="@factory"/>
+ <xsl:variable name="type" select="@name"/>
+ <xsl:variable name="default"><xsl:if test="$type =
../@default">true</xsl:if></xsl:variable>
+ <xsl:for-each
select="/map:sitemap/map:pipelines/map:pipeline/descendant-or-self::map:when[../map:selector/@type=$type
or (not(../map:selector/@type) and $default!='')]">
+ <xsl:variable name="selector-name1" select="translate(@test,'/-
*?@:{}()[].#^\\$|!','_')"/>
+ <xsl:variable name="selector-name"
select='translate($selector-name1,"'","")'/>
+ private boolean _selector_<xsl:value-of select="$selector-name"/>
(Request request) {
+ <xsl:value-of select="java:getSource($selector-factory-loader,
string($factory), string(@test))"/>
+ }
+ </xsl:for-each>
+ </xsl:for-each>
+
+ /**
+ * Pass a <code>Configuration</code> instance to this
+ * <code>Configurable</code> class.
+ */
+ public void setConfiguration(Configuration xconf) {
+ throws ConfigurationException {
+ AttributeImpl attr = new AttributeImpl();
+
+ <!-- configure all components -->
+ /* Configure generators */
+ <xsl:call-template name="config-components">
+ <xsl:with-param name="name">generator</xsl:with-param>
+ <xsl:with-param name="interface">Generator</xsl:with-param>
+ <xsl:with-param name="components"
+ select="/map:sitemap/map:components/map:generators/map:generator"/>
+ </xsl:call-template>
+
+ /* Configure transformers */
+ <xsl:call-template name="config-components">
+ <xsl:with-param name="name">transformer</xsl:with-param>
+ <xsl:with-param name="interface">Transformer</xsl:with-param>
+ <xsl:with-param name="components"
+
select="/map:sitemap/map:components/map:transformers/map:transformer"/>
+ </xsl:call-template>
+
+ /* Configure serializers */
+ <xsl:call-template name="config-components">
+ <xsl:with-param name="name">serializer</xsl:with-param>
+ <xsl:with-param name="interface">Serializer</xsl:with-param>
+ <xsl:with-param name="components"
+
select="/map:sitemap/map:components/map:serializers/map:serializer"/>
+ </xsl:call-template>
+
+ /* Configure matchers */
+ <xsl:call-template name="config-components">
+ <xsl:with-param name="name">matcher</xsl:with-param>
+ <xsl:with-param name="interface">Matcher</xsl:with-param>
+ <xsl:with-param name="components"
+ select="/map:sitemap/map:components/map:matchers/map:matcher"/>
+ </xsl:call-template>
+
+ /* Configure selectors */
+ <xsl:call-template name="config-components">
+ <xsl:with-param name="name">selector</xsl:with-param>
+ <xsl:with-param name="interface">Selector</xsl:with-param>
+ <xsl:with-param name="components"
+ select="/map:sitemap/map:components/map:selectors/map:selector"/>
+ </xsl:call-template>
+
+ /* Configure mounted sitemaps */
+ SitemapManager sm = SitemapManager.getInstance();
+ sm.beginRegistration (this);
+ <xsl:for-each select="/map:sitemap/map:pipelines//map:mount">
+ sitemap_<xsl:value-of select="position()"/> = sm.registerSitemap
(this, "<xsl:value-of select="@src"/>");
+ sitemap_<xsl:value-of select="position()"/>.setConfiguration (null);
+ </xsl:for-each>
+ sm.endRegistration (this);
+ }
+
+ <xsl:for-each select="/map:sitemap/map:resources/map:resource">
+ private boolean resource_<xsl:value-of select="translate(@name, '- ',
'__')"/> (ResourcePipeline pipeline,
+ Stack mapStack, Request req, Response res, OutputStream out)
+ throws SAXException, IOException, ProcessingException {
+ Map map = null;
+ Parameters param = null;
+ <xsl:apply-templates select="./*"/>
+ }
+ </xsl:for-each>
+
+ /**
+ * Process the given <code>Request</code> producing the output to the
+ * specified <code>Response</code> and <code>OutputStream</code>.
+ */
+ public boolean process(Request req, Response res, OutputStream out)
+ throws SAXException, IOException, ProcessingException {
+ ResourcePipeline pipeline = new ResourcePipeline ();
+ Stack mapStack = new Stack();
+ Map map = null;
+ Parameters param = null;
+ <xsl:for-each select="/map:sitemap/map:pipelines/map:pipeline">
+ try {
+ <xsl:apply-templates select="./*"/>
+ } catch (Exception e) {
+ <xsl:choose>
+ <xsl:when test="not (./map:handle-errors)">
+ throw e;
+ </xsl:when>
+ <xsl:otherwise>
+ pipeline.setGenerator (generator_error_hanler, e.getMessage(),
emptyParam);
+ <xsl:apply-templates select="./map:handle-error/*"/>
+ return pipeline.process (request, response, out);
+ </xsl:otherwise>
+ </xsl:choose>
+ }
+ </xsl:for-each>
+ }
+}
+
+ </xsl:template> <!-- match="map:sitemap" -->
+
+ <xsl:template match="map:match">
+ <xsl:variable name="matcher-type">
+ <xsl:call-template name="get-parameter">
+ <xsl:with-param name="parname">type</xsl:with-param>
+ <xsl:with-param name="default"><xsl:value-of
select="/map:sitemap/map:components/map:matchers/@default"/></xsl:with-param>
+ </xsl:call-template>
+ </xsl:variable>
+ <xsl:variable name="pattern-value">
+ <xsl:call-template name="get-parameter">
+ <xsl:with-param name="parname">pattern</xsl:with-param>
+ <xsl:with-param name="required">true</xsl:with-param>
+ </xsl:call-template>
+ </xsl:variable>
+ if ((map = matcher_<xsl:value-of select="translate($matcher-type, '- ',
'__')"/>.match ("<xsl:value-of select="$pattern-value"/>", request)) != null) {
+ mapStack.push (map);
+ <xsl:apply-templates/>
+ }
+ </xsl:template> <!-- match="map:match" -->
+
+ <xsl:template match="map:select">
+ <xsl:variable name="selector-type">
+ <xsl:call-template name="get-parameter">
+ <xsl:with-param name="parname">type</xsl:with-param>
+ <xsl:with-param name="default"><xsl:value-of
select="/map:sitemap/map:components/map:selectors/@default"/></xsl:with-param>
+ </xsl:call-template>
+ </xsl:variable>
+ <xsl:for-each select="./map:when">
+ <xsl:variable name="test-value">
+ <xsl:call-template name="get-parameter">
+ <xsl:with-param name="parname">test</xsl:with-param>
+ <xsl:with-param name="required">true</xsl:with-param>
+ </xsl:call-template>
+ </xsl:variable>
+ if (selector_<xsl:value-of select="translate($selector-type, '- ',
'__')"/>.select ("<xsl:value-of select="$test-value"/>", request)) {
+ <xsl:apply-templates/>
+ }
+ </xsl:for-each>
+
+ <xsl:for-each select="./map:otherwise">
+ else {
+ <xsl:apply-templates/>
+ }
+ </xsl:for-each>
+ </xsl:template> <!-- match="/map:sitemap/map:select" -->
+
+ <xsl:template match="map:generate">
+ <xsl:call-template name="setup-component">
+ <xsl:with-param name="default-component"
select="/map:sitemap/map:components/map:generators/@default"/>
+ <xsl:with-param name="method">setGenerator</xsl:with-param>
+ <xsl:with-param name="prefix">generator</xsl:with-param>
+ </xsl:call-template>
+ </xsl:template> <!-- match="map:generate" -->
+
+ <xsl:template match="map:transform">
+ <xsl:call-template name="setup-component">
+ <xsl:with-param name="default-component"
select="/map:sitemap/map:components/map:transformers/@default"/>
+ <xsl:with-param name="method">addTransformer</xsl:with-param>
+ <xsl:with-param name="prefix">transformer</xsl:with-param>
+ </xsl:call-template>
+ </xsl:template> <!-- match="map:transormer" -->
+
+ <xsl:template match="map:serialize">
+ <xsl:call-template name="setup-component">
+ <xsl:with-param name="default-component"
select="/map:sitemap/map:components/map:serializers/@default"/>
+ <xsl:with-param name="method">setSerializer</xsl:with-param>
+ <xsl:with-param name="prefix">serializer</xsl:with-param>
+ </xsl:call-template>
+ return pipeline.process (request, response, out);
+ </xsl:template> <!-- match="map:serialize" -->
+
+ <xsl:template match="map:mount">
+ <xsl:variable name="src" select="@src"/>
+ <xsl:variable name="pos">
+ <xsl:for-each select="/map:sitemap/map:pipelines//map:mount">
+ <xsl:if test="@src=$src">
+ <xsl:value-of select="position()"/>
+ </xsl:if>
+ </xsl:for-each>
+ </xsl:variable>
+ return sitemap_<xsl:value-of select="$pos"/>.process(request, response,
out);
+ </xsl:template> <!-- match="map:mount" -->
+
+ <xsl:template match="map:read">
+ return read (request, response, out,
+ "<xsl:value-of select="@src"/>"<xsl:if test="(@mime-type)">,
"<xsl:value-of select="@mime-type"/>"</xsl:if>);
+ </xsl:template> <!-- match="map:read" -->
+
+ <xsl:template match="map:redirect-to">
+ <xsl:choose>
+ <xsl:when test="@resource">
+ return resource_<xsl:value-of select="translate(@resource, '- ',
'__')"/>(pipeline, mapStack, request, response, out);
+ </xsl:when>
+ <xsl:when test="@uri">
+ // request.setUri ("<xsl:value-of select="@uri"/>");
+ // this.process(request, response, out);
+ </xsl:when>
+ <xsl:otherwise>
+ <xsl:call-template name="error">
+ <xsl:with-param name="message">Missing attribute uri= or resource=
to element redirect-to</xsl:with-param>
+ </xsl:call-template>
+ </xsl:otherwise>
+ </xsl:choose>
+ </xsl:template> <!-- match="map:redirect-to" -->
+
+ <xsl:template match="map:param">
+ param.setParameter ("<xsl:value-of select="@name"/>", "<xsl:value-of
select="@map:value"/>");
+ </xsl:template> <!-- match="map:param" -->
+
+ <!-- Sitemap Utility templates -->
+
+ <xsl:template name="config-components">
+ <xsl:param name="name"/>
+ <xsl:param name="interface"/>
+ <xsl:param name="components"/>
+
+ <xsl:variable name="qname">
+ <xsl:value-of select="concat($prefix, ':value')"/>
+ </xsl:variable>
+
+ <xsl:for-each select="$components">
+ <xsl:variable name="ns" select="namespace-uri(.)"/>
+ confBuilder.startDocument ();
+ <xsl:call-template name="nested-config-components">
+ <xsl:with-param name="name" select="$name"/>
+ <xsl:with-param name="config-name"><xsl:value-of
select="concat(local-name(.),'/',@type)"/></xsl:with-param>
+ <xsl:with-param name="interface" select="$interface"/>
+ <xsl:with-param name="components" select="*"/>
+ <xsl:with-param name="type" select="@type"/>
+ <xsl:with-param name="ns" select="$ns"/>
+ </xsl:call-template>
+ confBuilder.endDocument ();
+ <xsl:value-of select="$name"/>_<xsl:value-of select="translate(@type,
'- ', '__')"/> =
+ (<xsl:value-of select="$interface"/>)load_component ("<xsl:value-of
select="@src"/>", confBuilder.getConfiguration());
+ </xsl:for-each>
+ </xsl:template>
+
+ <xsl:template name="nested-config-components">
+ <xsl:param name="name"/>
+ <xsl:param name="config-name"/>
+ <xsl:param name="interface"/>
+ <xsl:param name="components"/>
+ <xsl:param name="type"/>
+ <xsl:param name="ns"/>
+ <xsl:param name="subname"/>
+
+ <xsl:variable name="qname">
+ <xsl:value-of select="concat($prefix, ':value')"/>
+ </xsl:variable>
+
+ <!-- process content -->
+ <xsl:for-each select="$components">
+ <xsl:if test="$ns!=namespace-uri()">
+ confBuilder.startPrefixMapping("","<xsl:value-of
select="namespace-uri()"/>");
+ </xsl:if>
+ attr.clear();
+ <xsl:for-each select="attribute::*[name(.)!=$qname]">
+ attr.addAttribute ("", "<xsl:value-of select="local-name(.)"/>",
"<xsl:value-of select="name(.)"/>", "CDATA", "<xsl:value-of select="."/>");
</xsl:for-each>
- </xsl:for-each>
-
- /** The generated selectors */
- <xsl:for-each
select="/map:sitemap/map:components/map:selectors/map:[EMAIL PROTECTED]">
- <xsl:variable name="factory" select="@factory"/>
- <xsl:variable name="type" select="@type"/>
- <xsl:variable name="default"><xsl:if test="$type =
../@default">true</xsl:if></xsl:variable>
- <xsl:for-each
select="/map:sitemap/map:pipelines/map:pipeline/descendant-or-self::map:when[../map:selector/@type=$type
or (not(../map:selector/@type) and $default!='')]">
- <xsl:variable name="selector-name1" select="translate(@pattern,'/-
*?@:{}()[].#^\\$|!','_')"/>
- <xsl:variable name="selector-name"
select='translate($selector-name1,"'","")'/>
- private boolean _selector_<xsl:value-of select="$selector-name"/>
(Request request) {
-<!--
- <xsl:value-of select="java:getSource($selector-factory-loader,
string($factory), string(@test))"/>;
--->
- }
+ confBuilder.startElement("<xsl:value-of select="namespace-uri()"/>",
"<xsl:value-of select="local-name(.)"/>", "<xsl:value-of select="name(.)"/>",
attr);
+ <xsl:for-each select="attribute::*[name(.)=$qname]">
+ confBuilder.characters("<xsl:value-of select="."/>".toCharArray(),
0, <xsl:value-of select="string-length(.)"/>);
</xsl:for-each>
- </xsl:for-each>
-
- /**
- * Pass a <code>Configuration</code> instance to this
- * <code>Configurable</code> class.
- */
- public void setConfiguration(Configuration xconf) {
- throws ConfigurationException {
-
- <!-- configure all components -->
- /* Configure generators */
- <xsl:call-template name="config-components">
- <xsl:with-param name="name">generator</xsl:with-param>
- <xsl:with-param name="interface">Generator</xsl:with-param>
- <xsl:with-param name="components"
- select="/map:sitemap/map:components/map:generators/map:generator"/>
- </xsl:call-template>
-
- /* Configure filters */
- <xsl:call-template name="config-components">
- <xsl:with-param name="name">transformer</xsl:with-param>
- <xsl:with-param name="interface">Transformer</xsl:with-param>
- <xsl:with-param name="components"
-
select="/map:sitemap/map:components/map:transformers/map:transformer"/>
- </xsl:call-template>
-
- /* Configure serializers */
- <xsl:call-template name="config-components">
- <xsl:with-param name="name">serializer</xsl:with-param>
- <xsl:with-param name="interface">Serializer</xsl:with-param>
- <xsl:with-param name="components"
-
select="/map:sitemap/map:components/map:serializers/map:serializer"/>
- </xsl:call-template>
-
- /* Configure matchers */
- <xsl:call-template name="config-components">
- <xsl:with-param name="name">matcher</xsl:with-param>
- <xsl:with-param name="interface">Matcher</xsl:with-param>
- <xsl:with-param name="components"
- select="/map:sitemap/map:components/map:matchers/map:matcher"/>
- </xsl:call-template>
-
- /* Configure selectors */
- <xsl:call-template name="config-components">
- <xsl:with-param name="name">selector</xsl:with-param>
- <xsl:with-param name="interface">Selector</xsl:with-param>
- <xsl:with-param name="components"
- select="/map:sitemap/map:components/map:selectors/map:selector"/>
- </xsl:call-template>
-
- /* Configure mounted sitemaps */
- Cocoon cocoon = manager.getComponent ("cocoon");
- cocoon.clearRegistration (this);
- <xsl:for-each select="/map:sitemap/map:pipelines//map:mount">
- sitemap_<xsl:value-of select="translate(@src, ':@./-{}#', '_____')"/>
= cocoon.getSitemapInstance (this, "<xsl:value-of select="@src"/>");
- sitemap_<xsl:value-of select="translate(@src, ':@./-{}#',
'_____')"/>.setConfiguration (null);
- </xsl:for-each>
- }
-
- <xsl:for-each select="/map:sitemap/map:resources/map:resource">
- private boolean resource_<xsl:value-of select="translate(@name, '- ',
'__')"/> (ResourcePipeline pipeline,
- Stack mapStack, Request req, Response res, OutputStream out)
- throws SAXException, IOException, ProcessingException {
- Map map = null;
- Parameters param = null;
- <xsl:apply-templates select="./*"/>
- }
- </xsl:for-each>
-
- /**
- * Process the given <code>Request</code> producing the output to the
- * specified <code>Response</code> and <code>OutputStream</code>.
- */
- public boolean process(Request req, Response res, OutputStream out)
- throws SAXException, IOException, ProcessingException {
- ResourcePipeline pipeline = new ResourcePipeline ();
- Stack mapStack = new Stack();
- Map map = null;
- Parameters param = null;
- <xsl:for-each select="/map:sitemap/map:pipelines/map:pipeline">
- try {
- <xsl:apply-templates select="./*"/>
- } catch (Exception e) {
- <xsl:choose>
- <xsl:when test="not (./map:handle-errors)">
- throw e;
- </xsl:when>
- <xsl:otherwise>
- pipeline.setGenerator (generator_error_hanler, e.getMessage(),
emptyParam);
- <xsl:apply-templates select="./map:handle-error/*"/>
- return pipeline.process (request, response, out);
- </xsl:otherwise>
- </xsl:choose>
- }
- </xsl:for-each>
- }
-}
-
- </xsl:template> <!-- match="map:sitemap" -->
-
- <xsl:template match="map:match">
- <xsl:variable name="matcher-type">
- <xsl:call-template name="get-parameter">
- <xsl:with-param name="parname">type</xsl:with-param>
- <xsl:with-param name="default"><xsl:value-of
select="/map:sitemap/map:components/map:matchers/@default"/></xsl:with-param>
- </xsl:call-template>
- </xsl:variable>
- <xsl:variable name="pattern-value">
- <xsl:call-template name="get-parameter">
- <xsl:with-param name="parname">pattern</xsl:with-param>
- <xsl:with-param name="required">true</xsl:with-param>
- </xsl:call-template>
- </xsl:variable>
- if ((map = matcher_<xsl:value-of select="translate($matcher-type, '- ',
'__')"/>.match ("<xsl:value-of select="$pattern-value"/>", request)) != null) {
- mapStack.push (map);
- <xsl:apply-templates/>
- }
- </xsl:template> <!-- match="map:match" -->
-
- <xsl:template match="map:select">
- <xsl:variable name="selector-type">
- <xsl:call-template name="get-parameter">
- <xsl:with-param name="parname">type</xsl:with-param>
- <xsl:with-param name="default"><xsl:value-of
select="/map:sitemap/map:components/map:selectors/@default"/></xsl:with-param>
- </xsl:call-template>
- </xsl:variable>
- <xsl:for-each select="./map:when">
- <xsl:variable name="test-value">
- <xsl:call-template name="get-parameter">
- <xsl:with-param name="parname">test</xsl:with-param>
- <xsl:with-param name="required">true</xsl:with-param>
- </xsl:call-template>
- </xsl:variable>
- if (selector_<xsl:value-of select="translate($selector-type, '- ',
'__')"/>.select ("<xsl:value-of select="$test-value"/>", request)) {
- <xsl:apply-templates/>
- }
- </xsl:for-each>
-
- <xsl:for-each select="./map:otherwise">
- else {
- <xsl:apply-templates/>
- }
- </xsl:for-each>
- </xsl:template> <!-- match="/map:sitemap/map:select" -->
-
- <xsl:template match="map:generate">
- <xsl:call-template name="setup-component">
- <xsl:with-param name="default-component"
select="/map:sitemap/map:components/map:generators/@default"/>
- <xsl:with-param name="method">setGenerator</xsl:with-param>
- <xsl:with-param name="prefix">generator</xsl:with-param>
- </xsl:call-template>
- </xsl:template> <!-- match="map:generate" -->
-
- <xsl:template match="map:transform">
- <xsl:call-template name="setup-component">
- <xsl:with-param name="default-component"
select="/map:sitemap/map:components/map:transformers/@default"/>
- <xsl:with-param name="method">addTransformer</xsl:with-param>
- <xsl:with-param name="prefix">transformer</xsl:with-param>
- </xsl:call-template>
- </xsl:template> <!-- match="map:transormer" -->
-
- <xsl:template match="map:serialize">
- <xsl:call-template name="setup-component">
- <xsl:with-param name="default-component"
select="/map:sitemap/map:components/map:serializers/@default"/>
- <xsl:with-param name="method">setSerializer</xsl:with-param>
- <xsl:with-param name="prefix">serializer</xsl:with-param>
- </xsl:call-template>
- return pipeline.process (request, response, out);
- </xsl:template> <!-- match="map:serialize" -->
-
- <xsl:template match="map:mount">
- return sitemap_<xsl:value-of select="translate(@src, ':@./-{}#',
'_____')"/>.process(request, response, out);
- </xsl:template> <!-- match="map:mount" -->
-
- <xsl:template match="map:read">
- return read (request, response, out,
- "<xsl:value-of select="@src"/>"<xsl:if test="(@mime-type)">,
"<xsl:value-of select="@mime-type"/>"</xsl:if>);
- </xsl:template> <!-- match="map:read" -->
-
- <xsl:template match="map:redirect-to">
- <xsl:choose>
- <xsl:when test="@resource">
- return resource_<xsl:value-of select="translate(@resource, '- ',
'__')"/>(pipeline, mapStack, request, response, out);
- </xsl:when>
- <xsl:when test="@uri">
- // request.setUri ("<xsl:value-of select="@uri"/>");
- // this.process(request, response, out);
- </xsl:when>
- <xsl:otherwise>
- <xsl:call-template name="error">
- <xsl:with-param name="message">Missing attribute uri= or resource=
to element redirect-to</xsl:with-param>
- </xsl:call-template>
- </xsl:otherwise>
- </xsl:choose>
- </xsl:template> <!-- match="map:redirect-to" -->
-
- <xsl:template match="map:param">
- param.setParameter ("<xsl:value-of select="@name"/>", "<xsl:value-of
select="@map:value"/>");
- </xsl:template> <!-- match="map:param" -->
-
- <!-- Sitemap Utility templates -->
-
- <xsl:template name="config-components">
- <xsl:param name="name"/>
- <xsl:param name="interface"/>
- <xsl:param name="components"/>
-
- <xsl:variable name="qname">
- <xsl:value-of select="concat($prefix, ':value')"/>
- </xsl:variable>
-
- <xsl:for-each select="$components">
- <xsl:variable name="confname">
- <xsl:value-of select="$name"/>_<xsl:value-of select="@type"/>_conf
- </xsl:variable>
- <xsl:call-template name="nested-config-components">
- <xsl:with-param name="name" select="$name"/>
- <xsl:with-param name="config-name"><xsl:value-of
select="concat(local-name(.),'/',@type)"/></xsl:with-param>
- <xsl:with-param name="interface" select="$interface"/>
- <xsl:with-param name="components" select="*"/>
- <xsl:with-param name="type" select="@type"/>
- </xsl:call-template>
- <xsl:value-of select="$name"/>_<xsl:value-of select="translate(@type,
'- ', '__')"/> =
- (<xsl:value-of select="$interface"/>)load_component ("<xsl:value-of
select="@src"/>", <xsl:value-of select="$confname"/>);
- </xsl:for-each>
- </xsl:template>
-
- <xsl:template name="nested-config-components">
- <xsl:param name="name"/>
- <xsl:param name="config-name"/>
- <xsl:param name="interface"/>
- <xsl:param name="components"/>
- <xsl:param name="type"/>
- <xsl:param name="subname"/>
-
- <xsl:variable name="qname">
- <xsl:value-of select="concat($prefix, ':value')"/>
- </xsl:variable>
-
- <xsl:variable name="confname">
- <xsl:value-of select="$name"/>_<xsl:value-of
select="$type"/><xsl:value-of select="$subname"/>_conf
- </xsl:variable>
-
- Configuration <xsl:value-of select="$confname"/> =
confBuilder.newConfiguration ("<xsl:value-of select="$config-name"/>");
-
- <!-- process content -->
- <xsl:for-each select="$components">
- <xsl:choose>
- <xsl:when test="name(.)='map:param'">
- <xsl:choose>
- <xsl:when test="not(@value)">
- confBuilder.addAttribute ("<xsl:value-of select="@name"/>",
"<xsl:value-of select="."/>", <xsl:value-of select="$confname"/>);
- </xsl:when>
- <xsl:otherwise>
- confBuilder.addAttribute ("<xsl:value-of select="@name"/>",
"<xsl:value-of select="@value"/>", <xsl:value-of select="$confname"/>);
- </xsl:otherwise>
- </xsl:choose>
- </xsl:when>
- <xsl:when test="name(@*)=$qname">
- confBuilder.addAttribute ("<xsl:value-of select="name(.)"/>",
"<xsl:value-of select="@*[name(.)=$qname]"/>", <xsl:value-of
select="$confname"/>);
- </xsl:when>
- <xsl:when test="count(./*)=0">
- confBuilder.addAttribute ("<xsl:value-of select="name(.)"/>",
"<xsl:value-of select="."/>", <xsl:value-of select="$confname"/>);
- </xsl:when>
- <xsl:when test="count(./*)>0">
- <xsl:variable name="newsubname">
- <xsl:choose>
- <xsl:when test="not($subname)"><xsl:value-of
select="position()"/></xsl:when>
- <xsl:otherwise><xsl:value-of
select="concat($subname,position())"/></xsl:otherwise>
- </xsl:choose>
- </xsl:variable>
- <xsl:call-template name="nested-config-components">
- <xsl:with-param name="name"><xsl:value-of
select="$name"/></xsl:with-param>
- <xsl:with-param name="config-name"><xsl:value-of
select="local-name(.)"/></xsl:with-param>
- <xsl:with-param name="interface"><xsl:value-of
select="$interface"/></xsl:with-param>
- <xsl:with-param name="components" select="./*"/>
- <xsl:with-param name="type"><xsl:value-of
select="$type"/></xsl:with-param>
- <xsl:with-param name="subname"><xsl:value-of
select="$newsubname"/></xsl:with-param>
- </xsl:call-template>
- <xsl:variable name="newconfname">
- <xsl:value-of select="$name"/>_<xsl:value-of
select="$type"/><xsl:value-of select="$newsubname"/>_conf
- </xsl:variable>
- confBuilder.addConfiguration (<xsl:value-of
select="$newconfname"/>, <xsl:value-of select="$confname"/>);
- </xsl:when>
- </xsl:choose>
- </xsl:for-each>
- </xsl:template>
-
- <xsl:template name="setup-component">
- <xsl:param name="default-component"/>
- <xsl:param name="method"/>
- <xsl:param name="prefix"/>
- <xsl:variable name="component-type">
- <xsl:call-template name="get-parameter">
- <xsl:with-param name="parname">type</xsl:with-param>
- <xsl:with-param name="default"><xsl:value-of
select="$default-component"/></xsl:with-param>
- </xsl:call-template>
- </xsl:variable>
- <xsl:variable name="component-source">
- <xsl:call-template name="get-parameter">
- <xsl:with-param name="parname">src</xsl:with-param>
- <xsl:with-param name="default">null</xsl:with-param>
- </xsl:call-template>
- </xsl:variable>
- <xsl:if test="descendant::map:param">
- param = new Parameters ();
- </xsl:if>
- <xsl:variable name="component-param">
- <xsl:choose>
- <xsl:when test="descendant::map:param">
- param
- </xsl:when>
- <xsl:otherwise>
- emptyParam
- </xsl:otherwise>
- </xsl:choose>
- </xsl:variable>
- <xsl:apply-templates select="./map:param"/>
- <xsl:choose>
- <xsl:when test="$component-source='null'">
- pipeline.<xsl:value-of select="$method"/> (<xsl:value-of
select="$prefix"/>_<xsl:value-of select="$component-type"/>,
- null, <xsl:value-of select="$component-param"/>);
- </xsl:when>
- <xsl:otherwise>
- pipeline.<xsl:value-of select="$method"/> (<xsl:value-of
select="$prefix"/>_<xsl:value-of select="$component-type"/>,
- "<xsl:value-of select="$component-source"/>",
<xsl:value-of select="$component-param"/>);
- </xsl:otherwise>
- </xsl:choose>
- </xsl:template>
-
- <!-- Utility templates -->
-
- <xsl:template name="get-parameter">
- <xsl:param name="parname"/>
- <xsl:param name="default"/>
- <xsl:param name="required">false</xsl:param>
-
- <xsl:variable name="qname">
- <xsl:value-of select="concat($prefix, ':param')"/>
- </xsl:variable>
-
- <xsl:choose>
- <xsl:when test="@*[name(.) = $parname]"><xsl:value-of
select="@*[name(.) = $parname]"/> </xsl:when>
- <xsl:when test="(*[name(.) = $qname])[EMAIL PROTECTED] = $parname]">
- <xsl:call-template name="get-nested-content">
- <xsl:with-param name="content"
- select="(*[name(.) = $qname])[EMAIL PROTECTED] =
$parname]"/>
- </xsl:call-template>
- </xsl:when>
- <xsl:otherwise>
- <xsl:choose>
- <xsl:when test="string-length($default) = 0">
- <xsl:choose>
- <xsl:when test="$required = 'true'">
- <xsl:call-template name="error">
- <xsl:with-param name="message">[Logicsheet processor]
-Parameter '<xsl:value-of select="$parname"/>' missing in dynamic tag
<<xsl:value-of select="name(.)"/>>
- </xsl:with-param>
- </xsl:call-template>
- </xsl:when>
- <xsl:otherwise>""</xsl:otherwise>
- </xsl:choose>
- </xsl:when>
- <xsl:otherwise><xsl:copy-of select="$default"/></xsl:otherwise>
- </xsl:choose>
- </xsl:otherwise>
- </xsl:choose>
- </xsl:template>
-
- <xsl:template name="get-nested-content">
- <xsl:param name="content"/>
- <xsl:choose>
- <xsl:when test="$content/*">
- <xsl:apply-templates select="$content/*"/>
- </xsl:when>
- <xsl:otherwise><xsl:value-of select="$content"/></xsl:otherwise>
- </xsl:choose>
- </xsl:template>
-
- <xsl:template name="error">
- <xsl:param name="message"/>
- <xsl:message terminate="yes"><xsl:value-of
select="$message"/></xsl:message>
- </xsl:template>
-
- <!-- Ignored elements -->
- <xsl:template match="map:logicsheet|map:dependency|map:handle-errors"/>
-
-</xsl:stylesheet>
+ <xsl:if test="normalize-space(text())">
+ confBuilder.characters("<xsl:value-of
select="text()"/>".toCharArray(), 0, <xsl:value-of
select="string-length(text())"/>);
+ </xsl:if>
+ <xsl:variable name="newsubname">
+ <xsl:choose>
+ <xsl:when test="not($subname)"><xsl:value-of
select="position()"/></xsl:when>
+ <xsl:otherwise><xsl:value-of
select="concat($subname,position())"/></xsl:otherwise>
+ </xsl:choose>
+ </xsl:variable>
+ <xsl:call-template name="nested-config-components">
+ <xsl:with-param name="name"><xsl:value-of
select="$name"/></xsl:with-param>
+ <xsl:with-param name="config-name"><xsl:value-of
select="local-name(.)"/></xsl:with-param>
+ <xsl:with-param name="interface"><xsl:value-of
select="$interface"/></xsl:with-param>
+ <xsl:with-param name="components" select="./*"/>
+ <xsl:with-param name="type"><xsl:value-of
select="$type"/></xsl:with-param>
+ <xsl:with-param name="ns"><xsl:value-of
select="namespace-uri()"/></xsl:with-param>
+ <xsl:with-param name="subname"><xsl:value-of
select="$newsubname"/></xsl:with-param>
+ </xsl:call-template>
+ confBuilder.endElement("<xsl:value-of select="namespace-uri()"/>",
"<xsl:value-of select="local-name(.)"/>", "<xsl:value-of select="name(.)"/>");
+ <xsl:if test="$ns!=namespace-uri()">
+ confBuilder.endPrefixMapping("","<xsl:value-of
select="namespace-uri()"/>");
+ </xsl:if>
+ </xsl:for-each>
+ </xsl:template>
+
+ <xsl:template name="setup-component">
+ <xsl:param name="default-component"/>
+ <xsl:param name="method"/>
+ <xsl:param name="prefix"/>
+ <xsl:variable name="component-type">
+ <xsl:call-template name="get-parameter">
+ <xsl:with-param name="parname">type</xsl:with-param>
+ <xsl:with-param name="default"><xsl:value-of
select="$default-component"/></xsl:with-param>
+ </xsl:call-template>
+ </xsl:variable>
+ <xsl:variable name="component-source">
+ <xsl:call-template name="get-parameter">
+ <xsl:with-param name="parname">src</xsl:with-param>
+ <xsl:with-param name="default">null</xsl:with-param>
+ </xsl:call-template>
+ </xsl:variable>
+ <xsl:if test="descendant::map:param">
+ param = new Parameters ();
+ </xsl:if>
+ <xsl:variable name="component-param">
+ <xsl:choose>
+ <xsl:when test="descendant::map:param">
+ param
+ </xsl:when>
+ <xsl:otherwise>
+ emptyParam
+ </xsl:otherwise>
+ </xsl:choose>
+ </xsl:variable>
+ <xsl:apply-templates select="./map:param"/>
+ <xsl:choose>
+ <xsl:when test="$component-source='null'">
+ pipeline.<xsl:value-of select="$method"/> (<xsl:value-of
select="$prefix"/>_<xsl:value-of select="$component-type"/>,
+ null, <xsl:value-of select="$component-param"/>);
+ </xsl:when>
+ <xsl:otherwise>
+ pipeline.<xsl:value-of select="$method"/> (<xsl:value-of
select="$prefix"/>_<xsl:value-of select="$component-type"/>,
+ "<xsl:value-of select="$component-source"/>",
<xsl:value-of select="$component-param"/>);
+ </xsl:otherwise>
+ </xsl:choose>
+ </xsl:template>
+
+ <!-- Utility templates -->
+
+ <xsl:template name="get-parameter">
+ <xsl:param name="parname"/>
+ <xsl:param name="default"/>
+ <xsl:param name="required">false</xsl:param>
+
+ <xsl:variable name="qname">
+ <xsl:value-of select="concat($prefix, ':param')"/>
+ </xsl:variable>
+
+ <xsl:choose>
+ <xsl:when test="@*[name(.) = $parname]"><xsl:value-of
select="@*[name(.) = $parname]"/> </xsl:when>
+ <xsl:when test="(*[name(.) = $qname])[EMAIL PROTECTED] = $parname]">
+ <xsl:call-template name="get-nested-content">
+ <xsl:with-param name="content"
+ select="(*[name(.) = $qname])[EMAIL PROTECTED] =
$parname]"/>
+ </xsl:call-template>
+ </xsl:when>
+ <xsl:otherwise>
+ <xsl:choose>
+ <xsl:when test="string-length($default) = 0">
+ <xsl:choose>
+ <xsl:when test="$required = 'true'">
+ <xsl:call-template name="error">
+ <xsl:with-param name="message">[Logicsheet processor]
+Parameter '<xsl:value-of select="$parname"/>' missing in dynamic tag
<<xsl:value-of select="name(.)"/>>
+ </xsl:with-param>
+ </xsl:call-template>
+ </xsl:when>
+ <xsl:otherwise>""</xsl:otherwise>
+ </xsl:choose>
+ </xsl:when>
+ <xsl:otherwise><xsl:copy-of select="$default"/></xsl:otherwise>
+ </xsl:choose>
+ </xsl:otherwise>
+ </xsl:choose>
+ </xsl:template>
+
+ <xsl:template name="get-nested-content">
+ <xsl:param name="content"/>
+ <xsl:choose>
+ <xsl:when test="$content/*">
+ <xsl:apply-templates select="$content/*"/>
+ </xsl:when>
+ <xsl:otherwise><xsl:value-of select="$content"/></xsl:otherwise>
+ </xsl:choose>
+ </xsl:template>
+
+ <xsl:template name="error">
+ <xsl:param name="message"/>
+ <xsl:message terminate="yes"><xsl:value-of
select="$message"/></xsl:message>
+ </xsl:template>
+
+ <!-- Ignored elements -->
+ <xsl:template match="map:logicsheet|map:dependency|map:handle-errors"/>
+
+</xsl:stylesheet>
No revision
No revision
1.1.2.1 +189 -0
xml-cocoon/src/org/apache/cocoon/generation/Attic/StatusGenerator.java
No revision
No revision
1.1.2.2 +2 -2
xml-cocoon/src/org/apache/cocoon/matching/Attic/BrowserMatcherFactory.java
Index: BrowserMatcherFactory.java
===================================================================
RCS file:
/home/cvs/xml-cocoon/src/org/apache/cocoon/matching/Attic/BrowserMatcherFactory.java,v
retrieving revision 1.1.2.1
retrieving revision 1.1.2.2
diff -u -r1.1.2.1 -r1.1.2.2
--- BrowserMatcherFactory.java 2000/07/11 23:46:41 1.1.2.1
+++ BrowserMatcherFactory.java 2000/07/12 22:15:11 1.1.2.2
@@ -12,11 +12,11 @@
* for request URIs
*
* @author <a href="mailto:[EMAIL PROTECTED]">Giacomo Pati</a>
- * @version CVS $Revision: 1.1.2.1 $ $Date: 2000/07/11 23:46:41 $
+ * @version CVS $Revision: 1.1.2.2 $ $Date: 2000/07/12 22:15:11 $
*/
public class BrowserMatcherFactory implements MatcherFactory {
public String generate (String test_expression) {
- return "return \"BrowserMatcher\"";
+ return "return null;";
}
}
No revision
No revision
1.1.2.1 +22 -0
xml-cocoon/src/org/apache/cocoon/selection/Attic/BrowserSelectorFactory.java
1.1.2.1 +24 -0
xml-cocoon/src/org/apache/cocoon/selection/Attic/SelectorFactory.java
No revision
No revision
1.1.2.2 +1 -3
xml-cocoon/src/org/apache/cocoon/sitemap/Attic/XSLTMatcherFactoryLoader.java
Index: XSLTMatcherFactoryLoader.java
===================================================================
RCS file:
/home/cvs/xml-cocoon/src/org/apache/cocoon/sitemap/Attic/XSLTMatcherFactoryLoader.java,v
retrieving revision 1.1.2.1
retrieving revision 1.1.2.2
diff -u -r1.1.2.1 -r1.1.2.2
--- XSLTMatcherFactoryLoader.java 2000/07/12 00:11:07 1.1.2.1
+++ XSLTMatcherFactoryLoader.java 2000/07/12 22:15:17 1.1.2.2
@@ -15,12 +15,10 @@
* generated source code.
*
* @author <a href="mailto:[EMAIL PROTECTED]">Giacomo Pati</a>
- * @version CVS $Revision: 1.1.2.1 $ $Date: 2000/07/12 00:11:07 $
+ * @version CVS $Revision: 1.1.2.2 $ $Date: 2000/07/12 22:15:17 $
*/
public class XSLTMatcherFactoryLoader {
- public XSLTMatcherFactoryLoader () {
- }
public String getSource (String matcherFactoryClassname, String pattern)
throws ClassNotFoundException, InstantiationException,
IllegalAccessException, Exception {
No revision
No revision
1.1.2.1 +29 -0
xml-cocoon/src/org/apache/cocoon/sitemap/Attic/XSLTSelectorFactoryLoader.java
No revision
No revision
1.1.2.9 +26 -26 xml-cocoon/xdocs/drafts/Attic/sitemap-working-draft.xmap
Index: sitemap-working-draft.xmap
===================================================================
RCS file: /home/cvs/xml-cocoon/xdocs/drafts/Attic/sitemap-working-draft.xmap,v
retrieving revision 1.1.2.8
retrieving revision 1.1.2.9
diff -u -r1.1.2.8 -r1.1.2.9
--- sitemap-working-draft.xmap 2000/07/11 23:47:03 1.1.2.8
+++ sitemap-working-draft.xmap 2000/07/12 22:15:26 1.1.2.9
@@ -131,9 +131,9 @@
pipeline processing.
-->
<map:generators default="parser">
- <map:generator type="parser"
src="class:///org.apache.cocoon.generator.FileGenerator" label="content"/>
- <map:generator type="dir"
src="file:///home/mystuff/java/MyDirGenerator.class" label="content"/>
- <map:generator type="xsp"
src="class:///org.apache.cocoon.generators.XSPGenerator" label="content">
+ <map:generator name="parser"
src="class:///org.apache.cocoon.generation.FileGenerator" label="content"/>
+ <map:generator name="dir"
src="file:///home/mystuff/java/MyDirGenerator.class" label="content"/>
+ <map:generator name="xsp"
src="class:///org.apache.cocoon.generation.XSPGenerator" label="content">
...
</map:generator>
</map:generators>
@@ -142,12 +142,12 @@
Transformers transform SAX events in SAX events.
-->
<map:transformers default="xslt">
- <map:transformer type="xslt"
src="class:///org.apache.cocoon.transformer.XSLTTransformer">
+ <map:transformer name="xslt"
src="class:///org.apache.cocoon.transformation.XSLTTransformer">
<compile-stylesheets map:value="true"/>
</map:transformer>
- <map:transformer type="xinclude"
src="class:///org.apache.cocoon.transformer.XIncludeTransformer"
label="content"/>
- <map:transformer type="schema"
src="class:///org.apache.cocoon.transformer.SchemaLoader"/>
- <map:transformer type="rdf"
src="class:///org.apache.cocoon.transformer.RDFizer"/>
+ <map:transformer name="xinclude"
src="class:///org.apache.cocoon.transformation.XIncludeTransformer"
label="content"/>
+ <map:transformer name="schema"
src="class:///org.apache.cocoon.transformation.SchemaLoader"/>
+ <map:transformer name="rdf"
src="class:///org.apache.cocoon.transformation.RDFizer"/>
</map:transformers>
<!--
@@ -155,12 +155,12 @@
final client consumption.
-->
<map:serializers default="html">
- <map:serializer type="html" mime-type="text/html"
src="class:///org.apache.cocoon.serializer.HTMLSerializer">
+ <map:serializer name="html" mime-type="text/html"
src="class:///org.apache.cocoon.serialization.HTMLSerializer">
<doctype-public map:value="-//W3C//DTD HTML 4.0 Transitional//EN"/>
<doctype-system map:value="http://www.w3.org/TR/REC-html40/loose.dtd"/>
<preserve-space map:value="true"/>
<encoding map:value="UTF-8"/>
- <indent>1</indent>
+ <indent tab="8">1</indent>
<colors>
<foreground map:value="white"/>
<borders>
@@ -168,7 +168,7 @@
<right>red</right>
</borders>
<text>black</text>
- <lines>>
+ <lines>
<left map:value="cyan"/>
<right>orange</right>
</lines>
@@ -179,44 +179,44 @@
<line-width map:value="120"/>
</map:serializer>
- <map:serializer type="wap" mime-type="text/vnd.wap.wml"
src="class:///org.apache.cocoon.serializer.XMLSerializer">
+ <map:serializer name="wap" mime-type="text/vnd.wap.wml"
src="class:///org.apache.cocoon.serialization.XMLSerializer">
<doctype-public>-//WAPFORUM//DTD WML 1.1//EN</doctype-public>
<doctype-system>http://www.wapforum.org/DTD/wml_1.1.xml</doctype-system>
<encoding>UTF-8</encoding>
</map:serializer>
- <map:serializer type="svg2jpg" mime-type="image/jpg"
src="class:///org.apache.cocoon.serializer.SVGSerializer">
+ <map:serializer name="svg2jpg" mime-type="image/jpg"
src="class:///org.apache.cocoon.serialization.SVGSerializer">
<format map:value="jpg"/>
<compression-level>80%</compression-level>
</map:serializer>
- <map:serializer type="svg2png" mime-type="image/png"
src="class:///org.apache.cocoon.serializer.SVGSerializer">
+ <map:serializer name="svg2png" mime-type="image/png"
src="class:///org.apache.cocoon.serialization.SVGSerializer">
<format>png</format>
<color-depth map:value="24"/>
</map:serializer>
</map:serializers>
<!--
- Choosers are classes that contain programming logic that perform
+ Selectors are classes that contain programming logic that perform
boolean evaluation based on enviornment state during the call (state
includes request parameters, machine state as well as any other
accessible information)
- Choosers can only respond with true/false when called.
+ Selectors can only respond with true/false when called.
-->
- <map:choosers default="browser">
- <map:chooser type="load"
src="class:///org.apache.cocoon.chooser.MachineLoadChooser">
+ <map:selectors default="browser">
+ <map:selector name="load"
src="class:///org.apache.cocoon.selection.MachineLoadSelector">
...
- </map:chooser>
+ </map:selector>
- <map:chooser type="user"
src="class:///org.apache.cocoon.chooser.AuthenticationChooser">
+ <map:selector name="user"
src="class:///org.apache.cocoon.selection.AuthenticationSelector">
...
- </map:chooser>
+ </map:selector>
- <map:chooser type="browser"
src="class:///org.apache.cocoon.chooser.BrowserChooser">
+ <map:selector name="browser"
factory="org.apache.cocoon.selection.BrowserSelectorFactory">
...
- </map:chooser>
- </map:choosers>
+ </map:selector>
+ </map:selectors>
<!--
Matchers are classes that are able to test if the request parameters
@@ -225,15 +225,15 @@
depending on the matcher own logic (this is up to the matcher
implementation).
-->
<map:matchers default="uri-wildcard">
- <map:matcher type="uri-wildcard"
factory="org.apache.cocoon.matchers.WildcardURIMatcherFactory">
+ <map:matcher name="uri-wildcard"
factory="org.apache.cocoon.matching.WildcardURIMatcherFactory">
...
</map:matcher>
- <map:matcher type="uri-regexp"
src="class:///org.apache.cocoon.matcher.RegexpURIMatcher">
+ <map:matcher name="uri-regexp"
src="class:///org.apache.cocoon.matching.RegexpURIMatcher">
...
</map:matcher>
- <map:matcher type="browser"
factory="org.apache.cocoon.matchers.BrowserMatcherFactory">
+ <map:matcher name="browser"
factory="org.apache.cocoon.matching.BrowserMatcherFactory">
...
</map:matcher>
</map:matchers>