パッケージjavax.management.openmbean
公開データ型とOpen MBean記述子クラスを提供します。 Open MBeanはMBeanの一種であり、その属性およびオペレーション・パラメータの型と戻り値は、いくつかの事前定義済みのJavaクラスを使って構築されます。 Open MBeanは、アプリケーション固有の型(非Javaプログラムを含む)に必ずしもアクセスできるとはかぎらないリモート管理プログラムを使って、オペレーションを簡便化します。
すべてのMBeanは、MBean自体の情報とその属性、オペレーション、コンストラクタ、および通知を備えたMBeanInfo
を持ちます。 Open MBeanでは、このMBeanInfo
は、通常OpenMBeanInfoSupport
のインスタンスになることにより、OpenMBeanInfo
インタフェースを実装します。
Open MBeanのMBeanInfo.getAttributes
によって返される属性情報は、OpenMBeanAttributeInfo
を実装するオブジェクト(通常OpenMBeanAttributeInfoSupport
のインスタンス)の配列になります。 OpenMBeanAttributeInfo
は、属性に関する一般情報に加えて、属性のOpenType
を指定します。 可能なOpenType
値は事前に定義されているため、リモート・マネージャはこれらを認識します。
オペレーションおよびコンストラクタのパラメータ型、さらにはオペレーションの戻り型についても、同じことが言えます。
getType()
によって返される属性のJava言語型と、getOpenType()
によって返されるそのOpenType
には違いがあります。 たとえば、Java言語型がjava.lang.String
の場合、OpenType
はSimpleType.String
になります。 Java言語型がCompositeData
の場合、OpenType
は属性のCompositeData
インスタンス内の項目を記述するCompositeType
になります。
デフォルト値と制約
Open MBeanでは、属性およびパラメータは、関連付けられたデフォルト値や制約を OpenMBeanAttributeInfo
またはOpenMBeanParameterInfo
内に保持できます。 これらの制約を指定するには、2つの方法があります。 いずれかの値がOpenMBeanAttributeInfoSupport
またはOpenMBeanParameterInfoSupport
のいずれか(たとえば、OpenMBeanParameterInfoSupport(String, String, OpenType, Object, Object[])
)のコンストラクタへのパラメータとして直接指定されるか、いずれか1つのコンストラクタに対してパラメータとして指定されたDescriptor
で指定されます。
Descriptor
を使用する場合、次のフィールドが関連します。
defaultValue
は、getDefaultValue()
により返される値を定義します。minValue
は、getMinValue()
により返される値を定義します。maxValue
は、getMaxValue()
により返される値を定義します。legalValues
は、getLegalValues()
により返される値を定義します。
defaultValue
、minValue
および maxValue
の場合、関連する値はopenType
に対応するJava型、またはその型に変換可能な文字列である必要があります。 staticメソッドvalueOf(String)
が検出される場合は、そのメソッドが変換に使用されます。そのメソッドが検出されない場合、単一のString
パラメータを持つコンストラクタが検出されればそのコンストラクタが使用され、そうでない場合は変換が失敗します。
legalValues
では、関連する値は配列またはSet
である必要があります。また、配列またはセットの要素は、defaultValue
などに対して記述された方法で変換可能でなければいけません。
これらのフィールドでは、次の条件を満たす必要があります。
- 値は、すでに説明したように、適切な型の値か、適切な型に変換可能な文字列である必要があります。
legalValues
が存在する場合は、minValue
もmaxValue
も存在してはいけません。defaultValue
が存在する場合、legalValues
、minValue
、maxValue
のいずれかが存在するなら、そこで定義された制約を満たしている必要があります。minValue
とmaxValue
の両方が存在する場合、minValue
がmaxValue
より大きくてはいけません。
- 導入されたバージョン:
- 1.5
- 関連項目:
-
クラス説明ArrayType<T>
ArrayType
クラスは、公開データ値のn次元配列であるすべての公開データ値を記述するインスタンスを持つ公開型クラスです。getterメソッドをCompositeData
に転送するInvocationHandler
です。Javaクラスは、このインタフェースを実装することにより、MXBeanフレームワークを使ってCompositeData
に変換する方法を示すことができます。CompositeType
クラスは、CompositeData
値の型を記述するインスタンスを持つ公開型クラスです。この実行時例外は、複合データの項目名または表データの行インデックスになる予定だったメソッド・パラメータが無効な場合にスローされます。この実行時例外は、公開データ値の公開型が予想していた値と異なる場合にスローされます。この実行時例外は、表データ・インスタンスに追加される行のインデックスが、この表データ・インスタンス内の別の行を参照するためにすでに使用されている場合にスローされます。このチェック例外は、妥当性の制約の一部が満たされていないため、公開型、公開データ、または公開MBeanメタデータ情報インスタンスを構築できなかった場合にスローされます。公開MBeanの属性を記述します。公開MBeanの属性を記述します。Open MBeanのコンストラクタを記述します。Open MBeanのコンストラクタを記述します。Open MBeanを記述します。Open MBeanのgetMBeanInfo()
メソッドは、OpenMBeanInfo
インタフェースを実装するクラスのインスタンス(通常OpenMBeanInfoSupport
)を返すことになっています。OpenMBeanInfoSupport
クラスは公開MBeanの管理情報を記述します。これはMBeanInfo
のサブクラスであり、OpenMBeanInfo
インタフェースを実装します。Open MBeanのオペレーションを記述します。Open MBeanのオペレーションを記述します。公開MBeanの1つ以上のオペレーションまたはコンストラクタで使用されるパラメータを記述します。公開MBeanの1つ以上のオペレーションまたはコンストラクタで使用されるパラメータを記述します。OpenType<T>OpenType
クラスは、実際の公開データ値の公開型を記述するすべてのクラスの親abstractクラスです。SimpleType<T>SimpleType
クラスは、配列でもCompositeData
値でもTabularData
値でもないすべての公開データ値を記述するインスタンスを持つ、公開型クラスです。TabularType
クラスは、TabularData
値の型を記述するインスタンスを持つ公開型クラスです。