RequestParameter-Selector in Cocoon (2.1 legacy document)
RequestParameterSelector
| NAME | request-parameter |
| WHAT | The RequestParameterSelector component is used to select appropriate sitemap processing depending on a request parameter value. |
| TYPE | Selector, Sitemap Component |
| BLOCK | Core |
| CLASS | org.apache.cocoon.selection.RequestParameterSelector |
| SINCE | Cocoon 2.0 |
| CACHEABLE | not applicable |
Description
The RequestParameterSelector tests the value of request parameter against the test attribute of the selector's when clause.
Usage
The RequestParameterSelector allows to control the sitemap processing depending on a request parameter.
Sitemap pipeline examples
The snippet below uses a RequestParameterSelector named request-parameter. It tests the value of request parameter named command against list, create; finally it has a otherwise clause.
<map:select type="request-parameter">
<map:parameter name="parameter-name" value="command"/>
<map:when test="list">
....
</map:when>
<map:when test="create">
...
</map:when>
...
<map:otherwise>
...
</map:otherwise>
</map:select>
Sitemap component configuration example
The snippet below declares a RequestParameterSelector defining to use the request parameter command.
<map:selectors...
<map:selector name="request-parameter"
src="org.apache.cocoon.selection.RequestParameterSelector"
logger="sitemap.selector.requestparameter">
<parameter-name>command</parameter-name>
</map:selectors>
...
Configuration
The configuration section of RequestParameterSelector specifies the default name of the request parameter, used for testing.
Setup
Setting up a RequestParameterSelector includes
- Defining an optional sitemap parameter named request-name, it overrides the parameter-name setting in the configuration section.
- choosing the <map:when> test expressions, and a optional <map:otherwise> clause.
The test attribute of the <map:when> clause shall match the value of the request parameter. If no test value matches, or the request parameter is not defined at all, the <map:otherwise clause is selected.
Effect on Object Model and Sitemap Parameters
The RequestParameterSelector has no side effects on the object model, or any sitemap parameters.
Bugs/Caveats
History
28-12-02: initial creation
See also
A general documentation about selectors is available at Matchers and Selectors.


