Stephen McConnell wrote:

> >Ok, it's clear now: Cocoon should NOT be using Avalon 5 for those
> >components which lookup mechanism's control cannot be completely
> >inverted.
> >
> >Anybody against this?
> >
> >
> 
> What is the impact of the above?

Please, understand I can only state my perceptions, I can only speak as
a cocoon developer, but any other might have a different opinion.

If the next Avalon will not allow Cocoon to request the specific
implementation of a component explicitly, we'll implement such a system
ourselves (or stick with Avalon 4, depending on what the 'avalon market'
does).

> I'm assuming this concerns any
> component that is invoking lookup with a role argument that cannot
> reasonably be expressed as type information (i.e. dependecies, provided
> services, etc).

Exactly.

In theory, it could be possible to pass enough information to the lookup
system in order for it to come up with a transparent constraint crawl,
but given the way Cocoon is designed, it wouldn't work without *major*
changes in the conceptual model.

In fact, the above motion of 'hint-based' lookup gets up to the sitemap

 <generate type="file" src="..."/>

uses 'file' as the hint. It's the equivalent of 

 generator = (Generator) GeneratorManager("file");

plus avalon-lifecycle awareness during creation and resource pooling.

> My impression is that this potentially represents
> something in the order of 20% of Cocoon components.

No, much more. Probably around 80/90%.

> I'm also assuming
> here that the migration path would be something along the lines of the
> componenet requesting a Cocon component repository (for example) and
> doing query based lookups from there.  Am I on the right track here ?

Hmmm, it would make sense if we wanted those component repositories to
be reusable across other avalon implementations, but since this is not
our goal, why bother? Building up our own stuff and controlling it
in-house makes much more sense to me.

Of course, the best thing would be for A5 to resurrect the separation
between 'blocks' and 'components' as I stated previously. That would
solve all problems, but this is a conceptual detail I'm not even going
to try fighting.

So, if it happens, great, if not, at least I tried.

-- 
Stefano Mazzocchi      One must still have chaos in oneself to be
                          able to give birth to a dancing star.
<[EMAIL PROTECTED]>                             Friedrich Nietzsche
--------------------------------------------------------------------


--
To unsubscribe, e-mail:   <mailto:[EMAIL PROTECTED]>
For additional commands, e-mail: <mailto:[EMAIL PROTECTED]>

Reply via email to