blob: 15ccdab75bf2b07d9c2140a2c0de83538755d132 [file] [log] [blame]
<?xml version="1.0"?>
<map:sitemap xmlns:map="http://apache.org/cocoon/sitemap/1.0">
<!-- =========================== Components =================================== -->
<map:components>
<map:generators default="file">
<map:generator
name="traverse"
src="org.apache.cocoon.generation.TraversableSourceDescriptionGenerator"
logger="sitemap.generator.traverse"
label="content"
/>
</map:generators>
<map:transformers default="xslt"/>
<map:readers default="resource"/>
<map:serializers default="html"/>
<map:matchers default="wildcard"/>
<map:selectors default="browser"/>
<!--
<map:pipes default="noncaching">
<map:pipe name="event-caching"
src="org.apache.cocoon.components.pipeline.impl.CachingProcessingPipeline">
<parameter name="cache-role" value="org.apache.cocoon.caching.Cache/EventAware"/>
</map:pipe>
</map:pipes>
-->
</map:components>
<!-- ========================== Flowscript ================================= -->
<map:flow language="javascript">
<map:script src="flow.js"/>
</map:flow>
<!-- =========================== Views =================================== -->
<map:views>
<map:view name="content" from-label="content">
<map:serialize type="xml"/>
</map:view>
<map:view from-label="content" name="pretty-content">
<map:transform src="context://stylesheets/system/xml2html.xslt"/>
<map:serialize type="html"/>
</map:view>
</map:views>
<!-- =========================== Pipelines ================================= -->
<map:pipelines>
<map:component-configurations>
<global-variables>
<namespace>cocoon</namespace>
<base>/samples/slide</base>
</global-variables>
</map:component-configurations>
<map:pipeline internal-only="false" type="noncaching">
<map:match pattern="screens/*/**">
<map:call function="screen_{1}">
<map:parameter name="path" value="{2}" />
</map:call>
</map:match>
<map:match pattern="screens/*.jx">
<map:generate type="jx" src="screens/{1}.jx" />
<map:serialize type="xml" />
</map:match>
<map:match pattern="screens/login.html">
<map:generate type="jx" src="screens/login.jx"/>
<map:transform src="context://samples/common/style/xsl/html/complex-page2html.xsl">
<map:parameter name="contextPath" value="{request:contextPath}"/>
</map:transform>
<map:serialize/>
</map:match>
</map:pipeline>
<map:pipeline internal-only="true" type="noncaching">
<!-- ========== general description ========== -->
<map:match pattern="description/**">
<map:generate type="traverse" src="slide://{session-attr:slide-principal}@{global:namespace}/{1}">
<map:parameter name="properties" value="true"/>
<map:parameter name="permissions" value="false"/>
<map:parameter name="locks" value="false"/>
<map:parameter name="version" value="false"/>
<map:parameter name="depth" value="1"/>
</map:generate>
<map:serialize type="xml"/>
</map:match>
<!-- ============= content ================== -->
<map:match pattern="content/**">
<map:aggregate element="document" label="content">
<map:part src="cocoon:/description/{1}" />
</map:aggregate>
<map:transform src="styles/content2html.xsl">
<map:parameter name="base" value="{request:contextPath}{global:base}"/>
<map:parameter name="path" value="{1}" />
<map:parameter name="namespace" value="{global:namespace}" />
<map:parameter name="principal" value="{session-attr:slide-principal}"/>
</map:transform>
<map:transform src="context://samples/common/style/xsl/html/complex-page2html.xsl">
<map:parameter name="base" value="{global:base}"/>
<map:parameter name="contextPath" value="{request:contextPath}"/>
</map:transform>
<map:serialize type="html"/>
</map:match>
<!-- ============= properties =============== -->
<map:match pattern="properties/**">
<map:aggregate element="document" label="content">
<map:part src="cocoon:/description/{1}" />
</map:aggregate>
<map:transform src="styles/properties2html.xsl">
<map:parameter name="base" value="{request:contextPath}{global:base}"/>
<map:parameter name="path" value="{1}" />
</map:transform>
<map:transform src="context://samples/common/style/xsl/html/complex-page2html.xsl">
<map:parameter name="contextPath" value="{request:contextPath}"/>
</map:transform>
<map:serialize type="html"/>
</map:match>
<!-- ============= permissions ============== -->
<map:match pattern="permissions/**">
<map:aggregate element="document" label="content">
<map:part src="cocoon:/screens/permissions/{1}" />
<map:part src="cocoon:/screens/privileges/{1}" />
<map:part src="cocoon:/screens/users/{1}" />
<map:part src="cocoon:/screens/roles/{1}" />
<map:part src="cocoon:/description/{1}" />
</map:aggregate>
<map:transform src="styles/permissions2html.xsl">
<map:parameter name="base" value="{request:contextPath}{global:base}"/>
<map:parameter name="path" value="{1}" />
<map:parameter name="userspath" value="{slide-config:/userspath}" />
<map:parameter name="rolespath" value="{slide-config:/rolespath}" />
<map:parameter name="actionspath" value="{slide-config:/actionspath}" />
</map:transform>
<map:transform src="context://samples/common/style/xsl/html/complex-page2html.xsl">
<map:parameter name="contextPath" value="{request:contextPath}"/>
</map:transform>
<map:serialize type="html"/>
</map:match>
<!-- ============= locks ==================== -->
<map:match pattern="locks/**">
<map:aggregate element="document" label="content">
<map:part src="cocoon:/screens/locks/{1}" />
<map:part src="cocoon:/description/{1}" />
</map:aggregate>
<map:transform src="styles/locks2html.xsl">
<map:parameter name="base" value="{request:contextPath}{global:base}"/>
<map:parameter name="path" value="{1}" />
</map:transform>
<map:transform src="context://samples/common/style/xsl/html/complex-page2html.xsl">
<map:parameter name="contextPath" value="{request:contextPath}"/>
</map:transform>
<map:serialize type="html"/>
</map:match>
<!-- ============= users ==================== -->
<map:match pattern="users">
<map:aggregate element="document" label="content">
<map:part src="cocoon:/screens/users/"/>
<map:part src="cocoon:/screens/roles/" />
</map:aggregate>
<map:transform src="styles/users2html.xsl">
<map:parameter name="base" value="{request:contextPath}{global:base}"/>
<map:parameter name="userspath" value="{slide-config:/userspath}" />
<map:parameter name="rolespath" value="{slide-config:/rolespath}" />
</map:transform>
<map:transform src="context://samples/common/style/xsl/html/complex-page2html.xsl">
<map:parameter name="contextPath" value="{request:contextPath}"/>
</map:transform>
<map:serialize type="html"/>
</map:match>
<!-- catch unmatched sendpage -->
<map:match pattern="**">
<map:read src="none" status-code="404" />
</map:match>
</map:pipeline>
<map:pipeline type="noncaching">
<map:match pattern="">
<map:redirect-to uri="content/"/>
</map:match>
<map:match pattern="**.cont">
<map:call continuation="{request-param:continuationId}" />
</map:match>
<map:match pattern="logout">
<map:call function="logout"/>
</map:match>
<map:match pattern="**">
<map:call function="protect">
<map:parameter name="path" value="{1}" />
</map:call>
</map:match>
</map:pipeline>
</map:pipelines>
</map:sitemap>