Jacek Laskowski wrote:

Hey,

I don't fully understand what's in Geronimo pertaining to SMOs.

o.a.g.kernel.management.StateManageable is marked with the following comment:

//
// This source code implements specifications defined by the Java
// Community Process. In order to remain compliant with the specification
// DO NOT add / change / or delete method signatures!
//

So, if it's a part of JCP process why it's not in specs/j2ee-management directory. On the other hand, why should it be in that directory? That's another issue, I can't find the SMO class in the spec. There's a chapter about it in J2EE Management 1.0 spec, but no javadoc about the class in J2EE 1.4 javadoc.


JSR77 defines a management API that can be used from any language not just Java. It therefore defines attributes and operations in generic, language neutral terms and does not define classes or interfaces; for example, although it calls things OBJECT_NAME, they are formatted Strings and not javax.management.ObjectName


The attributes an object must provide are defined by the spec, hence the comment I believe. However, unlike a rigid definition vendors are allowed to add additional attributes.

For StateManagable, we now implement that with GBeans with the GBeanMBean wrapper providing the API. The wrapper exposes all the attributes and operations from StateManageable on behalf of the underlying GBean so the bean implementation does not need to worry about it.

Having these interfaces is probably not needed any more and perhaps we should start getting rid of them.

--
Jeremy

Reply via email to