TSCContext(COBOL)
TSCContextはシステム提供クラスです。
TSCContextは,TSCユーザプロキシを使用してクライアント側からサーバ側のTSCユーザオブジェクトの副プログラムを呼び出すとき,暗黙的にサーバ側に渡すユーザデータのコンテナクラスです。次にTSCContextの特徴を示します。
TSCContextによるユーザデータの取得
TSCProxyObjectを使用して,クライアント側からサーバ側のTSCユーザオブジェクトの副プログラムを呼び出すときに,TSCContextによって引数以外のユーザデータをサーバ側に渡すことができます。
クライアント側では,TSCProxyObject-TSCContextGetによってTSCContextを取得し,送信したいユーザデータを設定します。サーバ側では,オブジェクトが呼び出されている間,TSCObject-TSCContextGetを使用してTSCContextを取得します。このTSCContextが保持しているユーザデータは,クライアント側のTSCContextに設定したユーザデータと同じ内容です。
形式
CALL 'TSCContext-setUserData' USING
BY VALUE CONTEXT-PTR
BY VALUE DATA-PTR
BY VALUE DATA-LENGTH
BY REFERENCE CORBA-ENVIRONMENT.
CALL 'TSCContext-getUserData' USING
BY VALUE CONTEXT-PTR
BY REFERENCE CORBA-ENVIRONMENT.
RETURNING DATA-PTR.
CALL 'TSCContext-getUserDataLength' USING
BY VALUE CONTEXT-PTR
BY REFERENCE CORBA-ENVIRONMENT.
RETURNING DATA-LENGTH.
副プログラム
●CALL 'TSCContext-setUserData' USING
BY VALUE CONTEXT-PTR
BY VALUE DATA-PTR
BY VALUE DATA-LENGTH
BY REFERENCE CORBA-ENVIRONMENT.
項目 | 型・(入出力の区別)意味 | |
---|---|---|
引数 | BY VALUE CONTEXT-PTR USAGE POINTER | (入力)TSCContextのポインタ |
BY VALUE TA-PTR USAGE POINTER | (入力)ユーザデータ(文字列のポインタ) | |
BY VALUE DATA-LENGTH PIC 9(9) COMP | (入力)ユーザデータの長さ | |
BY REFERENCE CORBA-ENVIRONMENT | (出力)例外情報集団項目 | |
戻り値 | ありません。 | |
例外 | TSCBadParamException |
ユーザデータを設定します。ここで設定したユーザデータの領域の管理責任は,ユーザにあります。
●CALL 'TSCContext-getUserData' USING
BY VALUE CONTEXT-PTR
BY REFERENCE CORBA-ENVIRONMENT
RETURNING DATA-PTR.
項目 | 型・(入出力の区別)意味 | |
---|---|---|
引数 | BY VALUE CONTEXT-PTR USAGE POINTER | (入力)TSCContextのポインタ |
BY REFERENCE CORBA-ENVIRONMENT | (出力)例外情報集団項目 | |
戻り値 | DATA-PTR USAGE POINTER | ユーザデータ |
例外 | TSCBadParamException |
ユーザデータを取得します。ユーザが自分で設定したものでないかぎり,ここで取得したユーザデータをユーザが解放してはいけません。
●CALL 'TSCContext-getUserDataLength' USING
BY VALUE CONTEXT-PTR
BY REFERENCE CORBA-ENVIRONMENT
RETURNING DATA-LENGTH.
項目 | 型・(入出力の区別)意味 | |
---|---|---|
引数 | BY VALUE CONTEXT-PTR USAGE POINTER | (入力)TSCContextのポインタ |
BY REFERENCE CORBA-ENVIRONMENT | (出力)例外情報集団項目 | |
戻り値 | DATA-LENGTH PIC 9(9) COMP | ユーザデータの長さ |
例外 | TSCBadParamException |
ユーザデータの長さを取得します。
マルチスレッド環境での副プログラム呼び出し規則
マルチスレッド環境で,TSCContextクラスのインスタンスの副プログラムを呼び出す規則を次に示します。
副プログラム | 複数のスレッド上からの同時呼び出し |
---|---|
TSCContext-setUserData | できません。 |
TSCContext-getUserData | できません。 |
TSCContext-getUserDataLength | できません。 |