A ProcessingPipeline produces the response for a given request.
It is assembled according to the commands in the sitemap and can either
Collect a Reader and let it produce a byte stream,
Or connect a Generator with zero or more
Transformers and a Serializer, and let them
produce the byte stream. This pipeline uses SAX events for
communication.
A ProcessingPipeline is Recomposable since the
ComponentManager used to get the generator, transformers, etc.
depends on the pipeline assembly engine where they are defined (i.e. a given
sitemap file).
getKeyForEventPipeline()
Return the key for the event pipeline
If the "event pipeline" (= the complete pipeline without the
serializer) is cacheable and valid, return a key.
getValidityForEventPipeline()
Return valid validity objects for the event pipeline
If the "event pipeline" (= the complete pipeline without the
serializer) is cacheable and valid, return all validity objects.
void
informBranchPoint()
Informs pipeline we have come across a branch point
Release this component.
If you get an instance not by a component manager but for example
by a processor, you have to release this component by calling
this method and NOT by using a component manager!
Set the generator that will be used as the initial step in the pipeline.
The generator role is given : the actual Generator is fetched
from the latest ComponentManager given by compose()
or recompose().
Parameters:
role - the generator role in the component manager.
source - the source where to produce XML from, or null if no
source is given.
Add a transformer at the end of the pipeline.
The transformer role is given : the actual Transformer is fetched
from the latest ComponentManager given by compose()
or recompose().
Parameters:
role - the transformer role in the component manager.
source - the source used to setup the transformer (e.g. XSL file), or
null if no source is given.
Process the given Environment, but do not use the
serializer. Instead the sax events are streamed to the XMLConsumer.
Make sure to call prepareInternal(Environment) beforehand.
Return valid validity objects for the event pipeline
If the "event pipeline" (= the complete pipeline without the
serializer) is cacheable and valid, return all validity objects.
Otherwise return null
Return the key for the event pipeline
If the "event pipeline" (= the complete pipeline without the
serializer) is cacheable and valid, return a key.
Otherwise return null