- 所有已知的实现类:
-
CounterMonitor
,GaugeMonitor
,JMXConnectorServer
,MLet
,Monitor
,PrivateMLet
,RelationService
,RelationSupport
,RequiredModelMBean
,RMIConnectorServer
,StandardEmitterMBean
,StandardMBean
,StringMonitor
,Timer
public interface MBeanRegistration
可以由MBean实现,以便在注册或从MBean服务器注销之前和之后执行操作。 MBean还可以实现此接口,以便在MBean服务器中获取对MBean服务器及/或其名称的引用。
- 自:
- 1.5
-
Method Summary
Modifier and TypeMethodDescriptionvoid
允许MBean在从MBean服务器注销后执行任何所需操作。void
postRegister
(Boolean registrationDone) 允许MBean在在MBean服务器中注册后或注册失败后执行任何所需操作。void
允许MBean在被MBean服务器注销之前执行任何所需操作。preRegister
(MBeanServer server, ObjectName name) 允许MBean在被MBean服务器注册之前执行任何所需操作。
-
Method Details
-
preRegister
允许MBean在被MBean服务器注册之前执行任何所需操作。如果未指定MBean的名称,则MBean可以为其注册提供一个名称。如果引发任何异常,MBean将不会在MBean服务器中注册。- 参数:
-
server
- MBean将要注册的MBean服务器。 -
name
- MBean的对象名称。如果在MBeanServer
接口的createMBean
或registerMBean
方法之一的名称参数为null,则此名称为null。在这种情况下,此方法必须为新MBean返回一个非null的ObjectName。 - 返回:
-
MBean将要注册的名称。此值不能为空。如果
name
参数不为null,则通常但不一定会是返回的值。 - 抛出:
-
Exception
- 此异常将被MBean服务器捕获并重新抛出为MBeanRegistrationException
。
-
postRegister
允许MBean在在MBean服务器中注册后或注册失败后执行任何所需操作。如果此方法的实现引发
RuntimeException
或Error
,则MBean服务器将在RuntimeMBeanException
或RuntimeErrorException
中重新抛出这些异常。但是,在postRegister
中抛出异常不会更改MBean的状态:如果MBean已经注册(registrationDone
为true
),则MBean将保持注册状态。对于调用
createMBean()
或registerMBean()
的代码可能会感到困惑,因为这样的代码可能会假定当引发此类异常时MBean注册失败。因此,建议postRegister
的实现尽量避免抛出运行时异常或错误。- 参数:
-
registrationDone
- 指示MBean是否已成功在MBean服务器中注册。值为false表示注册阶段失败。
-
preDeregister
允许MBean在被MBean服务器注销之前执行任何所需操作。- 抛出:
-
Exception
- 此异常将被MBean服务器捕获并重新抛出为MBeanRegistrationException
。
-
postDeregister
void postDeregister()允许MBean在从MBean服务器注销后执行任何所需操作。如果此方法的实现引发
RuntimeException
或Error
,则MBean服务器将在RuntimeMBeanException
或RuntimeErrorException
中重新抛出这些异常。但是,在postDeregister
中抛出异常不会更改MBean的状态:MBean已成功注销并将保持注销状态。对于调用
unregisterMBean()
的代码可能会感到困惑,因为它可能会假定MBean注销失败。因此,建议postDeregister
的实现尽量避免抛出运行时异常或错误。
-