[prev in list] [next in list] [prev in thread] [next in thread]
List: xml-cocoon-cvs
Subject: cvs commit: xml-cocoon2/src/org/apache/cocoon/components/language/markup/sitemap/java sitemap.xsl
From: vgritsenko () apache ! org
Date: 2001-06-27 21:45:19
[Download RAW message or body]
vgritsenko 01/06/27 14:45:19
Modified: src/org/apache/cocoon/components/language/markup/sitemap/java
sitemap.xsl
Log:
Applied patch from Christian Haul [haul@dvs1.informatik.tu-darmstadt.de]:
- matchers with ' ' and '-' in name works correctly.
- map:parameters for action processed once (before invoking action)
Revision Changes Path
1.21 +14 -13 \
xml-cocoon2/src/org/apache/cocoon/components/language/markup/sitemap/java/sitemap.xsl \
Index: sitemap.xsl
===================================================================
RCS file: /home/cvs/xml-cocoon2/src/org/apache/cocoon/components/language/markup/sitemap/java/sitemap.xsl,v
retrieving revision 1.20
retrieving revision 1.21
diff -u -r1.20 -r1.21
--- sitemap.xsl 2001/06/22 02:47:40 1.20
+++ sitemap.xsl 2001/06/27 21:45:17 1.21
@@ -128,7 +128,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.20 2001/06/22 02:47:40 vgritsenko Exp $
+ * @version CVS $Id: sitemap.xsl,v 1.21 2001/06/27 21:45:17 vgritsenko 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"/>"; @@ -148,14 +148,15 @@
<xsl:value-of select="@src"/>
</xsl:variable>
<xsl:if test="XSLTFactoryLoader:isFactory($factory-loader, string($src))">
+ <xsl:variable name="name" select="@name"/>
<xsl:variable name="type" select="translate(@name, '- ', '__')"/>
- <xsl:variable name="default" select="$type = ../@default"/>
+ <xsl:variable name="default" select="@name = ../@default"/>
<xsl:variable name="config"><xsl:copy-of select="."/></xsl:variable>
private Map <xsl:value-of select="$type"/>Match (<xsl:value-of \
select="XSLTFactoryLoader:getParameterSource($factory-loader, \
string($src),$config)"/> pattern, Map objectModel, Parameters \
parameters) {
<xsl:value-of \
select="XSLTFactoryLoader:getMethodSource($factory-loader, string($src),$config)"/> \
}
<!-- process all map:match elements with a type attribute refering to \
the current matcher factory iteration -->
- <xsl:for-each \
select="/map:sitemap/map:pipelines/map:pipeline/descendant-or-self::map:match[@type=$type \
or (not(@type) and $default)]"> + <xsl:for-each \
select="/map:sitemap/map:pipelines/map:pipeline/descendant-or-self::map:match[@type=$name \
or (not(@type) and $default)]"> <xsl:call-template name="line-number"/>
<xsl:variable name="matcher-name">
<xsl:call-template name="generate-name">
@@ -471,7 +472,7 @@
</xsl:call-template>
</xsl:variable>
// method for handling "<xsl:value-of select="@pattern"/>"
- if(<xsl:value-of select="$matcher-type"/>Match<xsl:value-of \
select="generate-id(.)"/>( + if(<xsl:value-of \
select="translate($matcher-type, '- ', '__')"/>Match<xsl:value-of \
select="generate-id(.)"/>(
environment, pipeline, \
eventPipeline,
internalRequest,listOfMaps))
return true;
@@ -622,7 +623,7 @@
<!-- this is the actual code produced -->
// handling "<xsl:value-of select="@pattern"/>"
if ((map = <xsl:value-of select="$matcher-name"/>) != null) {
- getLogger().debug("Matched <xsl:value-of select="$matcher-type"/> \
<xsl:value-of select="$matcher-name2"/>"); + getLogger().debug("Matched \
<xsl:value-of select="$matcher-type"/><xsl:text> </xsl:text><xsl:value-of \
select="$matcher-name2"/>"); listOfMaps.add (map);
<xsl:apply-templates/>
listOfMaps.remove (listOfMaps.size()-1);
@@ -708,7 +709,7 @@
<!-- this is the actual code produced -->
// method for handling "<xsl:value-of select="@pattern"/>"
- private boolean <xsl:value-of select="$matcher-type"/>Match<xsl:value-of \
select="generate-id(.)"/>( + private boolean <xsl:value-of \
select="translate($matcher-type, '- ', '__')"/>Match<xsl:value-of \
select="generate-id(.)"/>(
Environment environment, StreamPipeline \
pipeline, EventPipeline eventPipeline,
boolean internalRequest, List listOfMaps)
@@ -897,7 +898,7 @@
}
getLogger().debug("Action <xsl:value-of \
select="translate($action-name,'"',' ')"/>"); listOfMaps.add (map);
- <xsl:apply-templates/>
+ <xsl:apply-templates \
select="./*[namespace-uri()='http://apache.org/cocoon/sitemap/1.0' and local-name() \
!= 'parameter']"/> listOfMaps.remove(listOfMaps.size()-1);
}
if (redirector.hasRedirected()) {
@@ -955,9 +956,9 @@
<xsl:choose>
<xsl:when test="./*[namespace-uri()='http://apache.org/cocoon/sitemap/1.0' \
and local-name() != 'parameter']"> if ((map = <xsl:value-of select="$action-name"/> \
(redirector, environment, objectModel, substitute(listOfMaps,<xsl:value-of \
select="$action-source"/>), <xsl:value-of \
select="$component-param"/>)) != null) {
- getLogger().debug("Action <xsl:value-of \
select="translate($action-name,'"',' ')"/>"); + \
getLogger().debug("Action <xsl:value-of select="translate($action-name,'"',' \
')"/>"); listOfMaps.add (map);
- <xsl:apply-templates/>
+ <xsl:apply-templates \
select="./*[namespace-uri()='http://apache.org/cocoon/sitemap/1.0' and local-name() \
!= 'parameter']"/> listOfMaps.remove(listOfMaps.size()-1);
}
</xsl:when>
@@ -1027,9 +1028,9 @@
if (redirector.hasRedirected()) {
return true;
}
- getLogger().debug("Action <xsl:value-of \
select="translate($action-name,'"',' ')"/>"); + \
getLogger().debug("Action <xsl:value-of select="translate($action-name,'"',' \
')"/>"); listOfMaps.add (map);
- <xsl:apply-templates/>
+ <xsl:apply-templates \
select="./*[namespace-uri()='http://apache.org/cocoon/sitemap/1.0' and local-name() \
!= 'parameter']"/> listOfMaps.remove(listOfMaps.size()-1);
}
if (redirector.hasRedirected()) {
@@ -1179,7 +1180,7 @@
</xsl:variable>
<xsl:if test="string-length($target) > 0 and string($target) != \
'""'"> map = new HashMap(1);
- map.put("target","<xsl:value-of select="$target"/>");
+ map.put("target",substitute(listOfMaps,"<xsl:value-of \
select="$target"/>")); listOfMaps.add(map);
</xsl:if>
Class[] argTypes = new Class[] {StreamPipeline.class, \
EventPipeline.class, List.class, Environment.class, String.class, Boolean.TYPE}; @@ \
-1518,7 +1519,7 @@ <xsl:template name="generate-name">
<xsl:param name="prefix"/>
<xsl:param name="suffix"/>
- <xsl:value-of select="$prefix"/><xsl:value-of select="$suffix"/>
+ <xsl:value-of select="translate(concat($prefix,$suffix),'- ','__')"/>
</xsl:template>
<!-- These are the usual utility templates for logicsheets -->
----------------------------------------------------------------------
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
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic