JavaTM Platform
Standard Ed. 6

javax.management.relation
인터페이스 Relation

기존의 서브 인터페이스의 일람:
RelationSupportMBean
기존의 구현 클래스의 일람:
RelationSupport


public interface Relation

관계 서비스에 의해 관리되는 관계를 나타내는 MBean 클래스는, 이 인터페이스를 구현할 필요가 있습니다.

프로퍼티이나 메소드를 가지지 않고, 롤만 가지는 단순한 관계는, 관계 서비스로 직접 작성할 수 있습니다. 이러한 관계는, RelationSupport 객체로서 관계 서비스에 의해 내부에서 처리됩니다.

복수의 프로퍼티이나 메소드를 가지는, 보다 복잡한 관계를 표현하고 싶은 경우는, Relation 인터페이스를 구현하는 독자적인 클래스를 준비할 필요가 있습니다. 이 클래스는, RelationSupport 클래스로부터 상속하는지, 인터페이스 (RelationSupport 객체 멤버, 또는 그 위양)를 구현하는 것에 의해 취득할 수 있습니다.

이러한 사용자 관계 클래스를 지정하는 것으로써, 프로퍼티이나 메소드를 도입할 수 있습니다. 이러한 프로퍼티이나 메소드는, remote administration용으로 공개할 필요가 있습니다. 즉, 모든 사용자 관계 클래스는 MBean 클래스가 아니면 안됩니다.

도입된 버젼:
1.5

메소드의 개요
 RoleResult getAllRoles ()
          관계에 포함되는 모든 롤을 돌려줍니다.
 Map <ObjectName ,List <String >> getReferencedMBeans ()
          관계의 다양한 롤로 참조되는 MBean 를 가져옵니다.
 String getRelationId ()
          관계 서비스내의 관계를 일의에 식별하기 위해서 사용되는 관계 식별자를 돌려줍니다.
 ObjectName getRelationServiceName ()
          관계를 처리하는 관계 서비스의 ObjectName 를 돌려줍니다.
 String getRelationTypeName ()
          관련지을 수 있었던 관계형의 이름을 돌려줍니다.
 List <ObjectName > getRole (String  roleName)
          지정된 롤명의 롤치를 가져옵니다.
 Integer getRoleCardinality (String  roleName)
          지정된 롤내에서 현재 참조되고 있는 MBean 의 수를 돌려줍니다.
 RoleResult getRoles (String [] roleNameArray)
          지정된 이름의 롤의 값을 가져옵니다.
 void handleMBeanUnregistration (ObjectName  objectName, String  roleName)
          롤에 포함되는 참조 대상의 MBean 의 등록이 해제되었을 경우에 관계 서비스에 의해 사용되는 콜백입니다.
 RoleList retrieveAllRoles ()
          읽기 모드를 체크하지 않고, 관계에 포함되는 모든 롤을 돌려줍니다.
 void setRole (Role  role)
          지정된 롤을 설정합니다.
 RoleResult setRoles (RoleList  roleList)
          지정된 롤을 설정합니다.
 

메소드의 상세

getRole

List <ObjectName > getRole(String  roleName)
                         throws IllegalArgumentException ,
                                RoleNotFoundException ,
                                RelationServiceNotRegisteredException 
지정된 롤명의 롤치를 가져옵니다.

롤이 존재해, 관계형에 따라 읽어내 가능한가 어떤가를 체크합니다.

파라미터:
roleName - 롤명
반환값:
롤치가 되는 ObjectName 객체의 ArrayList
예외:
IllegalArgumentException - 롤명이 null 의 경우
RoleNotFoundException - 다음의 조건이 성립하는 경우:

- 지정된 이름의 롤이 존재하지 않는 경우

- 롤이 읽어내 불가인 경우

RelationServiceNotRegisteredException - 관계 서비스 하지만 MBean 서버에 등록되지 않은 경우
관련 항목:
setRole(javax.management.relation.Role)

getRoles

RoleResult  getRoles(String [] roleNameArray)
                    throws IllegalArgumentException ,
                           RelationServiceNotRegisteredException 
