Carsten Ziegeler (JIRA) schrieb:
Use generics for pipeline assembly
----------------------------------

                 Key: COCOON3-14
                 URL: https://issues.apache.org/jira/browse/COCOON3-14
             Project: Cocoon 3
          Issue Type: Improvement
          Components: cocoon-pipeline
            Reporter: Carsten Ziegeler
            Assignee: Cocoon Developers Team
         Attachments: generics.patch

This is a simple patch to add generics to the pipeline interface and impl. With 
additionally introducing marker interfaces for the component types (SAX, Stax, 
dom)
this would allow compile time checks if all components have the correct type 
when assembling the pipeline.


Is it just me or is the patch you applied not really complete?

Because doing
Pipeline<SAXPipelineComponent> pipeline = new NonCachingPipeline<SAXPipelineComponent>();
       pipeline.addComponent(new StringGenerator(xmlInput));
pipeline.addComponent(new SchemaProcessorTransformer(this.getClass().getResource("/test.xsd")));
       pipeline.addComponent(new XMLSerializer());

yields a compile error for the last line, because XMLSerializer is not a o.a.c.p.c.s.SAXPipelineComponent.

On the other hand, the class hierarchy of the whole SAX module is rather messy IMO...


Reply via email to