UDDI ノード層の管理

UDDI レジストリー管理インターフェースを使用すると、層の公開限界を設定できます。これによって、パブリッシャーが UDDI レジストリー内に保存できる UDDI エンティティーのタイプごとの数を管理できます。

層には、ID、管理者が定義する名前と説明、および限界セットが、エンティティーのタイプごとに 1 つずつあります。 UddiNode MBean では、層を管理するための以下の操作を提供します。
  • createTier
  • getTierDetail
  • getTierInfos
  • getLimitInfos
  • setDefaultTier
  • updateTier
  • deleteTier
  • getUserCount

上記操作の実例については、WebSphere® Application Server のサンプル集で、UDDI レジストリー・サンプルの ManageTiersSample クラスを参照してください。

createTier
各 UDDI エンティティーに対する公開限界を指定した新しい層を作成します。
  1. TierInfo オブジェクトで層の名前と説明を設定します。
    String tierName = "Tier 100";
    String tierDescription = "A tier with all limits set to 100.";
    
    TierInfo tierInfo = new TierInfo(null, tierName, tierDescription);
  2. 各 UDDI エンティティーの Limit オブジェクトを定義します。
    List limits = new ArrayList();
        
    Limit businessLimit = new Limit();
    businessLimit.setIntegerValue(100);
    
    businessLimit.setId(LimitConstants.BUSINESS_LIMIT);
    
    Limit serviceLimit = new Limit();
    serviceLimit.setIntegerValue(100);
    serviceLimit.setId(LimitConstants.SERVICE_LIMIT);
    
    Limit bindingLimit = new Limit();
    bindingLimit.setIntegerValue(100);
    bindingLimit.setId(LimitConstants.BINDING_LIMIT);
    
    Limit tModelLimit = new Limit();
    tModelLimit.setIntegerValue(100);
    tModelLimit.setId(LimitConstants.TMODEL_LIMIT);
    
    Limit assertionLimit = new Limit();
    assertionLimit.setIntegerValue(100);
    
    assertionLimit.setId(LimitConstants.ASSERTION_LIMIT);
    limits.add(businessLimit);
    limits.add(serviceLimit);
    limits.add(bindingLimit);
    limits.add(tModelLimit);
    limits.add(assertionLimit);
  3. Tier オブジェクトを作成します。
    Tier tier = new Tier(tierInfo, limits);
  4. createTier 操作を呼び出し、作成した層を取得します。
    Tier createdTier = uddiNode.createTier(tier);
  5. 作成した層の生成済み層 ID を検査します。
    tierId = createdTier.getId();
    System.out.println("created tier has ID: " + tierId);
getTierDetail
指定した層 ID の Tier オブジェクトを戻します。 Tier クラスには、層 ID、層名および説明に対する getter メソッド (管理者により設定) と、その層に割り振られた UDDI パブリッシャーが公開できる UDDI エンティティーのタイプごとの数を指定する Limit オブジェクトの集合があります。isDefault メソッドは、その層がデフォルト層、 すなわち自動登録が使用可能になっている場合に UDDI パブリッシャーに割り振られる層であるかどうかを示します。
  • getTierDetail 操作を呼び出します。
    Tier tier = uddiNode.getTierDetail("2");
updateTier
提供された Tier オブジェクトで層の内容を更新します。
  1. 既存の Tier オブジェクトを更新します。このオブジェクトは新しくインスタンス化することも、getTierDetail 操作または createTier 操作で戻すこともできます。次の例では、 層の名前、説明、および更新される制限を除くすべてのしきい値が保持されます。
    modifiedTier.setName(tier.getName());
    modifiedTier.setDescription(tier.getDescription());
    
    Limit tModelLimit = new Limit();
    tModelLimit.setId(LimitConstants.TMODEL_LIMIT);
    tModelLimit.setIntegerValue(50);
    
    List updatedLimits = new ArrayList();
    updatedLimits.add(tModelLimit);
    
    modifiedTier.setLimits(updatedLimits);
  2. updateTier 操作を呼び出します。
    uddiNode.updateTier(modifiedTier);
getTierInfos
軽量の層記述子オブジェクト (TierInfo) の集合を戻します。このオブジェクトには、層 ID、層の名前、層の説明、およびその層がデフォルト層かどうかという情報が含まれます。
  1. getTierInfos 操作を呼び出します。
    List tierInfos = uddiNode.getTierInfos();
  2. 各 TierInfo オブジェクトの内容を出力します。
    if (tierInfos != null) {
    
       for (Iterator iter = tierInfos.iterator(); iter.hasNext();) {
          TierInfo tierInfo = (TierInfo) iter.next();
          System.out.println(tierInfo);
       }
    } 
setDefaultTier
任意の層 ID の層をデフォルト層に指定します。 デフォルト層とは、自動登録が使用可能になっている場合に UDDI パブリッシャーに割り振られる層です。 通常、これを公開制限の低い層に設定して、ユーザーが不注意で過多のエンティティーを公開するのを防ぎます。
  • setDefaultTier 操作を呼び出します。
    uddiNode.setDefaultTier("4");
deleteTier
指定した ID の層を除去します。 層を除去できるのは、その層に UDDI パブリッシャーが割り当てられておらず、 その層がデフォルト層ではない場合に限られます。
  1. deleteTier 操作を呼び出します。
    uddiNode.deleteTier("4");
getUserCount
層 ID で指定した層に割り当てられている UDDI パブリッシャーの数を戻します。
  • getUserCount 操作を呼び出します。
    Integer userCount = uddiNode.getUserCount("4");
    System.out.println("users in tier 4: " + userCount.intValue());
getLimitInfos
各タイプの UDDI エンティティーのしきい値を表す Limit オブジェクトの集合を戻します。 Limit は、Tier オブジェクト内で使用されます。

getLimitInfos:

各タイプの UDDI エンティティーのしきい値を表す Limit オブジェクトの集合を戻します。 Limit は、Tier オブジェクト内で使用されます。
  1. getLimitInfos 操作を呼び出します。
    List limits = uddiNode.getLimitInfos();
  2. 各 Limit オブジェクトの ID およびしきい値を出力します。
    for (Iterator iter = limits.iterator(); iter.hasNext();) {
       Limit limit = (Limit) iter.next();
    
       System.out.println("limit ID: " + limit.getId() + ", limit value: " 
                          + limit.getIntegerValue());
    }

トピックのタイプを示すアイコン 参照トピック



タイム・スタンプ・アイコン 最終更新: last_date
http://www14.software.ibm.com/webapp/wsbroker/redirect?version=cord&product=was-nd-mp&topic=rwsu_ai_t
ファイル名:rwsu_ai_t.html