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 | 
logger
Log instance for this class. | 
static int | 
REGISTRATION_FAIL_ON_EXISTING
Deprecated. 
 
since Spring 3.2, in favor of  
RegistrationPolicy.FAIL_ON_EXISTING | 
static int | 
REGISTRATION_IGNORE_EXISTING
Deprecated. 
 
since Spring 3.2, in favor of  
RegistrationPolicy.IGNORE_EXISTING | 
static int | 
REGISTRATION_REPLACE_EXISTING
Deprecated. 
 
since Spring 3.2, in favor of  
RegistrationPolicy.REPLACE_EXISTING | 
protected MBeanServer | 
server
The  
MBeanServer instance 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  
ObjectNames of all registered beans. | 
MBeanServer | 
getServer()
Return the  
MBeanServer that 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 | 
setRegistrationBehavior(int registrationBehavior)
Deprecated. 
 
since Spring 3.2, in favor of  
setRegistrationPolicy(RegistrationPolicy) | 
void | 
setRegistrationBehaviorName(String registrationBehavior)
Deprecated. 
 
since Spring 3.2, in favor of  
setRegistrationPolicy(RegistrationPolicy) | 
void | 
setRegistrationPolicy(RegistrationPolicy registrationPolicy)
The policy to use when attempting to register an MBean
 under an  
ObjectName that already exists. | 
void | 
setServer(MBeanServer server)
Specify the  
MBeanServer instance with which all beans should
 be registered. | 
protected void | 
unregisterBeans()
Unregisters all beans that have been registered by an instance of this class. 
 | 
@Deprecated public static final int REGISTRATION_FAIL_ON_EXISTING
RegistrationPolicy.FAIL_ON_EXISTINGThis is the default registration behavior.
@Deprecated public static final int REGISTRATION_IGNORE_EXISTING
RegistrationPolicy.IGNORE_EXISTING@Deprecated public static final int REGISTRATION_REPLACE_EXISTING
RegistrationPolicy.REPLACE_EXISTINGprotected final Log logger
Log instance for this class.protected MBeanServer server
MBeanServer instance being used to register beans.public void setServer(MBeanServer server)
MBeanServer instance with which all beans should
 be registered. The MBeanExporter will attempt to locate an
 existing MBeanServer if none is supplied.public final MBeanServer getServer()
MBeanServer that the beans will be registered with.@Deprecated public void setRegistrationBehaviorName(String registrationBehavior)
setRegistrationPolicy(RegistrationPolicy)@Deprecated public void setRegistrationBehavior(int registrationBehavior)
setRegistrationPolicy(RegistrationPolicy)ObjectName that already exists.
 Default is REGISTRATION_FAIL_ON_EXISTING.
public void setRegistrationPolicy(RegistrationPolicy registrationPolicy)
ObjectName that already exists.registrationPolicy - the policy to useprotected void doRegister(Object mbean, ObjectName objectName) throws JMException
setRegistrationBehavior(int)
 and setRegistrationBehaviorName(String) methods.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