On 08.Oct.2002 -- 10:34 PM, Jeff Turner wrote: > On Tue, Oct 08, 2002 at 11:54:47AM +0200, Christian Haul wrote: > > On 08.Oct.2002 -- 01:34 PM, Piroumian Konstantin wrote: > ... > > > > > I imagine this a little different, e.g.: > > > > > > > > > > <component-instance > > > > > class="org.apache.cocoon.components.modules.input.SkinModule" > > > > > logger="core.modules.input" name="skin"> > > > > > <input-module name="request-param"/> > > > > > <input-module name="skin-defaults"/> > > > > > </component-instance> > > > > > > > > Oo.. that's a good idea. Say we've got all these modules > > > > floating about loose, and then we have a 'glue' module that > > > > can stick together a bunch of them. > > > > > > Exactly this I've been trying to say all this time. Seems that it's time to > > > went to some English courses ;) > > > > May I add myself to this list ;-) > > > > Only that in my imagination this would be called > > e.g. "ChainingMetaModule" and the user would call this particular > > instance "skin" > > Yes. > > So to elaborate on Konstantin's example above, would we split > DefaultMetaModule into a DefaultsModule and ChainingMetaModule? Eg, go > from: > > <component-instance class="...DefaultsMetaModule" name="defaults"> > <input-module name="request-param"/> > <values> > <skin>defaultSkin</skin> > <base-url>http://localhost:8080/cocoon</base-url> > </values> > </component-instance> > > to: > > <component-instance class="...DefaultsModule" name="defaults"> > <values> > <skin>defaultSkin</skin> > <base-url>http://localhost:8080/cocoon</base-url> > </values> > </component-instance> > > <component-instance class="...ChainingMetaModule" name="skin"> > <input-module name="request-param"/> > <input-module name="defaults"/> > </component-instance>
Yes!! > I think that's really great :) It nicely separates the two concerns. It's > dead simple in concept and implementation. It's (AFAICT) powerful enough > to meet all use-cases. Best of all, module implementors (XMLModule in my > case) don't need to worry about chaining. Eg, for Forrest we can have: > > <component-instance class="...ChainingMetaModule" name="skin"> > <input-module name="request-param"/> > <input-module name="forrestconf"/> > <input-module name="defaults"/> > </component-instance> > > <component-instance class="...XMLModule" name="forrestconf"> > <config>resource:///forrestconf.xml</config> > </component-instance> > > > Any downsides? > > Big +1 +1 (of course :-) Chris. -- C h r i s t i a n H a u l [EMAIL PROTECTED] fingerprint: 99B0 1D9D 7919 644A 4837 7D73 FEF9 6856 335A 9E08 --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, email: [EMAIL PROTECTED]