15.4.2 OADオペレーションを使用した登録解除

オブジェクトのインプリメンテーションは,OADインタフェースのどのオペレーションまたは属性を使用してもVisiBroker ORBオブジェクトの登録を解除できます。

unreg_implementation()
このオペレーションは,特定のリポジトリIDとオブジェクト名を使用してインプリメンテーションを登録解除したい場合に使用します。このオペレーションは,指定されたリポジトリIDとオブジェクト名を現在インプリメントしているすべてのプロセスを終了します。
unreg_interface()
このオペレーションは,特定のリポジトリIDだけを使用してインプリメンテーションを登録解除したい場合に使用します。このオペレーションは,指定されたリポジトリIDを現在インプリメントしているすべてのプロセスを終了します。
unregister_all()
このオペレーションは,すべてのインプリメンテーションを登録解除するために使用します。destroyActiveがtrueに設定されていないかぎり,アクティブなインプリメンテーションはどれも実行を続けます。下位互換性を保つため,unregister_all()メソッドも使用できます。これはunregister_all_destroy(false)メソッドを呼び出すのと同じです。
destroy_on_unregister
この属性は,関連したインプリメンテーションの登録解除時に,発生したすべてのプロセスを解放する場合に使用します。デフォルト値はfalseです。
IDLサンプル15-5 OAD登録解除オペレーション

module Activation {
. . .
  interface OAD {
        . . .
     void unreg_implementation(
           in CORBA::RepositoryId repId,
           in string object_name)
        raises(NotRegistered);
        . . .
     }
}