18.3 DynamicImplementationクラスの継承

DSIを使用するには,コードサンプル18-1に示したDynamicImplementationベースクラスからオブジェクトインプリメンテーションを派生させる必要があります。このクラスは,複数のコンストラクタとinvokeメソッドを提供しますが,これらは自分でインプリメントしてください。

コードサンプル18-1 DynamicImplementationベースクラス(C++)

class PortableServer::DynamicImplementation :
     public virtual PortableServer::ServantBase {
  public:
     virtual void invoke(
           PortableServer::ServerRequest_ptr request) = 0;
. . .
};

コードサンプル18-2 DynamicImplementation abstractクラス(Java)

package org.omg.CORBA;
public abstract class DynamicImplementation extends Servant {
  public abstract void invoke(ServerRequest request);
. . .
}

<この節の構成>
18.3.1 動的リクエスト用オブジェクトの設計例
18.3.2 リポジトリIDの指定