JavaTM Platform
Standard Ed. 6

javax.management
クラス StandardMBean

java.lang.Object
  上位を拡張 javax.management.StandardMBean
すべての実装されたインタフェース:
DynamicMBean, MBeanRegistration
直系の既知のサブクラス:
StandardEmitterMBean

public class StandardMBean
extends Object
implements DynamicMBean, MBeanRegistration

Java インタフェースのリフレクションによって管理インタフェースを決定する MBean です。

このクラスは、Standard MBean の使用における管理インタフェースの概念の柔軟性を向上させます。JMX 仕様に説明されている Standard MBean のパターンの単純な使用方法には、MBean の実装クラスと管理インタフェース間に固定した関係があると説明されています (つまり、実装クラスが Thing の場合、管理インタフェースは ThingMBean でなければならない)。このクラスは、実装クラスとインタフェースクラス間の名前の関連性を必要とせず、Java インタフェースによる管理インタフェースの指定に役立ちます。

MBean から DynamicMBean を除外することにより、このクラスは、MBean が実装する任意のインタフェースを管理インタフェースとして選択できます。ただし、JMX パターンに準拠するインタフェースでなければなりません (取得メソッドまたは設定メソッドによって定義された属性など)。

このクラスは、DynamicMBean インタフェースから返される MBeanInfo にカスタムの記述と名前を割り当てることができるフックを提供します。

このクラスを使って、任意の実装クラス名 Impl と、任意のインタフェース Intf で定義された管理インタフェース (現在の Standard MBean 用) を指定して MBean を作成できます。一般に、次のいずれかの作成方法を選択します。

いずれの場合も、クラス Impl はインタフェース Intf を実装する必要があります。

実装クラスとインタフェースクラス間の名前の関連性に基づいた Standard MBean も、引き続き使用可能です。

このクラスは、MXBean の構築にも使用できます。使用法は、上の例のコンストラクタに渡される false パラメータまたは super(...) の呼び出しが代わりに true になることを除き、Standard MBean とまったく同じです。

導入されたバージョン:
1.5

コンストラクタの概要
protected StandardMBean(Class<?> mbeanInterface)
          特定の mbeanInterface クラスを使って、DynamicMBean を this から除外します。
protected StandardMBean(Class<?> mbeanInterface, boolean isMXBean)
          特定の mbeanInterface クラスを使って、DynamicMBean を this から除外します。
  StandardMBean(T implementation, Class<T> mbeanInterface)
          特定の mbeanInterface クラスを使って、DynamicMBean をオブジェクト implementation から除外します。
  StandardMBean(T implementation, Class<T> mbeanInterface, boolean isMXBean)
          特定の mbeanInterface クラスを使って、DynamicMBean をオブジェクト implementation から除外します。
 
メソッドの概要
protected  void cacheMBeanInfo(MBeanInfo info)
          カスタマイズフック:このオブジェクト用に構築された MBeanInfo をキャッシュに入れます。
 Object getAttribute(String attribute)
          Dynamic MBean の特定の属性の値を取得します。
 AttributeList getAttributes(String[] attributes)
          Dynamic MBean の複数の属性の値を取得します。
protected  MBeanInfo getCachedMBeanInfo()
          カスタマイズフック:このオブジェクト用にキャッシュされた MBeanInfo を返します。
protected  String getClassName(MBeanInfo info)
          カスタマイズフック:この MBean から返される MBeanInfo 内で使用される className を取得します。
protected  MBeanConstructorInfo[] getConstructors(MBeanConstructorInfo[] ctors, Object impl)
          カスタマイズフック:この MBean から返される MBeanInfo で使用される MBeanConstructorInfo[] を取得します。
protected  String getDescription(MBeanAttributeInfo info)
          カスタマイズフック:この MBean が返す MBeanAttributeInfo 内で使用される説明を取得します。
protected  String getDescription(MBeanConstructorInfo info)
          カスタマイズフック:この MBean から返される MBeanConstructorInfo 内で使用される説明を取得します。
protected  String getDescription(MBeanConstructorInfo ctor, MBeanParameterInfo param, int sequence)
          カスタマイズフック:この MBean から返される MBeanConstructorInfo の sequence MBeanParameterInfo に使用される説明を取得します。
