Carsten Ziegeler wrote:
Great work, Sylvain.
Thanks. Hard job as there were explicit dependencies to extensions of ComponentSelector (SitemapComponentSelector and OutputComponentSelector) in many places.
These extensions were actually used only to store information internal to the sitemap (components mime-types and labels), so I handled this internally (see ProcessorComponentInfo) which allowed the removal of these extensions.
There still is an ugly hack in ComponentsSelector to manage the parent/child chaining since WrapperServiceSelector and WrapperComponentSelector lack some public access to the wrapped selector. I had no time to locate where is the actual code (is it Avalon or Excalibur) nor start discussions about the patch.
Only one question: you also changed the mime-type setting (again):
http://cvs.apache.org/viewcvs/cocoon-2.1/src/java/org/apache/cocoon/componen ts/pipeline/AbstractProcessingPipeline.java.diff?r1=1.25&r2=1.26
According to bug 10277 and to the votes we did, we only discussed the mime
type of the reader, not the mime-type of the serializer.
Well, how could the mime-type handling be different for reader and serializer?
Additionally, this priorty order seems to me the only one that really makes sense:
- first check on the <map:read> or <map:serialize> statement (most specific setting)
- then check on the <map:reader> or <map:serializer> component declaration (sitemap-wide setting)
- then ask the serializer instance (builtin, system-wide setting)
I also wondered why the pipeline raises a ProcessingException if no mime type exist on the serializer. Shouldn't we let the servlet engine decide?
In addition, it seems that you removed one case for the mime-type setting of the reader.
Sorry, what are you referring to?
Sylvain
-- Sylvain Wallez Anyware Technologies http://www.apache.org/~sylvain http://www.anyware-tech.com { XML, Java, Cocoon, OpenSource }*{ Training, Consulting, Projects }
