JavaTM 2 Platform
Standard Ed. 5.0

javax.management.modelmbean
クラス DescriptorSupport

java.lang.Object
  上位を拡張 javax.management.modelmbean.DescriptorSupport
すべての実装されたインタフェース:
Serializable, Cloneable, Descriptor

public class DescriptorSupport
extends Object
implements Descriptor

このクラスは、ModelMBean 要素のメタデータセットを表します。記述子は、ModelMBeanInfo、ModelMBeanNotificationInfo、ModelMBeanAttributeInfo、ModelMBeanConstructorInfo、および ModelMBeanParameterInfo の一部です。

記述子は複数のフィールドから成ります。各フィールドは fieldname=fieldvalue の形式になります。フィールド名の大文字と小文字は区別されません。フィールド名を大文字で入力した場合はフィールド値も大文字、フィールド名を小文字で入力した場合はフィールド値も小文字になります。

すべてのフィールドの名前と値が未定義ではありません。任意のプログラムで新しいフィールドを定義し、追加することができます。一部のフィールドは、実装の整合性を確保し、ModelMBeanInfo、ModelMBeanAttributeInfo、ModelMBeanConstructorInfo、ModelMBeanNotificationInfo、ModelMBeanOperationInfo および ModelMBean クラスによるサポートを得るため、定義済みになっています。

導入されたバージョン:
1.5
関連項目:
直列化された形式

コンストラクタの概要
DescriptorSupport()
          記述子のデフォルトのコンストラクタです。
DescriptorSupport(DescriptorSupport inDescr)
          Descriptor をパラメータとして取る記述子のコンストラクタです。
DescriptorSupport(int initNumFields)
          記述子のコンストラクタです。
DescriptorSupport(String inStr)
          XML String を取る記述子のコンストラクタです。
DescriptorSupport(String[] fields)
          fieldName=fieldValue の形式のフィールドを取るコンストラクタです。
DescriptorSupport(String[] fieldNames, Object[] fieldValues)
          フィールド名とフィールド値を取るコンストラクタです。
 
メソッドの概要
 Object clone()
          新しい Descriptor (Descriptor の複製) を返します。
 String[] getFieldNames()
          記述子内のすべてのフィールド名を返します。
 String[] getFields()
          記述子内のすべてのフィールドを返します。
 Object getFieldValue(String inFieldName)
          特定のフィールド名を表す値を返します。
 Object[] getFieldValues(String[] fieldNames)
          記述子内のすべてのフィールドの値を Object の配列として返します。
 boolean isValid()
          すべてのフィールドに名前が付与されていて値が有効な場合、true を返します。
 void removeField(String fieldName)
          記述子からフィールドを削除します。
 void setField(String inFieldName, Object fieldValue)
          特定のフィールド名の文字列値を設定します。
 void setFields(String[] fieldNames, Object[] fieldValues)
          リスト内のすべてのフィールドに新しい値 (fieldValue 配列内のインデックスと同じ値) を設定します。
 String toString()
          記述子を表す、人間が読める形式の文字列を返します。
 String toXMLString()
          記述子を表す XML String を返します。
 
クラス java.lang.Object から継承されたメソッド
equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

コンストラクタの詳細

DescriptorSupport

public DescriptorSupport()
記述子のデフォルトのコンストラクタです。デフォルトの初期記述子サイズは 20 ですが、このサイズは必要に応じて大きくなります。
作成された空の記述子は無効な記述子です (isValid メソッドが false を返す)。


DescriptorSupport

public DescriptorSupport(int initNumFields)
                  throws MBeanException,
                         RuntimeOperationsException
記述子のコンストラクタです。記述子フィールドを格納する Map の初期容量がパラメータになります。容量は必要に応じて増加します。
作成された空の記述子は無効な記述子です (isValidfalse を返す)。

パラメータ:
initNumFields - 記述子フィールドを格納する Map の初期容量
例外:
RuntimeOperationsException - initNumFields の値が無効 (<= 0) である場合
MBeanException - 分散通信 Exception をラップする

DescriptorSupport

public DescriptorSupport(DescriptorSupport inDescr)
Descriptor をパラメータとして取る記述子のコンストラクタです。パラメータとして渡された記述子の値に初期化される新しい記述子を作成します。

パラメータ:
inDescr - 構築済み記述子の初期化に使用される記述子。null の場合、または記述子フィールドが含まれない場合、空の Descriptor が作成される

DescriptorSupport

public DescriptorSupport(String inStr)
                  throws MBeanException,
                         RuntimeOperationsException,
                         XMLParseException

