Re: [Avalon4:PROPOSAL] Context Consensus (version 2)
Stephen McConnell <[email protected]>
| Newsgroups | gmane.comp.jakarta.avalon.apps.devel,gmane.comp.jakarta.avalon.devel |
|---|---|
| Message-ID | <[email protected]> |
Paul Hammant wrote: > Stephen, Leo, > >> [...] A Context contract is >> defined by (1) an optional target class, >> [...] >> A container shall ensure that a context object supplied >> to a component shall be castable to a target class or >> interface (T). The default target class is Context. A >> target class must be derived from or implement the >> Context interface. > > > I'm unhappy with anything other than a base interface (Context) or > specialised interfaces (e.g. BlockContext) being used to descibe > parameter0 of contextualize for the IS-A proposition. Why? K/HC/CAPI > separation; separation of interface and impl etc. As an advocate of > the BlockContext (and alike) solution I have no requirement for things > like GenericBlockContext (it was a class not an interface). I agree - it was something that was bugging me about the summary. I would prefer that the value of "type" on a <context> element be restricted to an interface derived from Context. Things like "GenericBlockContext" could appear as part of a creation directive (meta-data), but that has nothing to do with the context criteria expressed by a component towards the container and is not relevant to the Context interface specification. Cheers, Steve. -- Stephen J. McConnell OSM SARL digital products for a global economy mailto:[email protected] http://www.osm.net