|
JavaTM 2 Platform Standard Ed. 5.0 |
|||||||||
前のクラス 次のクラス | フレームあり フレームなし | |||||||||
概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド |
public interface Relation
関係サービスによって管理される関係を表す MBean クラスは、このインタフェースを実装する必要があります。
プロパティやメソッドを持たず、ロールだけ持つ単純な関係は、関係サービスで直接作成できます。こうした関係は、RelationSupport オブジェクトとして、関係サービスによって内部で処理されます。
複数のプロパティやメソッドを持つ、より複雑な関係を表現したい場合は、Relation インタフェースを実装する独自のクラスを用意する必要があります。このクラスは、RelationSupport クラスから継承するか、インタフェース (RelationSupport オブジェクトメンバ、またはその委譲) を実装することによって取得できます。
こうしたユーザ関係クラスを指定することにより、プロパティやメソッドを導入できます。これらのプロパティやメソッドは、リモート管理用に公開する必要があります。つまり、すべてのユーザ関係クラスは MBean クラスでなければなりません。
メソッドの概要 | |
---|---|
RoleResult |
getAllRoles()
関係に含まれるすべてのロールを返します。 |
Map |
getReferencedMBeans()
関係のさまざまなロールで参照される MBean を取得します。 |
String |
getRelationId()
関係サービス内の関係を一意に識別するために使用される関係識別子を返します。 |
ObjectName |
getRelationServiceName()
関係を処理する関係サービスの ObjectName を返します。 |
String |
getRelationTypeName()
関連付けられた関係型の名前を返します。 |
List |
getRole(String theRoleName)
指定されたロール名のロール値を取得します。 |
Integer |
getRoleCardinality(String theRoleName)
指定されたロール内で現在参照されている MBean の数を返します。 |
RoleResult |
getRoles(String[] theRoleNameArray)
指定された名前のロールの値を取得します。 |
void |
handleMBeanUnregistration(ObjectName theObjName,
String theRoleName)
ロールに含まれる参照対象の MBean の登録が解除された場合に関係サービスによって使用されるコールバックです。 |
RoleList |
retrieveAllRoles()
読み取りモードをチェックしないで、関係に含まれるすべてのロールを返します。 |
void |
setRole(Role theRole)
指定されたロールを設定します。 |
RoleResult |
setRoles(RoleList theRoleList)
指定されたロールを設定します。 |
メソッドの詳細 |
---|
List getRole(String theRoleName) throws IllegalArgumentException, RoleNotFoundException, RelationServiceNotRegisteredException
ロールが存在し、関係型に従って読み取り可能かどうかをチェックします。
theRoleName
- ロール名
IllegalArgumentException
- ロール名が null の場合
RoleNotFoundException
- 次の条件が成立する場合:- 指定された名前のロールが存在しない場合
- ロールが読み取り不可な場合
RelationServiceNotRegisteredException
- 関係サービスが MBean Server に登録されていない場合setRole(javax.management.relation.Role)
RoleResult getRoles(String[] theRoleNameArray) throws IllegalArgumentException, RelationServiceNotRegisteredException
各ロールが存在し、関係型に従って読み取り可能かどうかをチェックします。
theRoleNameArray
- 取得されるロールの名前から成る配列
IllegalArgumentException
- ロール名が null の場合
RelationServiceNotRegisteredException
- 関係サービスが MBean Server に登録されていない場合setRoles(javax.management.relation.RoleList)
Integer getRoleCardinality(String theRoleName) throws IllegalArgumentException, RoleNotFoundException
theRoleName
- ロール名
IllegalArgumentException
- ロール名が null の場合
RoleNotFoundException
- 指定された名前のロールが存在しない場合RoleResult getAllRoles() throws RelationServiceNotRegisteredException
RelationServiceNotRegisteredException
- 関係サービスが MBean Server に登録されていない場合RoleList retrieveAllRoles()
void setRole(Role theRole) throws IllegalArgumentException, RoleNotFoundException, RelationTypeNotFoundException, InvalidRoleValueException, RelationServiceNotRegisteredException, RelationNotFoundException
関係の関係型に含まれている対応するロール定義に従って、ロールをチェックします。
通知を送信します。関係が MBean であるかどうかによって、RelationNotification の型は RELATION_BASIC_UPDATE または RELATION_MBEAN_UPDATE になります。
theRole
- 設定されるロール (名前と新しい値)
IllegalArgumentException
- ロールが null の場合
RoleNotFoundException
- ロールが書き込み可能でない場合 (ロールの初期化時には、書き込みアクセスモードのチェックは行われない)
InvalidRoleValueException
- ロールに対して提供された値が無効な場合:- 指定された値に含まれる参照対象の MBean の数が予想最小値より小さい場合
- 指定された値に含まれる参照対象の MBean の数が予想最大値を超えている場合
- 値に含まれる参照対象の MBean のうち 1 つが、そのロールの MBean クラスのオブジェクトでない場合
- そのロールの MBean が存在しない場合
RelationServiceNotRegisteredException
- 関係サービスが MBean Server に登録されていない場合
RelationTypeNotFoundException
- 関係サービスに関係型が宣言されていない場合
RelationNotFoundException
- 関係サービスに関係が追加されていない場合getRole(java.lang.String)
RoleResult setRoles(RoleList theRoleList) throws IllegalArgumentException, RelationServiceNotRegisteredException, RelationTypeNotFoundException, RelationNotFoundException
関係の関係型に含まれている対応するロール定義に従って、ロールをチェックします。
ロールが更新されるたびに通知を送信します。関係が MBean であるかどうかによって、RelationNotification の型は RELATION_BASIC_UPDATE または RELATION_MBEAN_UPDATE になります。
theRoleList
- 設定されるロールのリスト
IllegalArgumentException
- ロール名が null の場合
RelationServiceNotRegisteredException
- 関係サービスが MBean Server に登録されていない場合
RelationTypeNotFoundException
- 関係サービスに関係型が宣言されていない場合
RelationNotFoundException
- 関係サービスに関係 MBean が追加されていない場合getRoles(java.lang.String[])
void handleMBeanUnregistration(ObjectName theObjName, String theRoleName) throws IllegalArgumentException, RoleNotFoundException, InvalidRoleValueException, RelationServiceNotRegisteredException, RelationTypeNotFoundException, RelationNotFoundException
関係サービスは、このメソッドを呼び出して、関係に、登録解除の影響を反映するためのアクションを取らせます。
このメソッドは、ユーザからは呼び出されません。
現在の実装は、現在の値 (参照対象の MBean の ObjectName のリスト) を使ってロールを設定します。登録解除されているものは使用しません。
theObjName
- 登録解除された MBean の ObjectNametheRoleName
- MBean の参照に使用されるロール名
IllegalArgumentException
- パラメータが null の場合
RoleNotFoundException
- 関係内にロールが存在しないか、書き込み不可である場合
InvalidRoleValueException
- ロールがロール情報に準拠していない場合 (関係サービスから呼び出された場合は起こり得ない条件)
RelationServiceNotRegisteredException
- 関係サービスが MBean Server に登録されていない場合
RelationTypeNotFoundException
- 関係サービスに関係型が宣言されていない場合
RelationNotFoundException
- このメソッドが、関係サービスに追加されていない関係 MBean に対して呼び出された場合Map getReferencedMBeans()
ObjectName → String (ロール名) から成る ArrayList
String getRelationTypeName()
ObjectName getRelationServiceName()
String getRelationId()
|
JavaTM 2 Platform Standard Ed. 5.0 |
|||||||||
前のクラス 次のクラス | フレームあり フレームなし | |||||||||
概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド |
Copyright 2004 Sun Microsystems, Inc. All rights reserved. Use is subject to license terms. Documentation Redistribution Policy も参照してください。