You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@geronimo.apache.org by gianny DAMOUR <gi...@hotmail.com> on 2003/08/26 14:42:59 UTC
Component; Container; Interceptor; and ManageableObject.
Hello,
I have submitted a patch, GERONIMO 14, suggesting that AbstractComponent
should extend AbstractManagedObject and not AbstractStateManageable.
According to me, the type inheritance has not been impacted when
AbstractStateManageable has been pulled up (AbstractStateManageable ->
AbstractManageableObject).
If it is fine for you, could you please commit it, as I would like to submit
a patch containing the following updates:
1. declararation as final of the AbstractContainer.addComponent and
AbstractContainer.removeComponent methods (some hooks will be provided to
sub-classes). Indeed, these methods are crucial and it should be great to
define them as final.
FYI, AbstractRPCContainer was overriding these methods and I do not think
that it should. Moreover, it does not call super.addComponent() which could
have been a quick fix.
2. remove from the Component interface the getObjectName method and clean
the AbstractComponent class.
3. declare as protected AbstractManageable.doNotification and impact
accordingly AbstractComponent (I think)
4. impact AbstractRPCContainer based on the fact that addComponent is final
and that a specific hook must be overridden instead.
Moreover, there is something rather strange in addComponent of
AbstractRPCContainer:
[...]
if (component instanceof Interceptor) {
addInterceptor((Interceptor) component);
return;
}
[...]
It implies that a component can be an Interceptor or conversely. Is it
right?
Cheers,
Gianny
_________________________________________________________________
MSN 8: Get 6 months for $9.95/month http://join.msn.com/?page=dept/dialup