Vadim Gritsenko wrote:
Sylvain Wallez wrote:
Daniel Fagerstrom wrote:
<snip/>
What about either:
- leave them in <map:components> but with special element names, e.g. <map:virtual-generator> that maps to the VirtualPipelineGenerator class
It can be <map:components> <map:generators> <map:virtual name="a">
That's enough information to build it.
- or separate them in a <map:virtual-components> section just as we have today <map:resources> and <map:views>?
What would happen with default component? If we go this route,
... </map:components>
<map:virtual> <map:transformers default="???"> <map:transformer name="a"> ... </map:transformer> </map:transformers> </map:virtual>
What will be in place of "???", and how this would relate to the default transformer in the map:components section?
I would favor the second solution, even if this doesn't seem to be absolutely necessary for the implementation.
I'd prefer first solution, which lacks the problem of default components.
Agree.
<snip/>
VPCs are not cacheable yet. Its probably not that hard to add caching, but it requires that we extend the ProcessingPipeline interface with some methods that are needed for VPCs. It also requires that we find some syntax for declaring what pipeline type that should be used for a specific VPC.
Not sure that this is desired.
Which of it?
We should have configurable caching, with following levels of caching:
* No Caching: Returns null key * Caching: Returns pipeline key, validity * Caching, with private cache: Same as above, plus caches output of the pipeline locally (same as caching pipeline).
Any suggestions about where we should configure the caching and how to implement it?
I would prefer merging the functionality in the AbstractProcessingPipeline and the VirtualProcessingPipeline to reduce code duplication and to be able to reuse the already implemented caching pipeline.
/Daniel
