ページの先頭行へ戻る
Interstage Application Server リファレンスマニュアル(API編)
Interstage

1.2.4 CORBA_Object_create_request()

名前

CORBA_Object_create_request

形式

#include <orb.h>
CORBA_ORBStatus  CORBA_Object_create_request(
      CORBA_Object  obj,
      CORBA_Context  ctx,
      CORBA_Identifier  operation,
      CORBA_NVList  arg_list,
      CORBA_NamedValue  result,
      CORBA_Request  request,
      CORBA_Flags  req_flags,
      CORBA_Environment *env );
typedef  CORBA_Object  CORBA_Context;
typedef  CORBA_string  CORBA_Identifier;
typedef  CORBA_Object  CORBA_NVList;
typedef  struct  CORBA_NamedValue {
      CORBA_Identifier  name;
      CORBA_any  argument;
      CORBA_long  len;
      CORBA_Flags  arg_modes;
} CORBA_NamedValue;
typedef  CORBA_Object  CORBA_Request;

機能説明

指定した各引数で初期化されたRequestオブジェクトを生成します。

パラメタ

obj

サーバアプリケーションのオブジェクトリファレンス。

ctx

CORBA_Context_create_child()で返されるContextオブジェクトまたはCORBA_OBJECT_NILを指定します。

operation

サーバアプリケーションを呼び出すメソッド名。

arg_list

CORBA_ORB_create_list()、またはCORBA_ORB_create_operation_list()で返されるNVListオブジェクト。

result

CORBA_NVList_add_item()で返されるNamedValueオブジェクトを指定します。復帰値がvoidの場合は、TC_nullを指定します。resultで指定する NamedValueオブジェクト内のany型変数のTypeCodeには、CORBA_Request_invoke(), CORBA_Request_send()で呼び出すメソッドの復帰値のTypeCodeを設定する必要があります。

request

リクエストオブジェクトのオブジェクトリファレンスを設定します。CORBAクライアントは、RequestインタフェースのCORBA_Request_invoke()やCORBA_Request_send()の呼び出し時に、このオブジェクトリファレンスを指定する必要があります。

req_flags

以下のフラグが指定できます。

CORBA_OUT_LIST_MEMORY

arg_listで指定したリストオブジェクト(NVList)がリクエストオブジェクトに結び付けられます。この場合、arg_listを指定しなければなりません。CORBA_Request_delete()でリクエストを破壊すると自動的にリストオブジェクトも破壊されます。

CORBA_OUT_LIST_MEMORYが指定されなければ、リストオブジェクトはプログラムが解放するまで利用可能です。解放には、CORBA_free()を使用します。

env

例外情報が格納される構造体。

復帰値

正常終了した場合は、CORBA_OKが返されます。
異常終了した場合は、CORBA_FAILEDが返されます。