Service Registry 3.1 開発ガイド

型によるオブジェクトの検索

指定された型を持つすべてのオブジェクトを検索するには、BusinessQueryManagerImpl.findObjects メソッドの最初の引数だけを指定し、必要に応じて FindQualifier オブジェクトのコレクションも指定します。たとえば、typeStringLifeCycleManager.SERVICE という値を持つ文字列である場合、次のコードは、Service Registry 内のすべてのサービスを検索し、アルファベット順にソートします。

Collection findQualifiers = new ArrayList();
findQualifiers.add(FindQualifier.SORT_BY_NAME_ASC);

BulkResponse response = bqm.findObjects(typeString,
     findQualifiers, null, null, null, null, null);

findObjects の最初の引数にはワイルドカードを使用できません。

型によるオブジェクトの検索: 例

型によってオブジェクトを検索する例についてはINSTALL/registry-samples/search-object-type/src ディレクトリにある JAXRSearchByObjectType.java を参照してください。

ProcedureJAXRSearchByObjectType サンプルを実行するには

  1. INSTALL/registry-samples/search-object-type ディレクトリに移動します。

  2. 次のコマンドを入力して string 値を指定します。


    Ant-base/ant run -Dtype=type-name
    

    次のコマンド行のように、ワイルドカードを使わずに型の名前を正確に指定してください。


    Ant-base/ant run -Dtype=federation
    

    JAXRSearchByObjectType プログラムは、できるだけ簡単にユーザー入力を受け取るために、文字列の引数としてオブジェクト型を QueryManager.findObjects に渡します。ただし、開発者は、LifeCycleManager インタフェースによって定義された定数を使用するべきです。

    このプログラムは、大文字と小文字を区別せずに type-name で指定された型を持つすべてのオブジェクトを検索し、オブジェクトの名前、説明、および一意の識別子を表示します。最後に、検索されたオブジェクトの数が表示されます。