名前
CORBA-BOA-CREATE
形式
ENVIRONMENT DIVISION. CONFIGURATION SECTION. SPECIAL-NAMES. SYMBOLIC CONSTANT COPY SYMBOL-CONST IN CORBA. . DATA DIVISION. WORKING-STORAGE SECTION. COPY CONST IN CORBA. 01 COPY BOA IN CORBA REPLACING CORBA-BOA BY BOA. 01 COPY REFERENCEDATA IN CORBA REPLACING CORBA-REFERENCEDATA BY REF. 01 COPY INTERFACEDEF IN CORBA REPLACING CORBA-INTERFACEDEF BY INTF. 01 COPY FJ-IMPLEMENTATIONDEF IN CORBA REPLACING FJ-IMPLEMENTATIONDEF BY IMPL. 01 COPY ENVIRONMENT IN CORBA REPLACING CORBA-ENVIRONMENT BY ENV. 01 COPY OBJECT IN CORBA REPLACING CORBA-OBJECT BY OBJ. PROCEDURE DIVISION. CALL "CORBA-BOA-CREATE" USING BOA REF INTF IMPL ENV OBJ. CORBA-REFERENCEDATA. 03 SEQ-MAXIMUM PIC S9(9) COMP-5. 03 SEQ-LENGTH PIC S9(9) COMP-5. 03 CORBA-OCTET USAGE POINTER.
機能説明
オブジェクトリファレンスを生成します。BOAには、CORBA-ORB-BOA-INIT関数で返されたオブジェクトリファレンスを指定します。REFには、サーバアプリケーションがオブジェクト生成時に設定するオブジェクトの識別情報を指定します。識別情報は、CORBA-REFERENCEDATA (CORBA-SEQUENCE-OCTET)構造体のCORBA-OCTETの領域に設定します。この値は、オブジェクトが破壊されるまで変化しません。INTFには、生成するオブジェクトのインタフェース情報を管理するインタフェースリポジトリのオブジェクトリファレンスを指定します。IMPLには、生成するオブジェクトの実装情報を管理するインプリメンテーションリポジトリのオブジェクトリファレンスを指定します。
また、以下の条件の場合に生成するオブジェクトリファレンスにコード系情報が付加されます。
OD_impl_instコマンドでコード情報を設定した場合
OD_set_envコマンドでコード情報を設定した場合
サーバアプリケーションでオブジェクトリファレンスを作成する場合、OD_or_admコマンドで-Lオプションを省略した場合と同様のコード系が設定されます。
ここで生成したオブジェクトリファレンスを破壊するには、CORBA-BOA-DISPOSE関数を使用します。また、オブジェクトリファレンスのメモリを解放するには、CORBA-OBJECT-RELEASE関数を使用します。
復帰値
正常終了した場合は、オブジェクトリファレンスが返され、ENV構造体の MAJORにはCORBA-NO-EXCEPTIONが設定されます。
異常終了した場合は、ENV構造体のMAJORにはCORBA-SYSTEM-EXCEPTIONが設定され、IDとMINORに詳細情報が設定されます。
IDとMINORの意味については、“メッセージ集”の“CORBAサービスから通知される例外情報/マイナーコード”を参照してください。
BOA,INTF,IMPLにNULLが指定された場合、ENV構造体のMAJORにはCORBA-USER-EXCEPTIONが設定されます。