模块  java.management
软件包  javax.management

Interface MBeanRegistration

    • 方法详细信息

      • preRegister

        ObjectName preRegister​(MBeanServer server,                       ObjectName name)                throws 异常
        允许MBean在MBean Server中注册之前执行所需的任何操作。 如果未指定MBean的名称,则MBean可以为其注册提供名称。 如果引发任何异常,MBean将不会在MBean Server中注册。
        参数
        server - 将在其中注册MBean的MBean Server。
        name - MBean的对象名称。 如果MBeanServer接口中的createMBeanregisterMBean方法之一的name参数为null,则此名称为null。 在这种情况下,此方法必须为新MBean返回非null ObjectName。
        结果
        要注册MBean的名称。 此值不得为null。 如果name参数不为null,则通常但不一定是返回值。
        异常
        异常 - 此异常将被MBean服务器捕获并重新抛出为MBeanRegistrationException
      • postRegister

        void postRegister​(Boolean registrationDone)
        允许MBean在MBean服务器中注册后或注册失败后执行所需的任何操作。

        如果此方法的实现抛出RuntimeExceptionError ,则MBean Server将分别重新抛出RuntimeMBeanExceptionRuntimeErrorException内的那些。 但是,在postRegister抛出异常不会更改MBean的状态:如果MBean已经注册( registrationDonetrue ),则MBean将保持注册状态。

        对于调用createMBean()registerMBean()的代码,这可能会造成混淆,因为此类代码可能会假定在引发此类异常时MBean注册失败。 因此,如果可以避免,则建议postRegister实现不会抛出运行时异常或错误。

        参数
        registrationDone - 指示MBean是否已在MBean服务器中成功注册。 值false表示注册阶段已失败。
      • preDeregister

        void preDeregister()            throws 异常
        允许MBean在MBean服务器取消注册之前执行所需的任何操作。
        异常
        异常 - 此异常将被MBean服务器捕获并重新抛出为MBeanRegistrationException
      • postDeregister

        void postDeregister()
        允许MBean在MBean服务器中取消注册后执行所需的任何操作。

        如果此方法的实现抛出RuntimeExceptionError ,则MBean Server将分别重新抛出RuntimeMBeanExceptionRuntimeErrorException内的那些。 但是,在postDeregister抛出异常不会更改MBean的状态:MBean已成功取消注册,并将保持不变。

        对于调用unregisterMBean()的代码,这可能会令人困惑,因为它可能会认为MBean注销失败。 因此,如果可以避免,则建议postDeregister实现不会抛出运行时异常或错误。