geronimo-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From James Strachan <>
Subject Re: [General] Container interface and AbstractContainer
Date Thu, 14 Aug 2003 11:21:09 GMT

On Thursday, August 14, 2003, at 11:56  am, Alex Blewitt wrote:

>> Though as soon as I did this something hit me - if you add a 
>> component by itself - and a component doesn't have an ObjectName (at 
>> least on the Component interface today) then how does the Container 
>> know the ObjectNames of the components? i.e. how can we implement the 
>> getComponentNames() method?
> (a) I don't think the getComponentNames() adds anything that you 
> couldn't get yourself from the getComponents()

Its there for JMX agents & GUIs. Its just 1 helper method. (Should 
probably return ObjectName[] as its only real purpose is for JMX agents 

> (b) Is it true that every Component has an ObjectName? I don't think 
> it does (necessarily), and I think this assumption could lead to bad 
> coding ...

Am not sure. Thats why I brought it up. Either it does or we add 
components to a container with an ObjectName. Though I confess to not 
knowing enough of jsr 77 & 88 to make that call.

>> Maybe I've not grokked this code fully yet but either Container needs 
>> a getObjectName() or the addComponent() method should take an 
>> ObjectName right? This is echo-ing Jan's previous comment that 
>> Component should have a method...
> The point of having a separate type for Component is that it should be 
> a component, not an ObjectName.
> If you were writing
> public interface JMXContainer extends Container {
> }
> then you might want to restrict everything having an ObjectName, but 
> that's not necessarily going to be the case.

Remember that this stuff is internal to the container. Any old POJO or 
MBean could be used as a component.


View raw message