public class MBeanRegistryImpl extends java.lang.Object implements MBeanRegistry, org.apache.hivemind.events.RegistryShutdownListener
MBeanRegistry
. Registers MBeans in an standard JMX MBeanServer Supports
calling start methods, after the registration. MBeans can be provided as service references in a
configuration. Standard MBeans must use the primitive service model. Any interceptor destroys JMX
compliance due to naming conventions. Implements shutdown listener to unregisters all MBeans when
the registry is shutdownConstructor and Description |
---|
MBeanRegistryImpl(org.apache.hivemind.ErrorHandler errorHandler,
org.apache.commons.logging.Log log,
javax.management.MBeanServer beanServer,
ObjectNameBuilder objectNameBuilder,
java.util.List beans)
Creates new instance Registers all MBeans as defined in
beans |
Modifier and Type | Method and Description |
---|---|
javax.management.ObjectInstance |
registerMBean(java.lang.Object obj,
java.lang.Class managementInterface,
javax.management.ObjectName objectName)
Registers a MBean in the MBeanServer
|
void |
registryDidShutdown()
Unregisters all registered MBeans
|
void |
unregisterMBean(javax.management.ObjectName objectName)
Unregisters a MBean from the MBeanServer
|
public MBeanRegistryImpl(org.apache.hivemind.ErrorHandler errorHandler, org.apache.commons.logging.Log log, javax.management.MBeanServer beanServer, ObjectNameBuilder objectNameBuilder, java.util.List beans)
beans
objectNameBuilder
- Service responsible for naming MBeansbeans
- List with instances of MBeanRegistrationContribution
. The specified
services get registered as MBeanspublic javax.management.ObjectInstance registerMBean(java.lang.Object obj, java.lang.Class managementInterface, javax.management.ObjectName objectName) throws javax.management.InstanceAlreadyExistsException, javax.management.MBeanRegistrationException, javax.management.NotCompliantMBeanException
MBeanRegistry
registerMBean
in interface MBeanRegistry
obj
- the MBeanmanagementInterface
- The ManagementInterface if obj is a Standard MBean Can be null, if obj implements
DynamicMBeanobjectName
- ObjectName of the MBeanjavax.management.InstanceAlreadyExistsException
javax.management.MBeanRegistrationException
javax.management.NotCompliantMBeanException
MBeanRegistry.registerMBean(Object, Class, ObjectName)
public void unregisterMBean(javax.management.ObjectName objectName) throws javax.management.InstanceNotFoundException, javax.management.MBeanRegistrationException
MBeanRegistry
unregisterMBean
in interface MBeanRegistry
objectName
- ObjectName of the MBeanjavax.management.InstanceNotFoundException
javax.management.MBeanRegistrationException
MBeanRegistry.unregisterMBean(javax.management.ObjectName)
public void registryDidShutdown()
registryDidShutdown
in interface org.apache.hivemind.events.RegistryShutdownListener