protected  String getDescription(MBeanFeatureInfo info)
          カスタマイズフック:この MBean が返す MBeanFeatureInfo 内で使用される説明を取得します。
protected  String getDescription(MBeanInfo info)
          カスタマイズフック:この MBean から返される MBeanInfo 内で使用される説明を取得します。
protected  String getDescription(MBeanOperationInfo info)
          カスタマイズフック:この MBean から返される MBeanOperationInfo 内で使用される説明を取得します。
protected  String getDescription(MBeanOperationInfo op, MBeanParameterInfo param, int sequence)
          カスタマイズフック:この MBean から返される MBeanOperationInfo の sequence MBeanParameterInfo に使用される説明を取得します。
protected  int getImpact(MBeanOperationInfo info)
          カスタマイズフック:この MBean から返される MBeanOperationInfo で使用されるオペレーションの impact フラグを取得します。
 Object getImplementation()
          この Standard MBean (または MXBean) の実装を取得します。
 Class<?> getImplementationClass()
          この Standard MBean (または MXBean) の実装のクラスを取得します。
 MBeanInfo getMBeanInfo()
          この MBean の MBeanInfo を取得します。
 Class<?> getMBeanInterface()
          この Standard MBean (または MXBean) の管理インタフェースを取得します。
protected  String getParameterName(MBeanConstructorInfo ctor, MBeanParameterInfo param, int sequence)
          カスタマイズフック:この MBean から返される MBeanConstructorInfo の sequence MBeanParameterInfo に使用される名前を取得します。
protected  String getParameterName(MBeanOperationInfo op, MBeanParameterInfo param, int sequence)
          カスタマイズフック:この MBean から返される MBeanOperationInfo の sequence MBeanParameterInfo に使用される名前を取得します。
 Object invoke(String actionName, Object[] params, String[] signature)
          Dynamic MBean 上でのアクションの実行を許可します。
 void postDeregister()
          MBean サーバーから登録解除したあと、MBean が必要なオペレーションを実行できるようにします。
 void postRegister(Boolean registrationDone)
          MBean サーバーへの登録が成功または失敗したあと、MBean が必要なオペレーションを実行できるようにします。
 void preDeregister()
          MBean サーバーから登録解除する前に、MBean が必要なオペレーションを実行できるようにします。
 ObjectName preRegister(MBeanServer server, ObjectName name)
          MBean サーバーに登録する前に、MBean に必要なオペレーションを実行させることができます。
 void setAttribute(Attribute attribute)
          Dynamic MBean の特定の属性の値を設定します。
 AttributeList setAttributes(AttributeList attributes)
          Dynamic MBean の複数の属性の値を設定します。
 void setImplementation(Object implementation)
          このオブジェクト内のラップされた実装オブジェクトを置換します。
 
クラス java.lang.Object から継承されたメソッド
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

コンストラクタの詳細

StandardMBean

public StandardMBean(T implementation,
                     Class<T> mbeanInterface)
              throws NotCompliantMBeanException

特定の mbeanInterface クラスを使って、DynamicMBean をオブジェクト implementation から除外します。

型パラメータ:
T - mbeanInterface で記述されたクラスを implementation が 実際に実装しているかチェックすることを コンパイラに許可する。コンパイラがこのチェックを実行できるのは、 mbeanInterfaceMyMBean.class などの クラスリテラルである場合のみ
パラメータ:
implementation - この MBean の実装
mbeanInterface - この MBean の実装によってエクスポートされる 管理インタフェース。null の場合、この オブジェクトは標準 JMX 設計パターンを使って、 指定された実装に関連付けられた管理インタフェースを 特定する
例外:
IllegalArgumentException - 指定された implementation が null の場合
NotCompliantMBeanException - mbeanInterface が 管理インタフェースの JMX 設計パターンに従っていない場合、または 指定された implementation が 特定のインタフェースを実装していない場合

StandardMBean

protected StandardMBean(Class<?> mbeanInterface)
                 throws NotCompliantMBeanException

特定の mbeanInterface クラスを使って、DynamicMBean を this から除外します。

this(this,mbeanInterface) を呼び出します。このコンストラクタはサブクラス用として予約されています。

