インタフェースMBeanRegistration
- 既知のすべての実装クラス:
CounterMonitor,GaugeMonitor,JMXConnectorServer,Monitor,RelationService,RelationSupport,RequiredModelMBean,RMIConnectorServer,StandardEmitterMBean,StandardMBean,StringMonitor,Timer
MBeanサーバーへの登録またはMBeanサーバーからの登録解除の前後にさまざまなオペレーションを実行するため、MBeanにより実装されます。 MBeanサーバーまたはMBeanサーバー内の名前、あるいはその両方への参照を取得するために、MBeanもこのインタフェースを実装できます。
- 導入されたバージョン:
- 1.5
-
メソッドのサマリー
修飾子と型メソッド説明voidMBeanサーバーから登録解除したあと、MBeanが必要なオペレーションを実行できるようにします。voidpostRegister(Boolean registrationDone) MBeanサーバーへの登録が成功または失敗したあと、MBeanが必要なオペレーションを実行できるようにします。voidMBeanサーバーから登録解除する前に、MBeanが必要なオペレーションを実行できるようにします。preRegister(MBeanServer server, ObjectName name) MBeanサーバーに登録する前に必要なオペレーションをMBeanが実行することを許可します。
-
メソッドの詳細
-
preRegister
MBeanサーバーに登録する前に必要なオペレーションをMBeanが実行することを許可します。 MBeanの名前を指定しないと、MBeanにより、登録用の名前が提供されます。 例外がスローされた場合、MBeanはMBeanサーバーに登録されません。- パラメータ:
server- MBeanサーバー。MBeanはここに登録される。name- MBeanのオブジェクト名。MBeanServerインタフェース内のcreateMBeanまたはregisterMBeanメソッドのnameパラメータがnullの場合、この名前もnullになる。 この場合、このメソッドは、新しいMBean用にnull以外のObjectNameを必ず返す。- 戻り値:
- MBeanの登録名。 nullは指定できない。
nameパラメータがnull以外の場合、通常は値が返されるが、これは必須ではない。 - スロー:
Exception- この例外は、MBeanサーバーにキャッチされ、MBeanRegistrationExceptionとして再スローされる。
-
postRegister
void postRegister(Boolean registrationDone) MBeanサーバーへの登録が成功または失敗したあと、MBeanが必要なオペレーションを実行できるようにします。このメソッドの実装が
RuntimeExceptionまたはErrorをスローする場合、MBeanサーバーはRuntimeMBeanExceptionまたはRuntimeErrorExceptionの内部でこれらをそれぞれ再スローします。 ただし、postRegisterで例外をスローしてもMBeanの状態は変化しません。MBeanがすでに登録されている(registrationDoneがtrueである)場合、MBeanの登録は解除されません。createMBean()またはregisterMBean()を呼び出すコードでは、このような例外が発行されたときにMBeanの登録が失敗したとみなされることがあるため、これによって混乱が生じる可能性があります。 したがって、回避できる場合はpostRegisterの実装で実行時例外またはエラーをスローしないことをお勧めします。- パラメータ:
registrationDone- MBeanがMBeanサーバーに正常に登録されたかどうかを示す。 登録に失敗した場合の値はfalse。
-
preDeregister
void preDeregister() throws ExceptionMBeanサーバーから登録解除する前に、MBeanが必要なオペレーションを実行できるようにします。- スロー:
Exception- この例外は、MBeanサーバーにキャッチされ、MBeanRegistrationExceptionとして再スローされる。
-
postDeregister
void postDeregister()MBeanサーバーから登録解除したあと、MBeanが必要なオペレーションを実行できるようにします。このメソッドの実装が
RuntimeExceptionまたはErrorをスローする場合、MBeanサーバーはRuntimeMBeanExceptionまたはRuntimeErrorExceptionの内部でこれらをそれぞれ再スローします。 ただし、postDeregisterで例外をスローしてもMBeanの状態は変化しません。MBeanはすでに正常に登録解除されており、その状態のままになります。unregisterMBean()を呼び出すコードでは、MBeanの登録解除が失敗したとみなされることがあるため、これによって混乱が生じる可能性があります。 したがって、回避できる場合はpostDeregisterの実装で実行時例外またはエラーをスローしないことをお勧めします。
-