类 MBeanRegistrationSupport
- java.lang.Object
- org.springframework.jmx.support.MBeanRegistrationSupport
public class MBeanRegistrationSupport extends Object
Provides supporting infrastructure for registering MBeans with anMBeanServer. The behavior when encountering an existing MBean at a givenObjectNameis 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)andonUnregister(ObjectName)methods respectively.By default, the registration process will fail if attempting to register an MBean using a
ObjectNamethat is already used.By setting the
registrationPolicyproperty toRegistrationPolicy.IGNORE_EXISTINGthe 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 sharedMBeanServer.Setting
registrationPolicyproperty toRegistrationPolicy.REPLACE_EXISTINGwill cause existing MBeans to be replaced during registration if necessary. This is useful in situations where you can't guarantee the state of yourMBeanServer.- 从以下版本开始:
- 2.0
- 作者:
- Rob Harrop, Juergen Hoeller, Phillip Webb
- 另请参阅:
setServer(javax.management.MBeanServer),setRegistrationPolicy(org.springframework.jmx.support.RegistrationPolicy),MBeanExporter
字段概要
字段 修饰符和类型 字段 说明 protected LogloggerLoginstance for this class.protected MBeanServerserverTheMBeanServerinstance being used to register beans.
构造器概要
构造器 构造器 说明 MBeanRegistrationSupport()
方法概要
所有方法 实例方法 具体方法 修饰符和类型 方法 说明 protected voiddoRegister(Object mbean, ObjectName objectName)Actually register the MBean with the server.protected voiddoUnregister(ObjectName objectName)Actually unregister the specified MBean from the server.protected ObjectName[]getRegisteredObjectNames()Return theObjectNamesof all registered beans.MBeanServergetServer()Return theMBeanServerthat the beans will be registered with.protected voidonRegister(ObjectName objectName)Called when an MBean is registered under the givenObjectName.protected voidonRegister(ObjectName objectName, Object mbean)Called when an MBean is registered under the givenObjectName.protected voidonUnregister(ObjectName objectName)Called when an MBean is unregistered under the givenObjectName.voidsetRegistrationPolicy(RegistrationPolicy registrationPolicy)The policy to use when attempting to register an MBean under anObjectNamethat already exists.voidsetServer(MBeanServer server)Specify theMBeanServerinstance with which all beans should be registered.protected voidunregisterBeans()Unregisters all beans that have been registered by an instance of this class.
字段详细资料
server
@Nullable protected MBeanServer server
TheMBeanServerinstance being used to register beans.
构造器详细资料
MBeanRegistrationSupport
public MBeanRegistrationSupport()
方法详细资料
setServer
public void setServer(@Nullable MBeanServer server)
Specify theMBeanServerinstance with which all beans should be registered. TheMBeanExporterwill attempt to locate an existingMBeanServerif none is supplied.
getServer
@Nullable public final MBeanServer getServer()
Return theMBeanServerthat the beans will be registered with.
setRegistrationPolicy
public void setRegistrationPolicy(RegistrationPolicy registrationPolicy)
The policy to use when attempting to register an MBean under anObjectNamethat already exists.- 参数:
registrationPolicy- the policy to use- 从以下版本开始:
- 3.2
doRegister
protected void doRegister(Object mbean, ObjectName objectName) throws JMException
Actually register the MBean with the server. The behavior when encountering an existing MBean can be configured usingsetRegistrationPolicy(org.springframework.jmx.support.RegistrationPolicy).- 参数:
mbean- the MBean instanceobjectName- the suggested ObjectName for the MBean- 抛出:
JMException- if the registration failed
unregisterBeans
protected void unregisterBeans()
Unregisters all beans that have been registered by an instance of this class.
doUnregister
protected void doUnregister(ObjectName objectName)
Actually unregister the specified MBean from the server.- 参数:
objectName- the suggested ObjectName for the MBean
getRegisteredObjectNames
protected final ObjectName[] getRegisteredObjectNames()
Return theObjectNamesof all registered beans.
onRegister
protected void onRegister(ObjectName objectName, Object mbean)
Called when an MBean is registered under the givenObjectName. Allows subclasses to perform additional processing when an MBean is registered.The default implementation delegates to
onRegister(ObjectName).- 参数:
objectName- the actualObjectNamethat the MBean was registered withmbean- the registered MBean instance
onRegister
protected void onRegister(ObjectName objectName)
Called when an MBean is registered under the givenObjectName. Allows subclasses to perform additional processing when an MBean is registered.The default implementation is empty. Can be overridden in subclasses.
- 参数:
objectName- the actualObjectNamethat the MBean was registered with
onUnregister
protected void onUnregister(ObjectName objectName)
Called when an MBean is unregistered under the givenObjectName. Allows subclasses to perform additional processing when an MBean is unregistered.The default implementation is empty. Can be overridden in subclasses.
- 参数:
objectName- theObjectNamethat the MBean was registered with