TSCProxyObject(COBOL)

TSCProxyObjectはシステム提供クラスです。

TSCProxyObjectはABC_TSCprxyの基底クラスです。副プログラムはABC_TSCprxyのインスタンスに対して発行します。したがって,各副プログラムの第1引数(PROXY-PTR)には,ユーザ定義IDLインタフェース依存クラス(ABC_TSCprxy)のポインタを指定してください。

TSCProxyObjectはTSCユーザオブジェクトの代理クラスです。TSCProxyObjectを呼び出すと,OTMのスケジューリング機構を経由してTSCObjectが呼び出されます。

ユーザは,サーバアプリケーションのTSCユーザオブジェクトが提供するサービスを利用するときに,TSCProxyObjectクラスのインスタンスを生成して呼び出します。次にTSCProxyObjectの特徴を示します。

TSCサービス識別子によるサービスの識別

TSCサービス識別子の構成

TSCProxyObjectを使用して利用するサービスの種類は,TSCサービス識別子によって表されます。TSCサービス識別子は,インタフェース名称とTSCアクセプタ名称から構成されます。

サービスの種類の表現方法

TSCProxyObjectによって利用するサービスの種類は,TSCサービス識別子によって表されます。TSCサービス識別子は,インタフェース名称とTSCアクセプタ名称から構成されます。

サービスの種類の表現例

形式

* タイムアウト
CALL 'TSCProxyObject-TSCTimeoutSet' USING
           BY VALUE       PROXY-PTR
           BY VALUE       TIMEOUT
           BY REFERENCE   CORBA-ENVIRONMENT.
CALL 'TSCProxyObject-TSCTimeoutGet' USING
           BY VALUE       PROXY-PTR
           BY REFERENCE   CORBA-ENVIRONMENT
        RETURNING         TIMEOUT.

* 優先度
CALL 'TSCProxyObject-TSCPrioritySet' USING
           BY VALUE       PROXY-PTR
           BY VALUE       PRIORITY
           BY REFERENCE   CORBA-ENVIRONMENT.
CALL 'TSCProxyObject-TSCPriorityGet' USING
           BY VALUE       PROXY-PTR
           BY REFERENCE   CORBA-ENVIRONMENT
        RETURNING         PRIORITY.

CALL 'TSCProxyObject-TSCContextGet' USING
           BY VALUE       PROXY-PTR
           BY REFERENCE   CORBA-ENVIRONMENT
        RETURNING         CONTEXT-PTR.

副プログラム

●CALL 'TSCProxyObject-TSCTimeoutSet' USING

           BY VALUE      PROXY-PTR
           BY VALUE      TIMEOUT
           BY REFERENCE  CORBA-ENVIRONMENT.

項目型・(入出力の区別)意味
引数BY VALUE PROXY-PTR USAGE POINTER(入力)ABC_TSCprxyのポインタ
BY VALUE TIMEOUT PIC S9(9) COMP(入力)タイムアウト時間(秒)
BY REFERENCE CORBA-ENVIRONMENT(出力)例外情報集団項目
戻り値ありません。
例外TSCBadParamException

タイムアウト値(呼び出し時の監視時間)を秒単位で設定します。"0"を指定する場合,時間監視をしません。監視時間は,副プログラム呼び出しごとに変更できます。監視時間のデフォルト値は"180"(秒)です。また,initServer発行時の引数argsに,-TSCTimeOutオプションを指定する場合は,監視時間のデフォルト値はその指定値となります。

この副プログラムを複数のスレッド上から同時に呼び出した場合,結果は保証されません。

●CALL 'TSCProxyObject-TSCTimeoutGet' USING

           BY VALUE        PROXY-PTR
           BY REFERENCE    CORBA-ENVIRONMENT
        RETURNING          TIMEOUT.

項目型・(入出力の区別)意味
引数BY VALUE PROXY-PTR USAGE POINTER(入力)ABC_TSCprxyのポインタ
BY REFERENCE CORBA-ENVIRONMENT(出力)例外情報集団項目
戻り値TIMEOUT PIC S9(9) COMPタイムアウト時間(秒)
例外TSCBadParamException

