17.3.3 DIIリクエストを生成し初期化する方法

オブジェクトへのバインドを発行し,オブジェクトリファレンスを取得したあと,Requestオブジェクトを生成するために二つの方法のどちらかを使用できます。コードサンプル17-5にCORBA::Objectクラスが提供するメソッドを示します。コードサンプル17-6にorg.omg.CORBA.Objectインタフェースが提供するメソッドを示します。

コードサンプル17-5 Requestオブジェクトを生成する三つのメソッド(C++)

class Object {
  . . .
  CORBA::Request_ptr _request(Identifier operation);
  CORBA::Status _create_request(
     CORBA::Context_ptr ctx,
     const char *operation,
     CORBA::NVList_ptr arg_list,
     CORBA::NamedValue_ptr result,
     CORBA::Request_ptr request,
     CORBA::Flags req_flags);
  CORBA::Status _create_request(
     CORBA::Context_ptr ctx,
     const char *operation,
     CORBA::NVList_ptr arg_list,
     CORBA::NamedValue_ptr result,
     CORBA::ExceptionList_ptr eList,
     CORBA::ContextList_ptr ctxList,
     CORBA::Request_out request,
     CORBA::Flags req_flags);
   . . .
};

コードサンプル17-6 Requestオブジェクトを生成する三つのメソッド(Java)

package org.omg.CORBA;
public interface Object {
. . .
  public org.omg.CORBA.Request _request(
                         java.lang.String operation);

  public org.omg.CORBA.Request _create_request(
     org.omg.CORBA.Context ctx,
     java.lang.String operation,
     org.omg.CORBA.NVList arg_list,
     org.omg.CORBA.NamedValue result
  );

  public org.omg.CORBA.Request _create_request(
     org.omg.CORBA.Context ctx,
     java.lang.String operation,
     org.omg.CORBA.NVList arg_list,
     org.omg.CORBA.NamedValue result,
     org.omg.CORBA.ExceptionList exceptions,
     org.omg.CORBA.ContextList contexts
  );
. . .
}