UDDI 노드 정책의 관리
UDDI 레지스트리 관리 인터페이스를 사용하여 UDDI API에 영향을 주는 정책을 관리할 수 있습니다.
UddiNode MBean에서는 UDDI API의 동작에 영향을 주는
정책을 관리하기 위해 다음 조작을
제공합니다.
- getPolicyGroups
- getPolicyGroup
- getPolicy
- updatePolicy
- updatePolicies
WebSphere® Application Server에 대한 샘플에서 UDDI 레지스트리 샘플에 있는 ManagePoliciesSample 클래스가 이러한 조작을 보여줍니다.
- getPolicyGroups
- PolicyGroup 오브젝트로 모든 정책 그룹의 콜렉션을 리턴합니다.
- getPolicyGroups 조작을 호출하십시오.
List policyGroups = uddiNode.getPolicyGroups();
- PolicyGroup에 각 콜렉션 멤버를 캐스트하십시오.
if (policyGroups != null) { for (Iterator iter = policyGroups.iterator(); iter.hasNext();) { PolicyGroup policyGroup = (PolicyGroup) iter.next(); System.out.println(policyGroup); } }
각 정책 그룹에 ID, 이름 및 설명 키가 있고, 샘플 패키지의 messages.properties 자원에서 찾을 수 있습니다. 비록 PolicyGroup 클래스에 getPolicies 메소드가 없더라도 getPolicyGroups 조작에 의해 리턴되는 PolicyGroup 오브젝트에 정책 오브젝트가 포함되지 않습니다. 이 동작 때문에 클라이언트는 하나의 요청에서 정책의 전체 설정을 검색하지 않고 알려진 정책 그룹 및 해당 ID를 판별할 수 있습니다. 정책 그룹에서 정책을 검색하려면 getPolicyGroup 조작을 사용하십시오.
- getPolicyGroups 조작을 호출하십시오.
- getPolicyGroup
- 제공된 ID로 PolicyGroup 오브젝트를
리턴합니다.
- 정책 그룹 ID를 문자열로 변환하십시오.
String groupId = Integer.toString(PolicyConstants.REG_APIS_GROUP);
- getPolicyGroup 조작을 호출하십시오.
PolicyGroup policyGroup = uddiNode.getPolicyGroup(groupId);
- 정책 그룹 ID를 문자열로 변환하십시오.
- getPolicy
- 지정된 ID에 대한 정책 오브젝트를 리턴합니다. 구성 특성으로
정책이 읽기 전용이거나 노드 초기화에 필요한지 여부를 지정하는
ID, 이름과 설명 키, 유형, 값 및 지표가 정책 오브젝트에
있습니다.
- 정책 ID를 문자열로 변환하십시오.
String policyId = Integer.toString( PolicyConstants.REG_AUTHORIZATION_FOR_INQUIRY_API);
- getPolicy 조작을 호출하십시오.
Policy policy = uddiNode.getPolicy(policyId);
- 정책 ID를 문자열로 변환하십시오.
- updatePolicy
- 지정된 ID를 가진
정책 오브젝트의 값을 업데이트합니다.
사용 가능한 정책 ID는 해당 정책 목적에 대한 설명으로
PolicyConstants에 지정됩니다. 정책 오브젝트에서 Setter 메소드를
호출할 수 있더라도, UDDI 노드에서 업데이트되는 유일한 값은
값입니다. 정책을 업데이트하려면
일반적으로 다음 단계를 사용하십시오.
- 정책 오브젝트를 작성하고 해당 ID를 설정하십시오.
Policy updatedPolicy = new Policy(); String policyId = Integer.toString(PolicyConstants.REG_SUPPORTS_UUID_KEYS); updatedPolicy.setId(policyId);
- 값을 설정하십시오.
updatedPolicy.setBooleanValue(true);
- updatePolicy 조작을 호출하십시오.
uddiNode.updatePolicy(updatedPolicy);
- 정책 오브젝트를 작성하고 해당 ID를 설정하십시오.
- updatePolicies
- 단일 요청에서 여러 정책 오브젝트를
업데이트합니다. updatePolicy 조작에 대한 것과 동일한 방식으로 정책 오브젝트를 설정하십시오.
- 목록에 업데이트된 정책을 추가하십시오.
List updatedPolicies = new ArrayList(); updatedPolicies.add(updatedPolicy1); updatedPolicies.add(updatedPolicy2);
- updatePolicies 조작을 호출하십시오.
uddiNode.updatePolicies(updatedPolicies);
- 목록에 업데이트된 정책을 추가하십시오.