Leo Simons wrote:
> Following lots of discussion with regard to this change on james-dev
> currently going on, I feel I need to -1 this change until at least the
> next major release for Cornerstone (ie until 5.0), as it breaks backward
> compatibility.
>
> Rationale
> ---------
> Some projects (ie JAMES) expose the ComponentManager interface, and
> hence the Component interface, as part of their API, while also
> depending on some of the cornerstone components and exposing these
> through the ComponentManager by contract. Hence, removing Component and
> ComponentManager from Cornerstone means that this client API breaks.
>
> We should be supportive of our fellow developers at JAMES -- and any
> other projects with a similar concern -- and give them the time to
> handle this issue gracefully.
>
> We should, however, formally deprecate the pieces in Cornerstone that
> depend on the Component (& friends) interfaces, and indicate that they
> will move to ServiceManager in the future, if we still want to continue
> with this change.
>
>
> Impact
> ------
> This means that containers that want to be able to host the Cornerstone
> components (ie Phoenix, Merlin) need to keep supporting
> Component/Composable and friends. This is a good thing =)
Please note that the Container package now contains a Legacy subpackage
which you can use to wrap any ServiceManager with a
LegacyComponentManager. The LegacyComponentManager ensures that all
components are accessible by generating a Proxy object that implements
the role interface and the Component interface. You can even expose
a ServiceManager when the parent only has a ComponentManager. There
are testcases to verify it works. The ECM was retrofitted with it
because someone removed the Component interface from Monitor
implementations. It works well.
--
"They that give up essential liberty to obtain a little temporary safety
deserve neither liberty nor safety."
- Benjamin Franklin
--
To unsubscribe, e-mail: <mailto:[EMAIL PROTECTED]>
For additional commands, e-mail: <mailto:[EMAIL PROTECTED]>