パラメータ:
mbeanInterface - この MBean によってエクスポートされる 管理インタフェース
例外:
NotCompliantMBeanException - mbeanInterface が 管理インタフェースの JMX 設計パターンに従っていない場合、または this が特定のインタフェースを実装していない場合

StandardMBean

public StandardMBean(T implementation,
                     Class<T> mbeanInterface,
                     boolean isMXBean)

特定の mbeanInterface クラスを使って、DynamicMBean をオブジェクト implementation から除外します。このコンストラクタは、Standard MBean または MXBean の作成に使用できます。StandardMBean(Object, Class) コンストラクタとは異なり、これは NotCompliantMBeanException をスローしません。

型パラメータ:
T - mbeanInterface で記述されたクラスを implementation が 実際に実装しているかチェックすることを コンパイラに許可する。コンパイラがこのチェックを実行できるのは、 mbeanInterfaceMyMBean.class などの クラスリテラルである場合のみ
パラメータ:
implementation - この MBean の実装
mbeanInterface - この MBean の実装によってエクスポートされる 管理インタフェース。null の場合、この オブジェクトは標準 JMX 設計パターンを使って、 指定された実装に関連付けられた管理インタフェースを 特定する
isMXBean - true の場合、mbeanInterface パラメータにより MXBean インタフェースが命名され、生成される MBean は MXBean になる
例外:
IllegalArgumentException - 指定された implementation が null の場合、mbeanInterface が 管理インタフェースの JMX 設計パターンに従っていない場合、または 指定された implementation が 特定のインタフェースを実装していない場合
導入されたバージョン:
1.6

StandardMBean

protected StandardMBean(Class<?> mbeanInterface,
                        boolean isMXBean)

特定の mbeanInterface クラスを使って、DynamicMBean を this から除外します。このコンストラクタは、Standard MBean または MXBean の作成に使用できます。StandardMBean(Object, Class) コンストラクタとは異なり、これは NotCompliantMBeanException をスローしません。

this(this, mbeanInterface, isMXBean) を呼び出します。このコンストラクタはサブクラス用として予約されています。

パラメータ:
mbeanInterface - この MBean によってエクスポートされる 管理インタフェース
isMXBean - true の場合、mbeanInterface パラメータにより MXBean インタフェースが命名され、生成される MBean は MXBean になる
例外:
IllegalArgumentException - mbeanInterface が 管理インタフェースの JMX 設計パターンに従っていない場合、または this が特定のインタフェースを実装していない場合
導入されたバージョン:
1.6
メソッドの詳細

setImplementation

public void setImplementation(Object implementation)
                       throws NotCompliantMBeanException

このオブジェクト内のラップされた実装オブジェクトを置換します。

パラメータ:
implementation - この Standard MBean (または MXBean) の 新しい実装。implementation オブジェクトは、 StandardMBean の構築時に提供された Standard MBean (または MXBean) インタフェースを 実装する必要がある
例外:
IllegalArgumentException - 指定された implementation が null の場合
NotCompliantMBeanException - 指定された implementation が構築時に提供された Standard MBean (または MXBean) インタフェースを 実装していない場合
関連項目:
getImplementation()

getImplementation

public Object getImplementation()
この Standard MBean (または MXBean) の実装を取得します。

戻り値:
この Standard MBean (または MXBean) の実装
関連項目:
setImplementation(java.lang.Object)

getMBeanInterface

public final Class<?> getMBeanInterface()
この Standard MBean (または MXBean) の管理インタフェースを取得します。

戻り値:
この Standard MBean (または MXBean) の管理インタフェース

getImplementationClass

public Class<?> getImplementationClass()
この Standard MBean (または MXBean) の実装のクラスを取得します。

戻り値:
この Standard MBean (または MXBean) の実装のクラス

getAttribute

public Object getAttribute(String attribute)
                    throws AttributeNotFoundException,
                           MBeanException,
                           ReflectionException
インタフェース DynamicMBean の記述:
Dynamic MBean の特定の属性の値を取得します。

定義:
インタフェース DynamicMBean 内の getAttribute
パラメータ:
attribute - 取得される属性の名前
戻り値:
取得される属性の値
例外:
AttributeNotFoundException
MBeanException - MBean の取得メソッドによってスローされる java.lang.Exception をラップする場合
ReflectionException - 取得メソッドの呼び出し時にスローされる java.lang.Exception をラップする場合
関連項目:
DynamicMBean.setAttribute(javax.management.Attribute)

