Package org.apache.zookeeper.jmx
Class MBeanRegistry
- java.lang.Object
- 
- org.apache.zookeeper.jmx.MBeanRegistry
 
- 
 public class MBeanRegistry extends Object This class provides a unified interface for registering/unregistering of zookeeper MBeans with the platform MBean server. It builds a hierarchy of MBeans where each MBean represented by a filesystem-like path. Eventually, this hierarchy will be stored in the zookeeper data tree instance as a virtual data tree.
- 
- 
Constructor SummaryConstructors Constructor Description MBeanRegistry()
 - 
Method SummaryAll Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description static MBeanRegistrygetInstance()MBeanServergetPlatformMBeanServer()Return the underlying MBeanServer that is being used to register MBean's.Set<ZKMBeanInfo>getRegisteredBeans()StringmakeFullPath(String prefix, String... name)Generate a filesystem-like path.protected StringmakeFullPath(String prefix, ZKMBeanInfo bean)protected ObjectNamemakeObjectName(String path, ZKMBeanInfo bean)Builds an MBean path and creates an ObjectName instance using the path.voidregister(ZKMBeanInfo bean, ZKMBeanInfo parent)Registers a new MBean with the platform MBean server.static voidsetInstance(MBeanRegistry instance)Useful for unit tests.voidunregister(ZKMBeanInfo bean)Unregister MBean.
 
- 
- 
- 
Field Detail- 
DOMAINpublic static final String DOMAIN - See Also:
- Constant Field Values
 
 
- 
 - 
Method Detail- 
setInstancepublic static void setInstance(MBeanRegistry instance) Useful for unit tests. Change the MBeanRegistry instance- Parameters:
- instance- new instance
 
 - 
getInstancepublic static MBeanRegistry getInstance() 
 - 
getPlatformMBeanServerpublic MBeanServer getPlatformMBeanServer() Return the underlying MBeanServer that is being used to register MBean's. The returned MBeanServer may be a new empty MBeanServer if running through IKVM.
 - 
registerpublic void register(ZKMBeanInfo bean, ZKMBeanInfo parent) throws JMException Registers a new MBean with the platform MBean server.- Parameters:
- bean- the bean being registered
- parent- if not null, the new bean will be registered as a child node of this parent.
- Throws:
- JMException
 
 - 
getRegisteredBeanspublic Set<ZKMBeanInfo> getRegisteredBeans() - Returns:
- a Collectionwith theZKMBeanInfoinstances not unregistered. Mainly for testing purposes.
 
 - 
unregisterpublic void unregister(ZKMBeanInfo bean) Unregister MBean.- Parameters:
- bean-
 
 - 
makeFullPathpublic String makeFullPath(String prefix, String... name) Generate a filesystem-like path.- Parameters:
- prefix- path prefix
- name- path elements
- Returns:
- absolute path
 
 - 
makeFullPathprotected String makeFullPath(String prefix, ZKMBeanInfo bean) 
 - 
makeObjectNameprotected ObjectName makeObjectName(String path, ZKMBeanInfo bean) throws MalformedObjectNameException Builds an MBean path and creates an ObjectName instance using the path.- Parameters:
- path- MBean path
- bean- the MBean instance
- Returns:
- ObjectName to be registered with the platform MBean server
- Throws:
- MalformedObjectNameException
 
 
- 
 
-