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 オブジェクトには、 どのような Policy オブジェクトも含まれていません。この振る舞いにより、 クライアントは、1 つの要求に含まれるポリシー・セット全体を検索しなくても、 既知のポリシー・グループ (およびその ID) を判別することができます。ポリシー・グループ内のポリシーを検索する場合は、getPolicyGroup 操作を使用します。
- getPolicyGroups 操作を呼び出します。
- getPolicyGroup
- 指定した ID の PolicyGroup オブジェクトを戻します。
- ポリシー・グループ ID をストリングに変換します。
String groupId = Integer.toString(PolicyConstants.REG_APIS_GROUP);
- getPolicyGroup 操作を呼び出します。
PolicyGroup policyGroup = uddiNode.getPolicyGroup(groupId);
- ポリシー・グループ ID をストリングに変換します。
- getPolicy
- 指定した ID の Policy オブジェクトを戻します。
構成プロパティーと同様、ポリシー・オブジェクトにも、ID、名前と説明のキー、型、値、およびそのポリシーが読み取り専用か、ノードの初期化に必要かを指定する指標があります。
- ポリシー ID をストリングに変換します。
String policyId = Integer.toString( PolicyConstants.REG_AUTHORIZATION_FOR_INQUIRY_API);
- getPolicy 操作を呼び出します。
Policy policy = uddiNode.getPolicy(policyId);
- ポリシー ID をストリングに変換します。
- updatePolicy
- 指定した ID の Policy オブジェクトの値を更新します。
有効なポリシー ID が、それに対応するポリシーの目的の説明とともに、
PolicyConstants で指定されます。Policy オブジェクトで setter メソッドを呼び出すことはできますが、
UDDI ノードでは、この値だけが更新されます。ポリシーを更新するには、通常、以下のステップを使用します。
- Policy オブジェクトを作成し、その ID を設定します。
Policy updatedPolicy = new Policy(); String policyId = Integer.toString(PolicyConstants.REG_SUPPORTS_UUID_KEYS); updatedPolicy.setId(policyId);
- 値を設定します。
updatedPolicy.setBooleanValue(true);
- updatePolicy 操作を呼び出します。
uddiNode.updatePolicy(updatedPolicy);
- Policy オブジェクトを作成し、その ID を設定します。
- updatePolicies
- 一度の要求で複数の Policy オブジェクトを更新します。
updatePolicy 操作の場合と同様に、Policy オブジェクトをセットアップします。
- 更新済みのポリシーをリストに追加します。
List updatedPolicies = new ArrayList(); updatedPolicies.add(updatedPolicy1); updatedPolicies.add(updatedPolicy2);
- updatePolicies 操作を呼び出します。
uddiNode.updatePolicies(updatedPolicies);
- 更新済みのポリシーをリストに追加します。