タイムアウト値(呼び出し時の監視時間)を取得します。

この副プログラムを複数のスレッド上から同時に呼び出した場合,結果は保証されません。

●CALL 'TSCProxyObject-TSCPrioritySet' USING

           BY VALUE        PROXY-PTR
           BY VALUE        PRIORITY
           BY REFERENCE    CORBA-ENVIRONMENT.

項目型・(入出力の区別)意味
引数BY VALUE PROXY-PTR USAGE POINTER(入力)ABC_TSCprxyのポインタ
BY VALUE PRIORITY PIC S9(9) COMP(入力)プライオリティ値
BY REFERENCE CORBA-ENVIRONMENT(出力)例外情報集団項目
戻り値ありません。
例外TSCBadParamException

プライオリティ値(副プログラム呼び出し時の優先順位)を設定します。

PRIORITYに1~8の値を指定することで,キューイング取り出し時の優先順位を変更できます。PRIORITYに指定する値が小さいほど優先度は高くなります。この副プログラムはリクエスト単位に変更することもできます。プライオリティ値のデフォルト値は"4"です。また,initServer発行時の引数argsに,-TSCRequestPriorityオプションを指定する場合は,プライオリティ値のデフォルト値はその指定値となります。

この副プログラムを複数のスレッド上から同時に呼び出した場合,結果は保証されません。

●CALL 'TSCProxyObject-TSCPriorityGet' USING

           BY VALUE          PROXY-PTR
           BY REFERENCE      CORBA-ENVIRONMENT
        RETURNING            PRIORITY.

項目型・(入出力の区別)意味
引数BY VALUE PROXY-PTR USAGE POINTER(入力)ABC_TSCprxyのポインタ
BY REFERENCE CORBA-ENVIRONMENT(出力)例外情報集団項目
戻り値PRIORITY PIC S9(9) COMPプライオリティ値
例外TSCBadParamException

プライオリティ値(副プログラム呼び出し時の優先順位)を取得します。

この副プログラムを複数のスレッド上から同時に呼び出した場合,結果は保証されません。

●CALL 'TSCProxyObject-TSCContextGet' USING

          BY VALUE          PROXY-PTR
          BY REFERENCE      CORBA-ENVIRONMENT
       RETURNING            CONTEXT-PTR.

項目型・(入出力の区別)意味
引数BY VALUE PROXY-PTR USAGE POINTER(入力)ABC_TSCprxyのポインタ
BY REFERENCE CORBA-ENVIRONMENT(出力)例外情報集団項目
戻り値CONTEXT-PTR USAGE POINTERTSCContextのポインタ
例外TSCBadParamException

呼び出し時のTSCContextを取得します。ユーザはこのTSCContextにコンテキストデータを設定できます。

マルチスレッド環境での副プログラム呼び出し規則

マルチスレッド環境で,TSCProxyObjectクラスのインスタンスの副プログラムを呼び出す規則を次に示します。

副プログラム複数のスレッド上からの同時呼び出し
TSCProxyObject-TSCTimeoutGetできます。
TSCProxyObject-TSCTimeoutSetできません。
TSCProxyObject-TSCPriorityGetできます。
TSCProxyObject-TSCPrioritySetできません。
TSCProxyObject-TSCContextGetできません。
クライアント側からのオブジェクト呼び出しできません。

インスタンスの内部参照(アクセス)規則

TSCProxyObjectクラスのインスタンスがほかのクラスのインスタンスを内部参照(アクセス)する規則を次に示します。

副プログラム複数のスレッド上からの内部参照
TSCProxyObject-TSCTimeoutGetありません。
TSCProxyObject-TSCTimeoutSetありません。
TSCProxyObject-TSCPriorityGetありません。
TSCProxyObject-TSCPrioritySetありません。
TSCProxyObject-TSCContextGetありません。
クライアント側からのオブジェクト呼び出し生成時に指定したTSCClient型のインスタンス