|
JavaTM 2 Platform Standard Ed. 5.0 |
|||||||||
前のクラス 次のクラス | フレームあり フレームなし | |||||||||
概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド |
public interface ModelMBeanInfo
ModelMBeanInfo は、ModelMBean ごとにこのインタフェースを実装する必要があります。このインタフェースの実装は、すべての JMX エージェントに付属しています。
管理対象になる Java リソースは、MBeanServer の createMBean メソッドを使って、ModelMBean をインスタンス化します。次に、ModelMBean インスタンスの ModelMBeanInfo と Descriptor を設定します。ModelMBean の ModelMBeanInfo で公開された属性、オペレーション、および通知は管理インタフェースを構成します。これらには、MBean、コネクタ、アダプタからアクセスできます。 Descriptor を使って、管理対象アプリケーション内の値とメソッドを定義し、ModelMBean の属性およびオペレーションにマップすることができます。このマッピングは、ファイルを使った開発時、または実行時にプログラムを使って動的に定義できます。
MBeanServer でインスタンス化された MBean はすべて管理対象となります。これらの MBean の属性、オペレーション、および通知には、MBeanServer に接続されたコネクタまたはアダプタ経由でリモートアクセスできます。JMX 準拠の MBean でない Java オブジェクトは、MBeanServer に登録できません。リソースは、ModelMBean をインスタンス化することにより、MBean の有効性を保証します。 すべての public メソッドで、MBeanException および RuntimeOperationsException がスローされる必要があります。これにより、分散型通信 (RMI、EJB など) からの例外のラップが可能になります。
メソッドの概要 | |
---|---|
Object |
clone()
このオブジェクトのコピーを作成して、返します。 |
ModelMBeanAttributeInfo |
getAttribute(String inName)
名前で要求された ModelMBeanAttributeInfo を返します。 |
MBeanAttributeInfo[] |
getAttributes()
管理用の公開属性のリストを返します。 |
String |
getClassName()
この MBeanInfo によって記述された MBean の Java クラスの名前を返します。 |
MBeanConstructorInfo[] |
getConstructors()
MBean の public コンストラクタのリストを返します。 |
String |
getDescription()
人間が読める形式の MBean の説明を返します。 |
Descriptor |
getDescriptor(String inDescriptorName,
String inDescriptorType)
名前と descriptorType で要求された Descriptor を返します。 |
Descriptor[] |
getDescriptors(String inDescriptorType)
inDescriptorType 型の ModelMBeanInfo のすべての Descriptor で構成される Descriptor 配列を返します。 |
Descriptor |
getMBeanDescriptor()
MBean 全体ポリシーを含む ModelMBean の記述子を返します。 |
ModelMBeanNotificationInfo |
getNotification(String inName)
名前で要求された ModelMBeanNotificationInfo を返します。 |
MBeanNotificationInfo[] |
getNotifications()
MBean によって発行された通知のリストを返します。 |
ModelMBeanOperationInfo |
getOperation(String inName)
名前で要求された ModelMBeanOperationInfo を返します。 |
MBeanOperationInfo[] |
getOperations()
MBean のオペレーションのリストを返します。 |
void |
setDescriptor(Descriptor inDescriptor,
String inDescriptorType)
ModelMBean の inDescriptorType 型の情報配列内に記述子を設定します。 |
void |
setDescriptors(Descriptor[] inDescriptors)
ModelMBeanInfo に記述子を追加するか、ModelMBeanInfo 内の記述子を置き換えます。 |
void |
setMBeanDescriptor(Descriptor inDescriptor)
ModelMBean の記述子を設定します。 |
メソッドの詳細 |
---|
Descriptor[] getDescriptors(String inDescriptorType) throws MBeanException, RuntimeOperationsException
inDescriptorType
- 返される記述子に対して設定する必要がある descriptorType フィールドの値。mbean、attribute、operation、constructor、notification のいずれか。null または空の場合、すべての型が返される
MBeanException
- 分散通信 Exception をラップする
RuntimeOperationsException
- パラメータとして渡された descriptorType が mbean、attribute、operation、constructor、notification のいずれでもない場合、空の場合、または null の場合、IllegalArgumentException をラップするsetDescriptors(javax.management.Descriptor[])
void setDescriptors(Descriptor[] inDescriptors) throws MBeanException, RuntimeOperationsException
inDescriptors
- ModelMBeanInfo 内に設定される記述子。リストの null 要素は無視される。すべての記述子が name および descriptorType フィールドを持っている必要がある
RuntimeOperationsException
- 記述子が null または不正な場合、IllegalArgumentException をラップする
MBeanException
- 分散通信 Exception をラップするgetDescriptors(java.lang.String)
Descriptor getDescriptor(String inDescriptorName, String inDescriptorType) throws MBeanException, RuntimeOperationsException
inDescriptorName
- 記述子の名前inDescriptorType
- 要求される記述子の型。null または空の場合、すべての型が検索される。有効な型は、mbean、attribute、constructor、operation、および notification。この値は、返される記述子の descriptorType フィールドと等しくなる
MBeanException
- 分散通信 Exception をラップする
RuntimeOperationsException
- 記述子名が null であるか、型が null または不正な場合、IllegalArgumentException をラップする。型は、mbean、attribute、constructor、operation、notification のいずれかでなければならないsetDescriptor(javax.management.Descriptor, java.lang.String)
void setDescriptor(Descriptor inDescriptor, String inDescriptorType) throws MBeanException, RuntimeOperationsException
inDescriptor
- ModelMBean 内に設定される記述子。null 以外でなければならない。すべての記述子が name および descriptorType フィールドを持っている必要があるinDescriptorType
- 設定される記述子の型。null の場合、記述子の descriptorType フィールドが使用される。値が指定されている場合、この値が記述子の descriptorType フィールドに設定されなければならない。mbean、attribute、constructor、operation、notification のいずれか
RuntimeOperationsException
- 引数が不正または null である場合、または対応する MBeanAttributeInfo、MBeanConstructorInfo、MBeanNotificationInfo、MBeanOperationInfo のいずれかで記述子の name フィールドが見つからない場合、IllegalArgumentException をラップする
MBeanException
- 分散通信 Exception をラップするgetDescriptor(java.lang.String, java.lang.String)
Descriptor getMBeanDescriptor() throws MBeanException, RuntimeOperationsException
記述子のフィールドは以下のように定義済みですが、この内容に限定されません。
name : MBean 名 descriptorType : 必ず mbean displayName : ディスプレイで使用される属性の名前 persistPolicy : OnUpdate、OnTimer、NoMoreOftenThan、Always、Never persistLocation : 完全修飾ディレクトリ名。MBean は、必要に応じてこのディレクトリに保持される persistFile : MBean を保持するファイルの名前 persistPeriod : 秒数。OnTime および NoMoreOftenThan PersistPolicy の持続サイクルの頻度を表す currencyTimeLimit : 値の有効期間。<0 常に無効、=0 常に有効、>0 秒 log : t の場合はすべての通知をログに記録、f の場合は通知を記録しない logfile : イベントの記録先ファイルの完全修飾ファイル名 visibility : 1 〜 4 の値のうち、1: 常に可視、4: ほとんど不可視 export : この MBean をエクスポートまたは公開するとき使用する名前。ほかの JMX エージェントはこの名前を使って MBean を検索する presentationString : データ表現と MBean を関連付けるための XML 形式の文字列
デフォルトの記述子は、name=mbeanName,descriptorType=mbean, displayName=this.getClassName(), persistPolicy=never,log=F,export=F,visibility=1 です。記述子にこれらのいずれかのフィールドが不足している場合、不足しているフィールドがデフォルト値で追加されます。
注: 以前のバージョンの仕様との不整合があるため、currencyTimeLimit
にはゼロ以下の値を使用しないようにしてください。キャッシュに入った値が有効でないことを示したい場合は、currencyTimeLimit
フィールドを省略します。この値が常に有効であることを示したい場合は、このフィールドに非常に大きい値を指定します。
MBeanException
- 分散通信 Exception をラップする
RuntimeOperationsException
- 記述子の取得時に RuntimeException
が発生した場合setMBeanDescriptor(javax.management.Descriptor)
void setMBeanDescriptor(Descriptor inDescriptor) throws MBeanException, RuntimeOperationsException
getMBeanDescriptor
メソッドの javadoc を参照してください。
inDescriptor
- 設定する記述子
MBeanException
- 分散通信 Exception をラップする
RuntimeOperationsException
- 記述子が無効な場合、IllegalArgumentException をラップするgetMBeanDescriptor()
ModelMBeanAttributeInfo getAttribute(String inName) throws MBeanException, RuntimeOperationsException
inName
- 取得する ModelMBeanAttributeInfo の名前。この名前の ModelMBeanAttributeInfo が存在しない場合は null が返される
MBeanException
- 分散通信 Exception をラップする
RuntimeOperationsException
- 属性名が null の場合 IllegalArgumentException をラップするModelMBeanOperationInfo getOperation(String inName) throws MBeanException, RuntimeOperationsException
inName
- 取得する ModelMBeanOperationInfo の名前。この名前の ModelMBeanOperationInfo が存在しない場合は null が返される
MBeanException
- 分散通信 Exception をラップする
RuntimeOperationsException
- オペレーション名が null の場合 IllegalArgumentException をラップするModelMBeanNotificationInfo getNotification(String inName) throws MBeanException, RuntimeOperationsException
inName
- 取得する ModelMBeanNotificationInfo の名前。この名前の ModelMBeanNotificationInfo が存在しない場合は null が返される
MBeanException
- 分散通信 Exception をラップする
RuntimeOperationsException
- 通知名が null の場合 IllegalArgumentException をラップするObject clone()
MBeanAttributeInfo[] getAttributes()
MBeanAttributeInfo
オブジェクトによって記述されます。
MBeanAttributeInfo
オブジェクトの配列String getClassName()
MBeanInfo
によって記述された MBean の Java クラスの名前を返します。
MBeanConstructorInfo[] getConstructors()
MBeanConstructorInfo
オブジェクトによって記述されます。
MBeanConstructorInfo
オブジェクトの配列String getDescription()
MBeanNotificationInfo[] getNotifications()
MBeanNotificationInfo
オブジェクトによって記述されます。
ModelMBean は、アプリケーションによって指定された通知のほかに、常に 2 つの追加通知を送信できます。
MBeanNotificationInfo
オブジェクトの配列MBeanOperationInfo[] getOperations()
MBeanOperationInfo
オブジェクトによって記述されます。
MBeanOperationInfo
オブジェクトの配列
|
JavaTM 2 Platform Standard Ed. 5.0 |
|||||||||
前のクラス 次のクラス | フレームあり フレームなし | |||||||||
概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド |
Copyright 2004 Sun Microsystems, Inc. All rights reserved. Use is subject to license terms. Documentation Redistribution Policy も参照してください。