setAttribute

public void setAttribute(Attribute attribute)
                  throws AttributeNotFoundException,
                         InvalidAttributeValueException,
                         MBeanException,
                         ReflectionException
インタフェース DynamicMBean の記述:
Dynamic MBean の特定の属性の値を設定します。

定義:
インタフェース DynamicMBean 内の setAttribute
パラメータ:
attribute - 設定される属性の ID と 設定される値
例外:
AttributeNotFoundException
InvalidAttributeValueException
MBeanException - MBean の設定メソッドによってスローされる java.lang.Exception をラップする場合
ReflectionException - MBean の設定メソッドの呼び出し時にスローされる java.lang.Exception をラップする場合
関連項目:
DynamicMBean.getAttribute(java.lang.String)

getAttributes

public AttributeList getAttributes(String[] attributes)
インタフェース DynamicMBean の記述:
Dynamic MBean の複数の属性の値を取得します。

定義:
インタフェース DynamicMBean 内の getAttributes
パラメータ:
attributes - 取得される属性のリスト
戻り値:
取得される属性のリスト
関連項目:
DynamicMBean.setAttributes(javax.management.AttributeList)

setAttributes

public AttributeList setAttributes(AttributeList attributes)
インタフェース DynamicMBean の記述:
Dynamic MBean の複数の属性の値を設定します。

定義:
インタフェース DynamicMBean 内の setAttributes
パラメータ:
attributes - 属性のリスト。設定される属性の ID と 設定される値
戻り値:
設定された属性と新しい値のリスト
関連項目:
DynamicMBean.getAttributes(java.lang.String[])

invoke

public Object invoke(String actionName,
                     Object[] params,
                     String[] signature)
              throws MBeanException,
                     ReflectionException
インタフェース DynamicMBean の記述:
Dynamic MBean 上でのアクションの実行を許可します。

定義:
インタフェース DynamicMBean 内の invoke
パラメータ:
actionName - 呼び出されるアクションの名前
params - アクションの呼び出し時に設定されるパラメータを含む 配列
signature - アクションのシグニチャーを含む配列。クラスオブジェクトのロードには、 アクションを呼び出す MBean をロードするときと同じクラスローダーが 使用される
戻り値:
アクションによって返されるオブジェクト。 指定された MBean 上でのアクションの呼び出しの結果を表す
例外:
MBeanException - MBean の呼び出しメソッドによってスローされる java.lang.Exception をラップする場合
ReflectionException - メソッドの呼び出し時にスローされる java.lang.Exception をラップする場合

getMBeanInfo

public MBeanInfo getMBeanInfo()
この MBean の MBeanInfo を取得します。

このメソッドは、DynamicMBean.getMBeanInfo() を実装します。

このメソッドは、最初に、キャッシュされているこの MBean の MBeanInfo を取得するため、getCachedMBeanInfo() を呼び出します。getCachedMBeanInfo() は null 以外の MBeanInfo を返します。
MBeanInfo が null の場合、このメソッドは、この MBean の指定の管理インタフェースを使って、この MBean のデフォルトの MBeanInfo を構築します。

このメソッドは、MBeanInfo の構築時に、サブクラスがカスタムの記述、パラメータ、名前などを提供できるようにするカスタマイズフックを呼び出します。
最終的には、新しい MBeanInfo をキャッシュするため、cacheMBeanInfo() を呼び出します。

定義:
インタフェース DynamicMBean 内の getMBeanInfo
戻り値:
null でない場合、キャッシュされているその MBean の MBeanInfo。 何もキャッシュされていない場合、新しく構築された MBeanInfo

getClassName

protected String getClassName(MBeanInfo info)
カスタマイズフック:この MBean から返される MBeanInfo 内で使用される className を取得します。
サブクラスは、カスタムクラス名を提供するため、このメソッドを再定義できます。デフォルトの実装は info.getClassName() を返します。

パラメータ:
info - リフレクションによって派生したデフォルトの MBeanInfo
戻り値:
新しい MBeanInfo のクラス名

getDescription

