You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@cocoon.apache.org by Bart Guijt <b....@chello.nl> on 2003/02/28 08:25:11 UTC

Samples proposal

Hello all,

I am very grateful for the simplification of the Cocoon build process. I think this triggers new ideas for Cocoon and the build proces in particular. The latter is this posting about.
Stefano: How are you doing on the samples? Recently you indicated (http://marc.theaimsgroup.com/?l=xml-cocoon-dev&m=104583891315429&w=4 and http://marc.theaimsgroup.com/?l=xml-cocoon-dev&m=104609471513702&w=4) that samples are going to be heavily refactored - any RT popped up since then?

I hope this doen't interfere your ideas, so f you don't mind I'd like to propose the following:

1) Refactor the project-info.xml to split in several files contained in the blocks themselves.
Just like Eclipse plugin.xml files in their plugins, a plugin is installed by just dropping it in the plugins dir. Usecase: This will make it easy for me to maintain my JavadocSource block (or any (external) block for that matter), now I need to sync each time when project-info.xml changes ;-)

2) Have each sample have its own block, which depends on the block(s) declaring the components they need.
IIRC the infrastructure to support this is already there. Usecase: The XMLForm sample(s) use the databases block, XMLForm block and the Mail block. Having the XMLForm block depend on the Mail block is silly, of course.

3) Instead of exclude-block-xxx properties, use the include-block-xxx properties in file blocks.properties (or accept both - just like Ant's <fileset> include/exclude attributes).
Let the build process figure out what the dependencies between blocks are. Usecase: If I need to test a certain block, I don't want to set each exclude-property to true, while hoping not to forget anything.

IMHO this covers all that is necessary to reliably include samples. The build process can be as easy as specifying the blocks (including samples) you need, while it figures out which other blocks need to be built.

Again, I don't want to interfere with your own ideas, I just thought this proposal would do it because it is simple, most necessary infrastructure is already there and I'd like to build my JavadocSource stuff again ;-)

so... fire at will!

Ciao,

Bart Guijt