cocoon-cvs mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From h...@apache.org
Subject cvs commit: xml-cocoon2/src/org/apache/cocoon/components/language/markup/sitemap/java sitemap.xsl
Date Fri, 07 Dec 2001 16:30:56 GMT
haul        01/12/07 08:30:56

  Modified:    src/org/apache/cocoon/components/language/markup/sitemap/java
                        sitemap.xsl
  Log:
  Added <map:call resource=""/> as discussed on cocoon-dev
  Takes parameters and creates new map containing them.
  Will deprecate <map:redirect-to resource=""/> someday.
  
  Revision  Changes    Path
  1.52      +32 -1     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.51
  retrieving revision 1.52
  diff -u -r1.51 -r1.52
  --- sitemap.xsl	2001/12/07 10:12:59	1.51
  +++ sitemap.xsl	2001/12/07 16:30:56	1.52
  @@ -126,7 +126,7 @@
        *
        * @author &lt;a href="mailto:giacomo@apache.org"&gt;Giacomo Pati&lt;/a&gt;
        * @author &lt;a href="mailto:bloritsch@apache.org"&gt;Berin Loritsch&lt;/a&gt;
  -     * @version CVS $Id: sitemap.xsl,v 1.51 2001/12/07 10:12:59 sylvain Exp $
  +     * @version CVS $Id: sitemap.xsl,v 1.52 2001/12/07 16:30:56 haul 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"/>";
  @@ -1387,6 +1387,37 @@
       else
         if (true) return sitemapManager.invoke (this.manager, environment, substitute(listOfMaps,"<xsl:value-of
select="@uri-prefix"/>"), substitute(listOfMaps,"<xsl:value-of select="@src"/>"),
<xsl:value-of select="$check-reload"/>, <xsl:value-of select="$reload-method"/>);
     </xsl:template> <!-- match="map:mount" -->
  +
  +
  +
  +  <!-- generate the code to redirect a request to an internal resource definition -->
  +  <xsl:template match="map:call">
  +    <xsl:if test="map:parameter">
  +      map = new HashMap(<xsl:value-of select="count(map:parameter)"/>);
  +      <xsl:for-each select="map:parameter">
  +        <xsl:variable name="name">
  +          <xsl:call-template name="get-parameter">
  +            <xsl:with-param name="parname">name</xsl:with-param>
  +          </xsl:call-template>
  +        </xsl:variable>
  +        <xsl:variable name="value">
  +          <xsl:call-template name="get-parameter">
  +            <xsl:with-param name="parname">value</xsl:with-param>
  +          </xsl:call-template>
  +        </xsl:variable>
  +        map.put("<xsl:value-of select="$name"/>", substitute(listOfMaps, "<xsl:value-of
select="$value"/>"));
  +      </xsl:for-each>
  +      listOfMaps.add(map);
  +      this.dumpParameters(listOfMaps);
  +    </xsl:if>
  +      Class[] argTypes = new Class[] {StreamPipeline.class, EventPipeline.class, List.class,
Environment.class, String.class, Boolean.TYPE};
  +      Object[] argValues = new Object[] {pipeline, eventPipeline, listOfMaps, environment,
cocoon_view, new Boolean(internalRequest)};
  +      String methodName = "resource_" + substitute(listOfMaps, "<xsl:value-of select="translate(@resource,
'- ', '__')"/>");
  +      if (true) return invokeMethod(methodName, argTypes, argValues);
  +  </xsl:template><!-- match="map:call" -->
  +
  +
  +
   
     <!-- generate the code to redirect a request -->
     <xsl:template match="map:redirect-to">
  
  
  

----------------------------------------------------------------------
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


Mime
View raw message