forrest-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From iss...@cocoondev.org
Subject [JIRA] Closed: (FOR-348) plugins need to pass-through under more conditions
Date Thu, 04 Nov 2004 01:16:38 GMT
Message:

   The following issue has been closed.

   Resolver: Ross Gardler
       Date: Wed, 3 Nov 2004 7:16 PM

Fix courtesy of Nicola Ken's keen eye to detail!
---------------------------------------------------------------------
View the issue:
  http://issues.cocoondev.org//browse/FOR-348

Here is an overview of the issue:
---------------------------------------------------------------------
        Key: FOR-348
    Summary: plugins need to pass-through under more conditions
       Type: Bug

     Status: Closed
   Priority: Critical
 Resolution: FIXED

    Project: Forrest
 Components: 
             Plugins (general issues)
   Fix Fors:
             HEAD
   Versions:
             HEAD

   Assignee: Ross Gardler
   Reporter: Ross Gardler

    Created: Wed, 3 Nov 2004 11:55 AM
    Updated: Wed, 3 Nov 2004 7:16 PM

Description:
IF a source format plugin  matches on a general pattern, such as **.xml but does not process
the file because it does not appear in the handled DTD types the processing of that file is
not passed to other matchers in the pipeline.

For example, the simplified docbook plugin has the following match:

<map:match pattern="**.xml">
        <map:generate src="{project:content.xdocs}{1}.xml" />
        <map:call resource="transform-to-document">
          <map:parameter name="src" value="{project:content.xdocs}{1}.xml" />
        </map:call>
        <map:serialize type="xml-document"/>
</map:match>

transform-to-document is:

<map:resource name="transform-to-document">
      <map:act type="sourcetype" src="{src}">
        <map:select type="parameter">
          <map:parameter name="parameter-selector-test" value="{sourcetype}" />

          <map:when test="docbook-v4.1.2">
            <map:transform src="{forrest:plugins}/simplified-docbook/resources/stylesheets/sdocbook2document.xsl"
/>
          </map:when>
          
          <map:when test="docbook-v4.2">
            <map:transform src="{forrest:plugins}/simplified-docbook/resources/stylesheets/sdocbook2document.xsl"
/>
          </map:when>

          <map:when test="sdocbook-v1.0">
            <map:transform src="{forrest:plugins}/simplified-docbook/resources/stylesheets/sdocbook2document.xsl"
/>
          </map:when>

          <map:otherwise/>
        </map:select>

If we make a request for a document How-To document (hence not a DocumentV*) the match to
transform this document to a documentV* format (found in forrest.xmap) is never reached (and
still would not be reached if it were extracted to another plugin).

In otherwords, since the simplified-docbook is matching the request it , but not processing
it appropriately (it gets passed through unconverted) the simplified-docbook plugin is preventing
subsequent matches.

We need to do one of the following:

- allow a matcher to indicate that it never actually processed the file and therefore the
pass-through feature should come into effect

- enable multiple matches for a single request (something Cocoon does not do - and would break
Cocoon if implemented)

- allow a plugin to extend the transform-to-document resource in the parent sitemap

- ???


---------------------------------------------------------------------
JIRA INFORMATION:
This message is automatically generated by JIRA.

If you think it was sent incorrectly contact one of the administrators:
   http://issues.cocoondev.org//secure/Administrators.jspa

If you want more information on JIRA, or have a bug to report see:
   http://www.atlassian.com/software/jira


Mime
View raw message