XML String を取る記述子のコンストラクタです。

XML 文字列の形式は未定義ですが、toXMLString() によって既存の記述子上に返される文字列で、このコンストラクタを使って同等の記述子をインスタンス化できる実装でなければなりません。

この実装では、すべてのフィールド値は String として作成されます。フィールド値が String でない場合、プログラマは、これらのフィールドを正しくリセットまたは変換する必要があります。

パラメータ:
inStr - この Descriptor の読み込み使用される XML 形式の文字列。この文字列の形式は未定義であるが、toXMLString() メソッドによって既存の記述子上に返される文字列で、このコンストラクタを使って同等の記述子をインスタンス化できる実装でなければならない
例外:
RuntimeOperationsException - パラメータとして渡される String inStr が null の場合
XMLParseException - 入力 String の解析時に XML 解析関連の問題が発生した場合
MBeanException - 分散通信 Exception をラップする

DescriptorSupport

public DescriptorSupport(String[] fieldNames,
                         Object[] fieldValues)
                  throws RuntimeOperationsException
フィールド名とフィールド値を取るコンストラクタです。配列および配列要素は null 以外になります。

パラメータ:
fieldNames - フィールド名の文字列配列。この配列の配列要素は null 以外
fieldValues - 対応するフィールド値のオブジェクト配列。配列要素は null でもよい。fieldValue は、isValid メソッドの定義どおり、fieldName に対して有効な値でなければならない

注: パラメータの配列サイズが一致している必要があります。配列が null または空の場合、空の記述子が作成されます。

例外:
RuntimeOperationsException - フィールド名またはフィールド値が不正である場合。フィールド名、フィールド値ともに、null は使用できない。配列の長さは一致している必要がある。何らかの理由で記述子の作成に失敗した場合、この例外がスローされる

DescriptorSupport

public DescriptorSupport(String[] fields)
fieldName=fieldValue の形式のフィールドを取るコンストラクタです。

パラメータ:
fields - フィールド名およびフィールド値を含む要素を持つ文字列配列。この配列が null または空の場合、デフォルトのコンストラクタが実行される。null 文字列と空文字列は無視される

すべてのフィールド値は String になります。フィールド値が String でない場合、プログラマは、これらのフィールドを正しくリセットまたは変換する必要があります。

注: 各文字列は fieldName=fieldValue の形式を取る必要があります。

例外:
RuntimeOperationsException - フィールド Name またはフィールド Value が不正である場合。フィールドには「=」が含まれていなければならない。「=fieldValue」、「fieldName」、「fieldValue」は無効。また、FieldName は null 以外。「fieldName=」の場合、値は null になる。何らかの理由で記述子の作成に失敗した場合、この例外がスローされる
メソッドの詳細

getFieldValue

public Object getFieldValue(String inFieldName)
                     throws RuntimeOperationsException
特定のフィールド名を表す値を返します。

定義:
インタフェース Descriptor 内の getFieldValue
パラメータ:
inFieldName - フィールド名。見つからない場合は null
戻り値:
フィールド値を表す Object
例外:
RuntimeOperationsException - フィールド Name が不正 (null または空文字列) である場合

setField

public void setField(String inFieldName,
                     Object fieldValue)
              throws RuntimeOperationsException
特定のフィールド名の文字列値を設定します。isValid メソッドの定義に従って、そのフィールドに対して有効な値を設定する必要があります。フィールドが存在しない場合、Descriptor の末尾に追加されます。フィールドが存在する場合、値が置き換えられます。

定義:
インタフェース Descriptor 内の setField
パラメータ:
inFieldName - 設定されるフィールド名。null や空文字列は使用できない
fieldValue - フィールド名として設定される値。null や空文字列は使用できない
例外:
RuntimeOperationsException - フィールド Name の値が不正である場合

getFields

public String[] getFields()
記述子内のすべてのフィールドを返します。返される順番は、フィールドの設定順とは異なります。

定義:
インタフェース Descriptor 内の getFields
戻り値:
fieldName=fieldValue の形式のフィールドの文字列配列。記述子内にフィールドが存在しない場合、空の String 配列が返される。fieldValue が String でない場合、toString() メソッドが呼び出される。その戻り値は、括弧に囲まれたフィールドの値として使用される
関連項目:
setFields(java.lang.String[], java.lang.Object[])

getFieldNames

public String[] getFieldNames()
記述子内のすべてのフィールド名を返します。返される順番は、フィールドの設定順とは異なります。

