Hi,
I have been familiarizing myself with the JBoss 3.2.3 JMX implementation.
I came across the following code in the RelationService.purgeRelations() method (around line #820) where there is a call to <server.invoke> which requests that the #handleMBeanUnregistration method be called
i.e.
...
// It's ok tell the relation about the unregistration
server.invoke(objectName,
"handleMBeanUnregistration",
new Object[] { mbean, roleName },
new String[] { "java.lang.String", "java.lang.String "} );
...
The "signature" arguments describe two "java.lang.String" parameters however the parameter is a "javax.management.ObjectName".
When running through this code using the test case the instances names a RelationSupportMBean which extends the Relation interface.
Thus I am making the assumption that the intention is to invoke #handleMBeanUnregistration(...) on a RelationSupportMBean instance (at runtime an Exception is thrown, caught and re-thrown as a RuntimeException).
In the Relation interface the #handleMBeanUnregistration(...) method signature is:
#handleMBeanUnregistration(ObjectName objectName,
String roleName);
I have been unable to locate an implementation of #handleMBeanUnregistration(...) which accept two String instances.
Can anyone help clarify the intention of this code segement and its correctness ?
Cheers,
sinclair
panacya inc.,