protected String getDescription(MBeanInfo info)
カスタマイズフック:この MBean から返される MBeanInfo 内で使用される説明を取得します。
サブクラスは、カスタムの MBean の説明を提供するため、このメソッドを再定義できます。デフォルトの実装は info.getDescription() を返します。

パラメータ:
info - リフレクションによって派生したデフォルトの MBeanInfo
戻り値:
新しい MBeanInfo の説明

getDescription

protected String getDescription(MBeanFeatureInfo info)

カスタマイズフック:この MBean が返す MBeanFeatureInfo 内で使用される説明を取得します。

サブクラスは、カスタムの説明を提供するため、このメソッドを再定義できます。デフォルトの実装は info.getDescription() を返します。

このメソッドは、getDescription(MBeanAttributeInfo)getDescription(MBeanOperationInfo)getDescription(MBeanConstructorInfo) に呼び出されます。

パラメータ:
info - リフレクションによって派生したデフォルトの MBeanFeatureInfo
戻り値:
指定の MBeanFeatureInfo の説明

getDescription

protected String getDescription(MBeanAttributeInfo info)
カスタマイズフック:この MBean が返す MBeanAttributeInfo 内で使用される説明を取得します。

サブクラスは、カスタムの説明を提供するため、このメソッドを再定義できます。デフォルトの実装は getDescription((MBeanFeatureInfo) info) を返します。

パラメータ:
info - リフレクションによって派生したデフォルトの MBeanAttributeInfo
戻り値:
指定の MBeanAttributeInfo の説明

getDescription

protected String getDescription(MBeanConstructorInfo info)
カスタマイズフック:この MBean から返される MBeanConstructorInfo 内で使用される説明を取得します。
サブクラスは、カスタムの MBean の説明を提供するため、このメソッドを再定義できます。デフォルトの実装は getDescription((MBeanFeatureInfo) info) を返します。

パラメータ:
info - リフレクションによって派生したデフォルトの MBeanConstructorInfo
戻り値:
指定の MBeanConstructorInfo の説明

getDescription

protected String getDescription(MBeanConstructorInfo ctor,
                                MBeanParameterInfo param,
                                int sequence)
カスタマイズフック:この MBean から返される MBeanConstructorInfo の sequence MBeanParameterInfo に使用される説明を取得します。
サブクラスは、カスタムの MBean の説明を提供するため、このメソッドを再定義できます。デフォルトの実装は param.getDescription() を返します。

パラメータ:
ctor - リフレクションによって派生したデフォルトの MBeanConstructorInfo
param - リフレクションによって派生したデフォルトの MBeanParameterInfo
sequence - パラメータのシーケンス番号。 0 は最初のパラメータ、1 は 2 番目のパラメータ (以下同様)
戻り値:
指定の MBeanParameterInfo の説明

getParameterName

protected String getParameterName(MBeanConstructorInfo ctor,
                                  MBeanParameterInfo param,
                                  int sequence)
カスタマイズフック:この MBean から返される MBeanConstructorInfo の sequence MBeanParameterInfo に使用される名前を取得します。
サブクラスは、カスタムのパラメータ名を提供するため、このメソッドを再定義できます。デフォルトの実装は param.getName() を返します。

パラメータ:
ctor - リフレクションによって派生したデフォルトの MBeanConstructorInfo
param - リフレクションによって派生したデフォルトの MBeanParameterInfo
sequence - パラメータのシーケンス番号。 0 は最初のパラメータ、1 は 2 番目のパラメータ (以下同様)
戻り値:
指定の MBeanParameterInfo の名前

getDescription

protected String getDescription(MBeanOperationInfo info)
カスタマイズフック:この MBean から返される MBeanOperationInfo 内で使用される説明を取得します。
サブクラスは、カスタムの MBean の説明を提供するため、このメソッドを再定義できます。デフォルトの実装は getDescription((MBeanFeatureInfo) info) を返します。

パラメータ:
info - リフレクションによって派生したデフォルトの MBeanOperationInfo
戻り値:
指定の MBeanOperationInfo の説明

getImpact

protected int getImpact(MBeanOperationInfo info)
カスタマイズフック:この MBean から返される MBeanOperationInfo で使用されるオペレーションの impact フラグを取得します。
サブクラスは、カスタムの impact フラグを提供するため、このメソッドを再定義できます。デフォルトの実装は info.getImpact() を返します。

