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
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.