定義:
インタフェース Descriptor 内の getFieldNames
戻り値:
フィールド名から成る文字列配列。記述子が空の場合、空の配列が返される

getFieldValues

public Object[] getFieldValues(String[] fieldNames)
記述子内のすべてのフィールドの値を Object の配列として返します。返される値の順番は、fieldNames String 配列パラメータの場合と同じになります。

定義:
インタフェース Descriptor 内の getFieldValues
パラメータ:
fieldNames - 値が返されるフィールドの名前から成る文字列配列。
配列が空の場合、空の配列が返される。
配列が null の場合、すべての値が返される。返される順番は、フィールドの設定順とは異なる。
配列内のフィールド名が存在しない場合、対応する配列要素の位置に null が返される
戻り値:
フィールド値から成るオブジェクト配列。記述子が空の場合、空の配列が返される

setFields

public void setFields(String[] fieldNames,
                      Object[] fieldValues)
               throws RuntimeOperationsException
リスト内のすべてのフィールドに新しい値 (fieldValue 配列内のインデックスと同じ値) を設定します。配列サイズは一致している必要があります。フィールド値の設定前に、isValid メソッドが呼び出され、妥当性のチェックが行われます。無効な値の場合は例外がスローされます。配列が空の場合、変更内容は適用されません。

定義:
インタフェース Descriptor 内の setFields
パラメータ:
fieldNames - フィールド名の文字列配列。配列および配列要素は null 以外
fieldValues - 対応するフィールド値から成るオブジェクト配列。配列は null 以外。配列要素は null の場合もある
例外:
RuntimeOperationsException - フィールド名またはフィールド値の値が不正である場合。いずれも null は不可。配列の長さは一致している必要がある
関連項目:
getFields()

clone

public Object clone()
             throws RuntimeOperationsException
新しい Descriptor (Descriptor の複製) を返します。

定義:
インタフェース Descriptor 内の clone
オーバーライド:
クラス Object 内の clone
戻り値:
このインスタンスの複製
例外:
RuntimeOperationsException - フィールド名またはフィールド値が不正である場合。何らかの理由で記述子の作成に失敗した場合、この例外がスローされる
関連項目:
Cloneable

removeField

public void removeField(String fieldName)
記述子からフィールドを削除します。

定義:
インタフェース Descriptor 内の removeField
パラメータ:
fieldName - 削除されるフィールドの文字列名。フィールドが見つからない場合、例外はスローされない

isValid

public boolean isValid()
                throws RuntimeOperationsException
すべてのフィールドに名前が付与されていて値が有効な場合、true を返します。

この実装は、ディレクトリまたは検索サービスとの相互運用性をサポートしません。仕様により、"export" フィールドのチェックは行われません。

次の場合、この実装は false を返します。

定義:
インタフェース Descriptor 内の isValid
戻り値:
値が有効な場合は true
例外:
RuntimeOperationsException - 何らかの理由で妥当性チェックに失敗した場合、この例外がスローされる

toXMLString

public String toXMLString()

記述子を表す XML String を返します。

形式は未定義ですが、コンストラクタ DescriptorSupport(String inStr) を使ってインスタンス化するとき、このメソッドによって返される文字列で、同等の記述子を構築できる実装でなければなりません。

フィールドが String オブジェクトでない場合、toString() が呼び出され、値が作成されます。値は括弧に囲まれた形式になります。これらのオブジェクトが有意の形式の toString() をサポートするように設定されていて、同じ形式の String を受け付ける一致したコンストラクタを持っていない場合、これらのオブジェクトを再構築できないことがあります。

記述子が空の場合、String として <Descriptor></Descriptor> が返されます。

戻り値:
XML 文字列
例外:
RuntimeOperationsException - フィールド名またはフィールド値が不正である場合。何らかの理由で XML 形式の文字列の作成に失敗した場合、この例外がスローされる

toString

public String toString()
記述子を表す、人間が読める形式の文字列を返します。この文字列の形式は、「fieldName=fieldValue,fieldName2=fieldValue2,...」のようになります。
記述子内にフィールドが存在しない場合、空の String が返されます。
fieldValue がオブジェクトである場合、toString() メソッドが呼び出されます。戻り値は括弧に囲まれたフィールドの値として使用されます。

オーバーライド:
クラス Object 内の toString
戻り値:
このオブジェクトの文字列表現
例外:
RuntimeOperationsException - フィールド名またはフィールド値が不正である場合。何らかの理由で記述子の文字列に問題が発生した場合、この例外がスローされる

JavaTM 2 Platform
Standard Ed. 5.0

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

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