지정된 이름의 롤의 값을 가져옵니다.

각 롤이 존재해, 관계형에 따라 읽어내 가능한가 어떤가를 체크합니다.

파라미터:
roleNameArray - 취득되는 롤의 이름으로부터 완성되는 배열
반환값:
RoleResult 객체. 취득에 성공한 롤의 RoleList 와 취득되지 않았던 롤의 RoleUnresolvedList 를 포함한다
예외:
IllegalArgumentException - 롤명이 null 의 경우
RelationServiceNotRegisteredException - 관계 서비스 하지만 MBean 서버에 등록되지 않은 경우
관련 항목:
setRoles(javax.management.relation.RoleList)

getRoleCardinality

Integer  getRoleCardinality(String  roleName)
                           throws IllegalArgumentException ,
                                  RoleNotFoundException 
지정된 롤내에서 현재 참조되고 있는 MBean 의 수를 돌려줍니다.

파라미터:
roleName - 롤명
반환값:
롤내의 현재 참조되고 있는 MBean 의 수
예외:
IllegalArgumentException - 롤명이 null 의 경우
RoleNotFoundException - 지정된 이름의 롤이 존재하지 않는 경우

getAllRoles

RoleResult  getAllRoles()
                       throws RelationServiceNotRegisteredException 
관계에 포함되는 모든 롤을 돌려줍니다.

반환값:
RoleResult 객체. 취득에 성공한 롤의 RoleList 와 읽어낼 수 없었던 롤의 RoleUnresolvedList 를 포함한다
예외:
RelationServiceNotRegisteredException - 관계 서비스 하지만 MBean 서버에 등록되지 않은 경우

retrieveAllRoles

RoleList  retrieveAllRoles()
읽기 모드를 체크하지 않고, 관계에 포함되는 모든 롤을 돌려줍니다.

반환값:
RoleList

setRole

void setRole(Role  role)
             throws IllegalArgumentException ,
                    RoleNotFoundException ,
                    RelationTypeNotFoundException ,
                    InvalidRoleValueException ,
                    RelationServiceNotRegisteredException ,
                    RelationNotFoundException 
지정된 롤을 설정합니다.

관계의 관계형에 포함되어 있는 대응하는 롤 정의에 따라, 롤을 체크합니다.

통지를 송신합니다. 관계가 MBean 일지 어떨지에 의해, RelationNotification 의 형태는 RELATION_BASIC_UPDATE 또는 RELATION_MBEAN_UPDATE 가 됩니다.

파라미터:
role - 설정되는 롤 (이름과 새로운 값)
예외:
IllegalArgumentException - 롤이 null 의 경우
RoleNotFoundException - 지정된 이름의 롤이 존재하지 않는 경우, 또는 롤이 기입해 가능하지 않은 경우 (롤의 초기화시에는, 기입 액세스 모드의 체크는 행해지지 않는다)
InvalidRoleValueException - 롤에 대해서 제공되었다 값이 무효인 경우:

- 지정된 값에 포함되는 참조 대상의 MBean 의 수가 예상 최소치보다 작은 경우

- 지정된 값에 포함되는 참조 대상의 MBean 의 수가 예상 최대치를 넘고 있는 경우

- 값에 포함되는 참조 대상의 MBean 중 1 개(살)이, 그 롤의 MBean 클래스의 객체가 아닌 경우

- 그 롤의 MBean 가 존재하지 않는 경우

RelationServiceNotRegisteredException - 관계 서비스 하지만 MBean 서버에 등록되지 않은 경우
RelationTypeNotFoundException - 관계 서비스에 관계형이 선언되어 있지 않은 경우
RelationNotFoundException - 관계 서비스에 관계가 추가되어 있지 않은 경우
관련 항목:
getRole(java.lang.String)

setRoles

RoleResult  setRoles(RoleList  roleList)
                    throws IllegalArgumentException ,
                           RelationServiceNotRegisteredException ,
                           RelationTypeNotFoundException ,
                           RelationNotFoundException 
지정된 롤을 설정합니다.

관계의 관계형에 포함되어 있는 대응하는 롤 정의에 따라, 롤을 체크합니다.

