1.3.2 RPCインタフェース

OpenTP1 for .NET FrameworkのUAPから,サービス要求をする場合のRPCインタフェースには次の3種類があります。

ただし,開発言語がCOBOL言語の場合,.NETインタフェース定義を使用したRPC,およびサービス定義を使用したRPCには対応していません。

それぞれのRPCインタフェースについて説明します。

<この項の構成>
(1) .NETインタフェース定義を使用したRPC
(2) サービス定義(カスタムレコード)を使用したRPC
(3) バイナリデータ(インデクスドレコード)を使用したRPC 

(1) .NETインタフェース定義を使用したRPC

.NETインタフェース定義から運用コマンドでサーバスタブ,およびクライアントスタブを生成して使用します。これによって,.NET Frameworkのクラスのメソッド呼び出しと同様の形式でRPCが行えます。また,.NET Frameworkのデータ型をパラメタや戻り値として送受信できます。

OpenTP1 for .NET Frameworkを使用したクライアント/サーバシステムの場合に適しています。

.NETインタフェース定義を使用したRPCの概要を次の図に示します。

図1-6 .NETインタフェース定義を使用したRPCの概要

[図データ]

注※1
クライアントUAPには次のUAPが該当します。
  • SPP.NET
  • SUP.NET
  • CUP.NET(Connector .NETを使用するアプリケーションを含みます)
注※2
サービス定義から生成されるクライアントスタブとは異なるものです。
注※3
スタブがRPCデータの文字コードの自動変換,およびエンディアンの自動識別をします。

(2) サービス定義(カスタムレコード)を使用したRPC

SPP.NETまたはSPPの入出力データ形式とサービス名をサービス定義として定義します。

このサービス定義から運用コマンドでカスタムレコードとクライアントスタブを生成して使用します。

クライアント側では.NET Frameworkのデータ型で入出力データの設定や参照ができます。また,サーバとのプラットフォームやプログラム言語,文字コードなどの違いをユーザが意識することなくアプリケーションを作成できます(運用コマンドでスタブを生成する際に,文字コードやエンディアンなどを指定します)。

OpenTP1 for .NET Framework環境のクライアントから,SPPにアクセスする場合などに適しています。

サービス定義(カスタムレコード)を使用したRPCの概要を次の図に示します。

図1-7 サービス定義(カスタムレコード)を使用したRPCの概要

[図データ]

注※1
クライアントUAPには次のUAPが該当します。
  • SPP.NET
  • SUP.NET
  • CUP.NET(Connector .NETを使用するアプリケーションを含みます)
注※2
.NETインタフェース定義から生成されるクライアントスタブとは異なるものです。
注※3
スタブがRPCデータの文字コードの自動変換,およびエンディアンの自動識別をします。

(3) バイナリデータ(インデクスドレコード)を使用したRPC 

バイナリデータ(バイト配列型)の集合を入力用レコード,および出力用レコードに設定して使用します。

Connector .NETで,バイナリデータを使用したRPCを実行する場合は,インデクスドレコードを使用します。

バイナリデータ(インデクスドレコード)を使用したRPCの場合,クライアントとサーバのプラットフォームやプログラム言語,文字コードなどの違いをユーザが意識する必要があります。

OpenTP1 for .NET Framework環境以外のクライアントからSPP.NETにアクセスする場合などに適しています。

バイナリデータ(インデクスドレコード)を使用したRPCの概要を次の図に示します。

図1-8 バイナリデータ(インデクスドレコード)を使用したRPCの概要

[図データ]

注※
クライアントUAPには次のUAPが該当します。
  • SPP.NET
  • SPP
  • SUP.NET
  • SUP
  • CUP.NET(Connector .NETを使用するアプリケーションを含みます)
  • CUP