パラメータ:
info - リフレクションによって派生したデフォルトの MBeanOperationInfo
戻り値:
指定の MBeanOperationInfo の impact フラグ

getParameterName

protected String getParameterName(MBeanOperationInfo op,
                                  MBeanParameterInfo param,
                                  int sequence)
カスタマイズフック:この MBean から返される MBeanOperationInfo の sequence MBeanParameterInfo に使用される名前を取得します。
サブクラスは、カスタムのパラメータ名を提供するため、このメソッドを再定義できます。デフォルトの実装は param.getName() を返します。

パラメータ:
op - リフレクションによって派生したデフォルトの MBeanOperationInfo
param - リフレクションによって派生したデフォルトの MBeanParameterInfo
sequence - パラメータのシーケンス番号。 0 は最初のパラメータ、1 は 2 番目のパラメータ (以下同様)
戻り値:
指定の MBeanParameterInfo の名前

getDescription

protected String getDescription(MBeanOperationInfo op,
                                MBeanParameterInfo param,
                                int sequence)
カスタマイズフック:この MBean から返される MBeanOperationInfo の sequence MBeanParameterInfo に使用される説明を取得します。
サブクラスは、カスタムの MBean の説明を提供するため、このメソッドを再定義できます。デフォルトの実装は param.getDescription() を返します。

パラメータ:
op - リフレクションによって派生したデフォルトの MBeanOperationInfo
param - リフレクションによって派生したデフォルトの MBeanParameterInfo
sequence - パラメータのシーケンス番号。 0 は最初のパラメータ、1 は 2 番目のパラメータ (以下同様)
戻り値:
指定の MBeanParameterInfo の説明

getConstructors

protected MBeanConstructorInfo[] getConstructors(MBeanConstructorInfo[] ctors,
                                                 Object impl)
カスタマイズフック:この MBean から返される MBeanInfo で使用される MBeanConstructorInfo[] を取得します。
デフォルトでは、このメソッドは、ラップされた実装が this でない場合、null を返します。ラップされた実装がこのオブジェクト自体でない場合、MBeanServer.createMBean(...) を通して実装コンストラクタを呼び出しても、ラップされた実装を作成し直すことはできません。
ラップされた実装が this の場合、ctors が返されます。
サブクラスは、この動作を必要に応じて変更するため、このメソッドを再定義できます。

パラメータ:
ctors - リフレクションによって派生したデフォルトの MBeanConstructorInfo[]
impl - ラップされた実装。null が渡されると、 ラップされた実装は無視され、 ctors が返される
戻り値:
新しい MBeanInfo の MBeanConstructorInfo[]

getCachedMBeanInfo

protected MBeanInfo getCachedMBeanInfo()
カスタマイズフック:このオブジェクト用にキャッシュされた MBeanInfo を返します。

サブクラスは、固有のキャッシングポリシーを実装するため、このメソッドを再定義できます。デフォルトの実装は、インスタンスごとに MBeanInfo オブジェクトを 1 つずつ格納します。

戻り値:
キャッシュされた MBeanInfo。MBeanInfo がキャッシュされていない場合は null
関連項目:
cacheMBeanInfo(MBeanInfo)

cacheMBeanInfo

protected void cacheMBeanInfo(MBeanInfo info)
カスタマイズフック:このオブジェクト用に構築された MBeanInfo をキャッシュに入れます。

サブクラスは、固有のキャッシングポリシーを実装するため、このメソッドを再定義できます。デフォルトの実装は、このインスタンスに info を格納します。サブクラスは、その他のポリシーも定義できます。たとえば、getMBeanInfo() の呼び出しのたびに再構築されるように info を保存しないポリシーや、複数の StandardMBean インスタンスが同等の MBeanInfo 値を持つ場合に単一の MBeanInfo オブジェクトを共有するポリシーなどを定義できます。

パラメータ:
info - キャッシュする新しい MBeanInfo。以前にキャッシュされた値は すべて破棄される。新しくキャッシュされた値がない場合、 このパラメータは null

preRegister

public ObjectName preRegister(MBeanServer server,
                              ObjectName name)
                       throws Exception

