|
JavaTM 2 Platform Standard Ed. 6 |
|||||||||
上一個類別 下一個類別 | 框架 無框架 | |||||||||
摘要: 巢狀 | 欄位 | 建構子 | 方法 | 詳細資訊: 欄位 | 建構子 | 方法 |
public interface Relation
此介面必須由任何 MBean 類別(期望表示為一種使用 Relation Service 管理的關係)來實作。
簡單的關係(即只有角色,沒有屬性或方法)可以由 Relation Service 直接創建(表示為 RelationSupport 物件,由 Relation Service 內部處理)。
如果使用者希望表示更複雜的關係(包括屬性和/或方法),則其必須提供自己實作 Relation 介面的類別。這可以通過從 RelationSupport 類別繼承得到,也可以通過實作該介面得到(全權或者委託給 RelationSupport 物件成員)。
指定這樣的使用者關係類別是為了引入屬性和/或方法。這些都要向遠端管理公開。因此,這意味著任何使用者關係類別都必須是一個 MBean 類別。
方法摘要 | |
---|---|
RoleResult |
getAllRoles()
返回該關係中存在的所有角色。 |
Map<ObjectName,List<String>> |
getReferencedMBeans()
檢索在該關係的各種角色中參考的 MBean。 |
String |
getRelationId()
返回關係標識符(用於唯一標識 Relation Service 內的關係)。 |
ObjectName |
getRelationServiceName()
返回處理關係的 Relation Service 的 ObjectName。 |
String |
getRelationTypeName()
返回相關關係型別的名稱。 |
List<ObjectName> |
getRole(String roleName)
檢索給定角色名稱的角色值。 |
Integer |
getRoleCardinality(String roleName)
返回當前在給定角色中參考的 MBean 數。 |
RoleResult |
getRoles(String[] roleNameArray)
檢索具有給定名稱的角色值。 |
void |
handleMBeanUnregistration(ObjectName objectName,
String roleName)
在註銷角色中參考的 MBean 時由 Relation Service 使用的回調。 |
RoleList |
retrieveAllRoles()
返回關係中的所有角色,不檢查讀取網要。 |
void |
setRole(Role role)
設置給定角色。 |
RoleResult |
setRoles(RoleList roleList)
設置給定的角色。 |
方法詳細資訊 |
---|
List<ObjectName> getRole(String roleName) throws IllegalArgumentException, RoleNotFoundException, RelationServiceNotRegisteredException
按照關係型別檢查角色是否存在及是否可讀。
roleName
- 角色名稱
IllegalArgumentException
- 如果為 null 角色名稱
RoleNotFoundException
- 如果:
- 不存在具有給定名稱的角色
- 角色不可讀。
RelationServiceNotRegisteredException
- 如果 Relation Service 未在 MBean Server 中註冊setRole(javax.management.relation.Role)
RoleResult getRoles(String[] roleNameArray) throws IllegalArgumentException, RelationServiceNotRegisteredException
按照關係型別檢查每個角色是否存在及是否可讀。
roleNameArray
- 要檢索的角色名稱的陣列
IllegalArgumentException
- 如果是 null 角色名稱
RelationServiceNotRegisteredException
- 如果 Relation Service 未在 MBean Server 中註冊。setRoles(javax.management.relation.RoleList)
Integer getRoleCardinality(String roleName) throws IllegalArgumentException, RoleNotFoundException
roleName
- 角色名稱
IllegalArgumentException
- 如果是 null 角色名稱
RoleNotFoundException
- 如果不存在具有給定名稱的角色RoleResult getAllRoles() throws RelationServiceNotRegisteredException
RelationServiceNotRegisteredException
- 如果 Relation Service 未在 MBean Server 中註冊RoleList retrieveAllRoles()
void setRole(Role role) throws IllegalArgumentException, RoleNotFoundException, RelationTypeNotFoundException, InvalidRoleValueException, RelationServiceNotRegisteredException, RelationNotFoundException
將按照其在關係的關係型別中提供的相應角色定義檢查角色
將發送通知(帶型別 RELATION_BASIC_UPDATE 或 RELATION_MBEAN_UPDATE 的 RelationNotification,具體取決於該關係是否為 MBean)
role
- 要設置的角色(名稱和新值)
IllegalArgumentException
- 如果是 null 角色。
RoleNotFoundException
- 如果不存在具有指定名稱的角色,或者該角色不可寫(初始化角色時未執行寫入存取網要測試)。
InvalidRoleValueException
- 如果為角色提供的值無效,例如:
- 給定值中參考的 MBean 數小於期望的最小程度;
- 提供的值中參考的 MBean 數超過期望的最大程度;
- 該值中參考的 MBean 的一個物件不是該角色期望的 MBean 類別的物件;
- 如果不存在為該角色提供的 MBean。
RelationServiceNotRegisteredException
- 如果 Relation Service 未在 MBean Server 中註冊。
RelationTypeNotFoundException
- 如果在 Relation Service 中尚未宣告該關係型別。
RelationNotFoundException
- 如果尚未在 Relation Service 中添加關係。getRole(java.lang.String)
RoleResult setRoles(RoleList roleList) throws IllegalArgumentException, RelationServiceNotRegisteredException, RelationTypeNotFoundException, RelationNotFoundException
將按照其在關係的關係型別中提供的相應角色定義檢查角色
每個更新的角色將發送一個通知(帶型別 RELATION_BASIC_UPDATE 或 RELATION_MBEAN_UPDATE 的 RelationNotification,具體取決於該關係是否為 MBean)。
roleList
- 要設置的角色列表
IllegalArgumentException
- 如果是 null 角色列表;
RelationServiceNotRegisteredException
- 如果 Relation Service 未在 MBean Server 中註冊;
RelationTypeNotFoundException
- 如果在 Relation Service 中尚未宣告該關係型別;
RelationNotFoundException
- 如果尚未在 Relation Service 中添加關係 MBean。getRoles(java.lang.String[])
void handleMBeanUnregistration(ObjectName objectName, String roleName) throws IllegalArgumentException, RoleNotFoundException, InvalidRoleValueException, RelationServiceNotRegisteredException, RelationTypeNotFoundException, RelationNotFoundException
Relation Service 將調用此方法,以讓該關係採取行動來反映這種註銷的影響。
小心,不期望使用者調用此方法。
當前實作是為了用其當前值(參考的 MBean 的 ObjectName 列表)而不用註銷的值設置角色。
objectName
- 註銷的 MBean 的 ObjectNameroleName
- 在其中參考 MBean 的角色名稱
IllegalArgumentException
- 如果是 null 參數;
RoleNotFoundException
- 如果角色不在關係中或不可寫;
InvalidRoleValueException
- 如果角色值不遵循相關角色資訊(這永遠不會在從 Relation Service 中調用時發生);
RelationServiceNotRegisteredException
- 如果 Relation Service 未在 MBean Server 註冊;
RelationTypeNotFoundException
- 如果在 Relation Service 中尚未宣告該關係型別;
RelationNotFoundException
- 如果未在 Relation Service 中添加的關係 MBean 調用此方法。Map<ObjectName,List<String>> getReferencedMBeans()
ObjectName -> ArrayList of String(角色名)
String getRelationTypeName()
ObjectName getRelationServiceName()
String getRelationId()
|
JavaTM 2 Platform Standard Ed. 6 |
|||||||||
上一個類別 下一個類別 | 框架 無框架 | |||||||||
摘要: 巢狀 | 欄位 | 建構子 | 方法 | 詳細資訊: 欄位 | 建構子 | 方法 |
版權所有 2008 Sun Microsystems, Inc. 保留所有權利。請遵守GNU General Public License, version 2 only。