5.1.2 XATMIインタフェースの機能

XATMIインタフェースのアプリケーションプログラミングインタフェースと通信プロトコル別で使える機能について説明します。

<この項の構成>
(1) XATMIインタフェースのライブラリ関数
(2) XATMIインタフェースの機能と通信プロトコルの関係

(1) XATMIインタフェースのライブラリ関数

XATMIインタフェースのライブラリ関数の一覧を次の表に示します。

表5-1 XATMIインタフェースのライブラリ関数の一覧

XATMIインタフェースの機能ライブラリ関数名
C言語ライブラリCOBOL言語ライブラリ
リクエスト/レスポンス型サービスの通信リクエスト/レスポンス型サービスの呼び出しと応答の受信tpcall()TPCALL
リクエスト/レスポンス型サービスの呼び出しtpacall()TPACALL
リクエスト/レスポンス型サービスからの非同期応答の受信tpgetrply()TPGETRPLY
リクエスト/レスポンス型サービスのキャンセルtpcancel()TPCANCEL
会話型サービスの
通信
会話型サービスとのコネクションの確立tpconnect()TPCONNECT
会話型サービスとのコネクションの切断tpdiscon()TPDISCON
会話型サービスからのメッセージの受信tprecv()TPRECV
会話型サービスへのメッセージの送信tpsend()TPSEND
通信データの型の操作型付きバッファの割り当てtpalloc()
型付きバッファの解放tpfree()
型付きバッファのサイズの変更tprealloc()
型付きバッファの情報の取得tptypes()
サービス名を動的に管理サービス名の広告tpadvertise()TPADVERTISE
サービス名の広告の取り消しtpunadvertise()TPUNADVERTISE
サーバで使う関数サービス関数のテンプレートtpservice()
サービスルーチンの開始TPSVCSTART
サービス関数からのリターンtpreturn()TPRETURN
(凡例)
-:該当するAPIがないことを示します。
注※
C言語とCOBOL言語ではサービス開始を宣言する方法が異なるため,別のAPIとしています。tpservice()は,C言語のサービスの実体を示します。

XATMIインタフェースの関数とOpenTP1のUAPの関係を次の表に示します。

表5-2 XATMIインタフェースの関数とOpenTP1のUAPの関係

XATMIインタフェースの関数SUPSPPMHPオフラインの業務をするUAP
トランザクションの処理の範囲でないトランザクションの処理範囲(ルート)トランザクションの処理の範囲でないトランザクション範囲トランザクションの処理の範囲でないトランザクションの処理範囲(ルート)
ルートルート以外
tpacall()
tpadvertise()111
tpalloc()
tpcall()
tpcancel()
tpconnect()
tpdiscon()
tpgetrply()
tpfree()
tprecv()
tprealloc()
tpreturn()222
tpsend()
tpservice()3
tptypes()
tpunadvertise()111
(凡例)
○:関数を呼び出せます。
-:関数を呼び出せません。
MHPの「トランザクション処理の範囲でない」とは,非トランザクション属性のMHP,またはMHPのメイン関数の範囲を示します。
注※1
サービス関数の中でだけ,呼び出せます。
注※2
XATMIインタフェースのサービス関数をリターンするためだけに使います。
注※3
tpservice()は,サービス関数の実体です。

(2) XATMIインタフェースの機能と通信プロトコルの関係

XATMIインタフェースの通信は,TCP/IP通信でもOSI TP通信でも使えます。ただし,通信プロトコルによって制限がある機能もあります。XATMIインタフェースの機能と通信プロトコルの関係を次の表に示します。

表5-3 XATMIインタフェースの機能と通信プロトコルの関係

XATMIインタフェースの機能通信プロトコル
TCP/IPOSI TP
リクエスト/レスポンス型の通信
会話型サービスの通信
型付きのデータ送信
OpenTP1同士のクライアント/サーバ型通信
他TPモニタへのトランザクション拡張
(凡例)
○:該当する通信プロトコルで使えます。
-:該当する通信プロトコルでは使えません。
注※
OSI TPを使ってOpenTP1以外のシステムとクライアント/サーバ形態で通信する場合でも,通信データの型を変換して送信できます。指定する通信データの型については,「5.1.6 通信データの型」を参照してください。