MBean サーバーに登録する前に、MBean に必要なオペレーションを実行させることができます。MBean の名前を指定しないと、MBean により、登録用の名前が提供されます。例外がスローされた場合、MBean は MBean サーバーに登録されません。

このメソッドのデフォルト実装は、name パラメータを返します。Standard MBean の場合、ほかに何も行いません。MXBean の場合、MBeanServer および ObjectName パラメータが記録されます。これらは、MXBean 間の参照変換に使用できます。

このメソッドをオーバーライドするサブクラスから、オーバーライドされたメソッドを super.preRegister(...) を介して呼び出すことをお勧めします。このオブジェクトが、ほかの MXBean の属性またはオペレーションにより参照される MXBean である場合、これは必須の方法です。

定義:
インタフェース MBeanRegistration 内の preRegister
パラメータ:
server - MBean サーバー。MBean はここに登録される
name - MBean のオブジェクト名MBeanServer インタフェース内の createMBean または registerMBean メソッドの name パラメータが null の場合、 この名前は null になる。この場合、このメソッドは、 新しい MBean 用として null 以外の ObjectName を必ず返す
戻り値:
MBean の登録名 null は指定できない。name パラメータが null 以外の場合、通常は値が返されるが、 これは必須ではない
例外:
IllegalArgumentException - これが MXBean で、 name が null の場合
InstanceAlreadyExistsException - これが MXBean で、 この MBean Server または別の MBean Server に、 別の名前で登録済みの場合
Exception - このメソッドによりほかのチェック済み例外がスローされることはないが、 サブクラスがこのメソッドをオーバーライドして独自の例外をスローできるように、 Exception が宣言される
導入されたバージョン:
1.6

postRegister

public void postRegister(Boolean registrationDone)

MBean サーバーへの登録が成功または失敗したあと、MBean が必要なオペレーションを実行できるようにします。

このメソッドのデフォルト実装では、Standard MBean に対して何の処理も行われません。MXBean では、登録が失敗すると、preRegister により実行された処理がすべて取り消されます。

このメソッドをオーバーライドするサブクラスから、オーバーライドされたメソッドを super.postRegister(...) を介して呼び出すことをお勧めします。このオブジェクトが、ほかの MXBean の属性またはオペレーションにより参照される MXBean である場合、これは必須の方法です。

定義:
インタフェース MBeanRegistration 内の postRegister
パラメータ:
registrationDone - MBean が MBean サーバーに 正常に登録されたかどうかを示す。登録に 失敗した場合の値は false
導入されたバージョン:
1.6

preDeregister

public void preDeregister()
                   throws Exception

MBean サーバーから登録解除する前に、MBean が必要なオペレーションを実行できるようにします。

このメソッドのデフォルト実装では何の処理も行われません。

このメソッドをオーバーライドするサブクラスから、オーバーライドされたメソッドを super.preDeegister(...) を介して呼び出すことをお勧めします。

定義:
インタフェース MBeanRegistration 内の preDeregister
例外:
Exception - このメソッドによりチェック済み例外はスローされないが、 サブクラスがこのメソッドをオーバーライドして独自の例外をスローできるように、 Exception が宣言される
導入されたバージョン:
1.6

postDeregister

public void postDeregister()

MBean サーバーから登録解除したあと、MBean が必要なオペレーションを実行できるようにします。

このメソッドのデフォルト実装では、Standard MBean に対して何の処理も行われません。MXBean では、preRegister メソッドにより記録された情報がすべて削除されます。

このメソッドをオーバーライドするサブクラスから、オーバーライドされたメソッドを super.postRegister(...) を介して呼び出すことをお勧めします。このオブジェクトが、ほかの MXBean の属性またはオペレーションにより参照される MXBean である場合、これは必須の方法です。

定義:
インタフェース MBeanRegistration 内の postDeregister
導入されたバージョン:
1.6

JavaTM Platform
Standard Ed. 6

バグの報告と機能のリクエスト
さらに詳しい API リファレンスおよび開発者ドキュメントについては、Java SE 開発者用ドキュメントを参照してください。開発者向けの詳細な解説、概念の概要、用語の定義、バグの回避策、およびコード実例が含まれています。

Copyright 2006 Sun Microsystems, Inc. All rights reserved. Use is subject to license terms. Documentation Redistribution Policy も参照してください。