Service Registry 3.1 開発ガイド

レジストリ内のオブジェクトの状態の変更

オブジェクトを Service Registry に発行したり、オブジェクトを何らかの形で変更したりするときは、オブジェクトの監査証跡に AuditableEvent オブジェクトを追加します。これらのイベントやこれらに関する情報の取得方法の詳細については、「オブジェクトの監査証跡の取得」を参照してください。

ほかのアクションの結果として多くのイベントが作成されます。


注 –

このリリースでは、オブジェクトのバージョン管理はデフォルトで無効になっています。オブジェクトのバージョン管理を有効にするには、管理者は、『Service Registry 3.1 管理ガイド』「レジストリオブジェクトのバージョン管理の有効化」で説明したタスクを実行する必要があります。通常、管理者は一部のオブジェクト型のバージョン管理を有効にできますが、すべてはできません。


オブジェクトの状態を明示的に変更することもできます。さまざまなバージョンのオブジェクトが混在しており、何らかのバージョン管理を行う必要がある本稼働環境においては、この機能が役立つ場合があります。たとえば、あるオブジェクトのバージョンを一般的に使用するものとして承認し、古いバージョンを非推奨にしてから削除する、といったことが可能です。オブジェクトを非推奨にしたあとで変更したくなったら、その非推奨を解除できます。登録ユーザーは、自分が所有するオブジェクトに対してのみ、このようなアクションを実行できます。

LifeCycleManagerImpl.approveObjects メソッドのシグニチャーは次のとおりです。

public BulkResponse approveObjects(java.util.Collection keys)
    throws JAXRException

オブジェクトを非推奨にするコードは通常、次のようになります。

String id = id-string;
Key key = blcm.createKey(id);
Collection keys = new ArrayList();
keys.add(key);

// deprecate the object
blcm.deprecateObjects(keys);

これらのアクションへのアクセスを、レジストリ管理者などの特定のユーザー、ユーザーロール、およびユーザーグループに制限することが可能です。「オブジェクトへのアクセスの制御」を参照してください。

RegistryObject の状態を変えないアクションに対しては、AuditableEvent は作成されません。たとえば、クエリーを実行しても AuditableEvent は生成されません。また、ある RegistryObjectRegistryPackage に追加したり、そのオブジェクトをソースまたはターゲットに持つ Association を作成したりしても、そのオブジェクトに対して AuditableEvent が生成されることはありません。

レジストリ内のオブジェクトの状態の変更: 例

オブジェクトの承認、非推奨、非推奨解除の例については、INSTALL/registry-samples/auditable-events/src にあるサンプル、JAXRApproveObject.javaJAXRDeprecateObject.java、および JAXRUndeprecateObject.java を参照してください。各サンプルは、指定された一意の識別子を持つオブジェクトに対してアクションを実行したあと、そのオブジェクトの監査証跡を表示します。このため、ユーザーはサンプルの実行結果を確認できます。

すべてのサンプルについて、ユーザーが指定するオブジェクトはそのユーザーが作成したものである必要があります。

ProcedureJAXRApproveObjectJAXRDeprecateObject、および JAXRUndeprecateObject サンプルを実行するには

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

  2. 次のコマンドを入力します。


    Ant-base/ant approve-obj -Did=id-string
    
  3. 次のコマンドを入力します。


    Ant-base/ant deprecate-obj -Did=id-string
    
  4. 次のコマンドを入力します。


    Ant-base/ant undeprecate-obj -Did=id-string