롤이 갱신될 때마다 통지를 송신합니다. 관계가 MBean 일지 어떨지에 의해, RelationNotification 의 형태는 RELATION_BASIC_UPDATE 또는 RELATION_MBEAN_UPDATE 가 됩니다.

파라미터:
roleList - 설정되는 롤의 리스트
반환값:
RoleResult 객체. 설정에 성공한 롤의 RoleList 와 설정되지 않았던 롤의 RoleUnresolvedList 를 포함한다
예외:
IllegalArgumentException - 롤 리스트가 null 의 경우
RelationServiceNotRegisteredException - 관계 서비스 하지만 MBean 서버에 등록되지 않은 경우
RelationTypeNotFoundException - 관계 서비스에 관계형이 선언되어 있지 않은 경우
RelationNotFoundException - 관계 서비스에 관계 MBean 가 추가되어 있지 않은 경우
관련 항목:
getRoles(java.lang.String[])

handleMBeanUnregistration

void handleMBeanUnregistration(ObjectName  objectName,
                               String  roleName)
                               throws IllegalArgumentException ,
                                      RoleNotFoundException ,
                                      InvalidRoleValueException ,
                                      RelationServiceNotRegisteredException ,
                                      RelationTypeNotFoundException ,
                                      RelationNotFoundException 
롤에 포함되는 참조 대상의 MBean 의 등록이 해제되었을 경우에 관계 서비스에 의해 사용되는 콜백입니다.

관계 서비스는, 이 메소드를 호출해, 관계에, 등록 해제의 영향을 반영하기 위한 액션을 받게 합니다.

이 메소드는, 사용자로부터는 불려 가지 않습니다.

현재의 구현은, 현재의 값 (참조 대상의 MBean 의 ObjectName 의 리스트)을 사용해 롤을 설정합니다. 등록 해제되고 있는 것은 사용하지 않습니다.

파라미터:
objectName - 등록 해제된 MBean 의 ObjectName
roleName - MBean 의 참조에 사용되는 롤명
예외:
IllegalArgumentException - 파라미터가 null 의 경우
RoleNotFoundException - 관계내에 롤이 존재하지 않는지, 기입 불가인 경우
InvalidRoleValueException - 롤치가 관련하는 롤 정보에 준거하고 있지 않는 경우 (관계 서비스로부터 불려 갔을 경우는 일어날 수 없는 조건)
RelationServiceNotRegisteredException - 관계 서비스 하지만 MBean 서버에 등록되지 않은 경우
RelationTypeNotFoundException - 관계 서비스에 관계형이 선언되어 있지 않은 경우
RelationNotFoundException - 이 메소드가, 관계 서비스에 추가되어 있지 않은 관계 MBean 에 대해서 불려 갔을 경우

getReferencedMBeans

Map <ObjectName ,List <String >> getReferencedMBeans()
관계의 다양한 롤로 참조되는 MBean 를 가져옵니다.

반환값:
HashMap 매핑:

ObjectName → String (롤명)로부터 완성되는 ArrayList


getRelationTypeName

String  getRelationTypeName()
관련지을 수 있었던 관계형의 이름을 돌려줍니다.

반환값:
관계형의 이름

getRelationServiceName

ObjectName  getRelationServiceName()
관계를 처리하는 관계 서비스의 ObjectName 를 돌려줍니다.

반환값:
관계 서비스의 ObjectName

getRelationId

String  getRelationId()
관계 서비스내의 관계를 일의에 식별하기 위해서 사용되는 관계 식별자를 돌려줍니다.

반환값:
관계 ID

JavaTM Platform
Standard Ed. 6

버그의 보고와 기능의 요청
한층 더 자세한 API 레퍼런스 및 개발자 문서에 대해서는,Java SE 개발자용 문서를 참조해 주세요. 개발자전용의 상세한 해설, 개념의 개요, 용어의 정의, 버그의 회피책, 및 코드 실례가 포함되어 있습니다.

Copyright 2006 Sun Microsystems, Inc. All rights reserved. Use is subject to license terms . Documentation Redistribution Policy 도 참조해 주세요.