Service Registry 3.1 開発ガイド

オブジェクトへの外部識別子の追加

    オブジェクトに外部識別子を追加するには、次の手順に従います。

  1. 使用する分類スキーマを検索または作成します。

  2. その分類スキーマを使って外部識別子を作成します。

外部識別子を作成するには、Concept 階層を持たない分類スキーマである「外部分類スキーマ」を使用します。外部識別子に名前と値を指定します。

Service Registry に付属しているデータベースには、外部分類スキーマは含まれていません。外部分類スキーマを使用するには、次のようなコードを使って事前にそれらを作成する必要があります。


ClassificationScheme extScheme =
     blcm.createClassificationScheme("NASDAQ",
         "OTC Stock Exchange");
String extSchemeId = "urn:devguide:samples:ClassificationScheme:NASDAQ";
Key extSchemeKey = blcm.createKey(extSchemeId);
extScheme.setKey(extSchemeKey);
Collection classSchemes = new ArrayList();
classSchemes.add(extScheme);
BulkResponse response = blcm.saveObjects(classSchemes);

通常、既存の分類スキーマを検索するには、「オブジェクトへの分類の追加」で説明したように BusinessQueryManager.getRegistryObject メソッドを呼び出します。

たとえば、次のコードでは、前の手順で作成した外部分類スキーマを検索しています。


String extSchemeId = "urn:devguide:samples:ClassificationScheme:NASDAQ";
ClassificationScheme extScheme =
     bqm.getRegistryObject(extSchemeId);

外部識別子を追加するには、LifeCycleManager.createExternalIdentifier メソッドを呼び出します。このメソッドは分類スキーマ、外部識別子の名前、外部識別子の値の 3 つの引数を取ります。続いて、その外部識別子をオブジェクトに追加します。


ExternalIdentifier extId =
     blcm.createExternalIdentifier(extScheme, "Sun",
         "SUNW);
object.addExternalIdentifier(extId);

「分類の追加: 例」で説明したサンプル INSTALL/registry-samples/publish-object/src/JAXRPublishObject.java は、オブジェクトへの外部識別子の追加も行います。