Interstage Application Server アプリケーション作成ガイド (CORBAサービス編)
|
目次
索引

|
7.2.5 パラメタの組立て
(1)パラメタリストの生成
CORBA-ORB-CREATE_LISTメソッドにより、サーバアプリケーションに渡すパラメタを格納するための領域を保持するリストオブジェクトを生成します。このとき、何個のパラメタを格納するかを指定します。結果として、NVListオブジェクトリファレンスが通知されます。NVListオブジェクトインタフェースの詳細については、“NVListオブジェクト”を参照してください。
* CORBA-CONTAINED-DESCRIPTION構造体からパラメタ情報構造体の抽出
SET OPE-ANY TO IDL-VALUE OF CTD-DES.
INVOKE CORBA-OPERATIONDESCRIPTION--H "EXTRACT" USING OPE-ANY
RETURNING OPE-DES.
* パラメタ情報の抽出
SET PARA-SEQ TO PARAMETERS OF OPE-DES.
MOVE SEQ-LENGTH OF PARA-SEQ TO PARAM-COUNT.
* リストオブジェクトの生成
INVOKE ORB "CREATE_LIST" USING PARAM-COUNT
NVLIST.
(2)パラメタリストの設定
CORBA-NVLIST-ADD_VALUEメソッドにより、サーバアプリケーションに渡すパラメタをリストオブジェクトに設定します。パラメタとして、サーバアプリケーションのパラメタの名前、値(Any型)およびパラメタの形式を設定します。
* PARAMERTER 1
INVOKE PARA-SEQ "GET-VALUE" USING 1
RETURNING PARA-DES1
SET STR-1 TO NAME OF PARA-DES1.
INVOKE STR-1 "GET-VALUE" RETURNING NAME1.
INVOKE CORBA-ANY "NEW" RETURNING ANY-A.
INVOKE ANY-A "INSERT_LONG" USING 100.
SET CORBA-ARG_IN OF FLG TO TRUE.
INVOKE NVLIST "ADD_VALUE" USING NAME1
ANY-A
FLG
RETURNING TMP-NAMEDVALUE.
* PARAMETER 2
INVOKE PARA-SEQ "GET-VALUE" USING 2
RETURNING PARA-DES2
SET STR-2 TO NAME OF PARA-DES2.
INVOKE STR-2 "GET-VALUE" RETURNING NAME2.
INVOKE CORBA-ANY "NEW" RETURNING ANY-B.
INVOKE ANY-B "INSERT_LONG" USING 20.
SET CORBA-ARG_IN OF FLG TO TRUE.
INVOKE NVLIST "ADD_VALUE" USING NAME2
ANY-B
FLG
RETURNING TMP-NAMEDVALUE.
Copyright 2005 FUJITSU LIMITED