public class MBeanRegistrationSupport extends Object
MBeanServer. The behavior when encountering
 an existing MBean at a given ObjectName is fully configurable
 allowing for flexible registration settings.
 All registered MBeans are tracked and can be unregistered by calling
 the #unregisterBeans() method.
 
Sub-classes can receive notifications when an MBean is registered or
 unregistered by overriding the onRegister(ObjectName) and
 onUnregister(ObjectName) methods respectively.
 
By default, the registration process will fail if attempting to
 register an MBean using a ObjectName that is
 already used.
 
By setting the registrationPolicy
 property to RegistrationPolicy.IGNORE_EXISTING the registration process
 will simply ignore existing MBeans leaving them registered. This is useful in settings
 where multiple applications want to share a common MBean in a shared MBeanServer.
 
Setting registrationPolicy property
 to RegistrationPolicy.REPLACE_EXISTING will cause existing MBeans to be replaced
 during registration if necessary. This is useful in situations where you can't guarantee
 the state of your MBeanServer.
setServer(javax.management.MBeanServer), 
setRegistrationPolicy(org.springframework.jmx.support.RegistrationPolicy), 
MBeanExporter| Modifier and Type | Field and Description | 
|---|---|
| protected Log | loggerLoginstance for this class. | 
| protected MBeanServer | serverThe  MBeanServerinstance being used to register beans. | 
| Constructor and Description | 
|---|
| MBeanRegistrationSupport() | 
| Modifier and Type | Method and Description | 
|---|---|
| protected void | doRegister(Object mbean,
          ObjectName objectName)Actually register the MBean with the server. | 
| protected void | doUnregister(ObjectName objectName)Actually unregister the specified MBean from the server. | 
| protected ObjectName[] | getRegisteredObjectNames()Return the  ObjectNamesof all registered beans. | 
| MBeanServer | getServer()Return the  MBeanServerthat the beans will be registered with. | 
| protected void | onRegister(ObjectName objectName)Called when an MBean is registered under the given  ObjectName. | 
| protected void | onRegister(ObjectName objectName,
          Object mbean)Called when an MBean is registered under the given  ObjectName. | 
| protected void | onUnregister(ObjectName objectName)Called when an MBean is unregistered under the given  ObjectName. | 
| void | setRegistrationPolicy(RegistrationPolicy registrationPolicy)The policy to use when attempting to register an MBean
 under an  ObjectNamethat already exists. | 
| void | setServer(MBeanServer server)Specify the  MBeanServerinstance with which all beans should
 be registered. | 
| protected void | unregisterBeans()Unregisters all beans that have been registered by an instance of this class. | 
protected final Log logger
Log instance for this class.@Nullable protected MBeanServer server
MBeanServer instance being used to register beans.public void setServer(@Nullable MBeanServer server)
MBeanServer instance with which all beans should
 be registered. The MBeanExporter will attempt to locate an
 existing MBeanServer if none is supplied.@Nullable public final MBeanServer getServer()
MBeanServer that the beans will be registered with.public void setRegistrationPolicy(RegistrationPolicy registrationPolicy)
ObjectName that already exists.registrationPolicy - the policy to useprotected void doRegister(Object mbean, ObjectName objectName) throws JMException
setRegistrationPolicy(org.springframework.jmx.support.RegistrationPolicy).mbean - the MBean instanceobjectName - the suggested ObjectName for the MBeanJMException - if the registration failedprotected void unregisterBeans()
protected void doUnregister(ObjectName objectName)
objectName - the suggested ObjectName for the MBeanprotected final ObjectName[] getRegisteredObjectNames()
ObjectNames of all registered beans.protected void onRegister(ObjectName objectName, Object mbean)
ObjectName. Allows
 subclasses to perform additional processing when an MBean is registered.
 The default implementation delegates to onRegister(ObjectName).
objectName - the actual ObjectName that the MBean was registered withmbean - the registered MBean instanceprotected void onRegister(ObjectName objectName)
ObjectName. Allows
 subclasses to perform additional processing when an MBean is registered.
 The default implementation is empty. Can be overridden in subclasses.
objectName - the actual ObjectName that the MBean was registered withprotected void onUnregister(ObjectName objectName)
ObjectName. Allows
 subclasses to perform additional processing when an MBean is unregistered.
 The default implementation is empty. Can be overridden in subclasses.
objectName - the ObjectName that the MBean was registered with