public class MBeanRegistrationSupport
extends java.lang.ObjectMBeanServer に登録するためのサポートインフラストラクチャを提供します。特定の ObjectName で既存の MBean に遭遇したときの動作は完全に構成可能であり、柔軟な登録設定が可能です。 登録されているすべての MBean は追跡され、unregisterBeans() メソッドを呼び出すことで登録解除できます。
サブクラスは、onRegister(ObjectName) メソッドと onUnregister(ObjectName) メソッドをそれぞれオーバーライドすることにより、MBean が登録または登録解除されたときに通知を受け取ることができます。
デフォルトでは、すでに使用されている ObjectName を使用して MBean を登録しようとすると、登録プロセスは失敗します。
registrationPolicy プロパティを RegistrationPolicy.IGNORE_EXISTING に設定すると、登録プロセスは既存の MBean を無視して、登録したままにします。これは、複数のアプリケーションが共有 MBeanServer で共通の MBean を共有する必要がある設定で役立ちます。
registrationPolicy プロパティを RegistrationPolicy.REPLACE_EXISTING に設定すると、必要に応じて、登録時に既存の MBean が置き換えられます。これは、MBeanServer の状態を保証できない状況で役立ちます。
setServer(javax.management.MBeanServer), setRegistrationPolicy(org.springframework.jmx.support.RegistrationPolicy), MBeanExporter| 修飾子と型 | フィールドと説明 |
|---|---|
protected Log | logger このクラスの Log インスタンス。 |
protected javax.management.MBeanServer | serverBean の登録に使用されている MBeanServer インスタンス。 |
| コンストラクターと説明 |
|---|
MBeanRegistrationSupport() |
| 修飾子と型 | メソッドと説明 |
|---|---|
protected void | doRegister(java.lang.Object mbean, javax.management.ObjectName objectName) 実際に MBean をサーバーに登録します。 |
protected void | doUnregister(javax.management.ObjectName objectName) 指定された MBean をサーバーから実際に登録解除します。 |
protected javax.management.ObjectName[] | getRegisteredObjectNames() 登録されているすべての Bean の ObjectNames を返します。 |
javax.management.MBeanServer | getServer()Bean が登録される MBeanServer を返します。 |
protected void | onRegister(javax.management.ObjectName objectName)MBean が指定された ObjectName で登録されたときに呼び出されます。 |
protected void | onRegister(javax.management.ObjectName objectName, java.lang.Object mbean)MBean が指定された ObjectName で登録されたときに呼び出されます。 |
protected void | onUnregister(javax.management.ObjectName objectName)MBean が指定された ObjectName で登録解除されたときに呼び出されます。 |
void | setRegistrationPolicy(RegistrationPolicy registrationPolicy) すでに存在する ObjectName で MBean を登録しようとするときに使用するポリシー。 |
void | setServer(javax.management.MBeanServer server) すべての Bean を登録する MBeanServer インスタンスを指定します。 |
protected void | unregisterBeans() このクラスのインスタンスによって登録されたすべての Bean を登録解除します。 |
protected final Log logger
Log インスタンス。@Nullable protected javax.management.MBeanServer server
MBeanServer インスタンス。public void setServer(@Nullable javax.management.MBeanServer server)
MBeanServer インスタンスを指定します。MBeanExporter は、何も指定されていない場合、既存の MBeanServer を見つけようとします。@Nullable public final javax.management.MBeanServer getServer()
MBeanServer を返します。public void setRegistrationPolicy(RegistrationPolicy registrationPolicy)
ObjectName で MBean を登録しようとするときに使用するポリシー。registrationPolicy - 使用するポリシー protected void doRegister(java.lang.Object mbean,
javax.management.ObjectName objectName)
throws javax.management.JMExceptionsetRegistrationPolicy(org.springframework.jmx.support.RegistrationPolicy) を使用して構成できます。mbean - MBean インスタンス objectName - MBean の推奨 ObjectNamejavax.management.JMException - 登録に失敗した場合 protected void unregisterBeans()
protected void doUnregister(javax.management.ObjectName objectName)
objectName - MBean の推奨 ObjectNameprotected final javax.management.ObjectName[] getRegisteredObjectNames()
ObjectNames を返します。protected void onRegister(javax.management.ObjectName objectName,
java.lang.Object mbean)ObjectName で MBean が登録されたときに呼び出されます。MBean の登録時に、サブクラスが追加の処理を実行できるようにします。 デフォルトの実装は onRegister(ObjectName) に委譲します。
objectName - MBean が登録された実際の ObjectName mbean - 登録された MBean インスタンス protected void onRegister(javax.management.ObjectName objectName)
ObjectName で MBean が登録されたときに呼び出されます。MBean の登録時に、サブクラスが追加の処理を実行できるようにします。デフォルトの実装は空です。サブクラスでオーバーライドできます。
objectName - MBean が登録された実際の ObjectName protected void onUnregister(javax.management.ObjectName objectName)
ObjectName で MBean が登録解除されたときに呼び出されます。MBean が登録解除されたときに、サブクラスが追加の処理を実行できるようにします。デフォルトの実装は空です。サブクラスでオーバーライドできます。
objectName - MBean が登録された ObjectName