Leo Sutic wrote:

> 
>>From: Stephen McConnell [mailto:[EMAIL PROTECTED]]
>>
>>Proposal:
>>
>>   (a) mark the lookup operation as deprecated
>>   (b) add a new method "resolve" that is
>>       functionally equivalent to "lookup" but returns
>>       Object instead of Component
>>
> 
> Breaks compatibility - no implementation of ComponentManager will 
> work unless edited and recompiled.
> 
> 
>>   (c) change the argument type on the release from
>>       Component to Object.
>>
> 
> 
> Since this change will break backwards compatibility, might as well
> do it without adding new methods. Just replace Component with Object
> in the CM interface and release it as 4.2. Everyone must recompile,
> but that should be about it.


Not quite that simple.  Not sure how likely it is, but if someone has 
code like the following, this change will break things:

        Component component = manager.lookup(name);

It would need to be changed to:
        Component component = (Component)manager.lookup(name);

This will probably not be a problem though.  It seems likely that in 
most cases other than avalon classes, the return value is already being 
cast to a specific class.  Something like:

        DataSourceComponent dataSource =
                (DataSourceComponent)manager.lookup(name)

Thoughts?
Leif


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

Reply via email to