Hitachi

OpenTP1 Version 7 分散トランザクション処理機能 OpenTP1 テスタ・UAPトレース使用の手引


3.3.2 サービス応答データファイル

〈この項の構成〉

(1) RPC応答データファイル

RPCインタフェースのサーバUAPシミュレート機能使用時,シミュレート対象のSPPにサービスを要求した際に,サービスの要求元へ返す応答データを格納します。一つのファイルには,一つのデータを作成します。

また,クライアントUAPシミュレート機能使用時,テスト対象のUAPからの応答データを格納します。

(a) ファイルの構造

[図データ]

(b) ファイルの内容

項目

位置

長さ(バイト)

内容

データ長

0

4

サービス要求元へ返すデータの長さを指定します

(0〜2147483647)。

データ

4

n

サービス要求元へ返すデータを指定します。

(c) 注意事項

  • サービス要求元のサービス要求関数(dc_rpc_call関数)の引数との関係を次に示します。

    dc_rpc_call (……, in, in_len, out, out_len)
                                   1.
    1. データ

  • RPC応答データファイルは,オフラインテスタのファイルも使用できます。

  • データ長に満たないデータを指定した場合は,エラーとなります。また,データ長を超えた部分のデータは無視されます。

(2) XATMI応答データファイル

XATMIインタフェースのサーバUAPシミュレート機能使用時,シミュレート対象のSPPにサービスを要求した際に,サービスの要求元へ返す応答データを格納します。一つのファイルには,複数のデータが作成できます。

(a) ファイルの構造

[図データ]

(b) ファイルの内容

項目

位置

長さ(バイト)

内容

タイプ

0

8

バッファタイプとして,次の文字列のどれかを指定します。

  • X_OCTET

  • X_COMMON

  • X_C_TYPE

サブタイプ

8

16

サブタイプを16文字以下の文字列で指定します。

ただし,タイプに'X_OCTET 'を指定した場合は,サブタイプはヌル文字とします。

サービス終了コード

24

4

tpreturn関数のrvalで指定する次のどちらかの値を,16進数で指定します。この値は,tperrno領域に設定されます。

0x04000000:TPSUCCESS

0x20000000:TPFAIL

リターンコード

28

4

tpreturn関数のrcodeで指定する値を16進数で指定します。この値は,tpurcode領域に設定されます。

データ長

32

4

サービス要求元に返すデータの長さを指定します(0〜524288)。データがない場合は0を指定します。

0を指定すると,タイプ,サブタイプの指定は無視されます。

データ

36

n

サービス要求元に返すデータを指定します。

(c) 注意事項

  • サービス終了関数(tpreturn関数)の引数との関係を次に示します。

    tpreturn (rval, rcode, data, len, ……)
               1.     2.    3.    4.
    1. サービス終了コード

    2. リターンコード

    3. タイプ,サブタイプで確保されたバッファに格納したデータ

    4. データ長

  • XATMI応答データファイルは,オフラインテスタのファイルも使用できます。

  • データ長に満たないデータを指定した場合は,エラーとなります。また,データ長を超えた部分のデータは無視されます。

  • タイプ,サブタイプを指定した場合のデータ長とデータは,スタブで定義したデータ構造(構造体)と同じでなければなりません。

    また,スタブで定義したデータ構造は,バウンダリ調整が行われます(合計長は4の整数倍となります)。そのため,ファイルで指定するデータはその調整部分を考慮して作成する必要があります。

    バウンダリ調整の内容は,stbmakeコマンドで作成したスタブソース,およびstbmakeコマンドに-pオプションを指定した場合の出力結果を参照して,確認してください。