next up previous
Next: この文書について... Up: Object Semantics (オブジェクトセマンティクス) Previous: Objects (オブジェクト)

Requests (リクエスト)

クライアントはリクエストを発することによりサービスを要求する。 リクエストはイベントである(つまり、ある時刻に発生した何らかの事象)。 リクエストに結び付いた情報は、 オペレーション(命令)、ターゲットオブジェクト、 0個以上のパラメータ、任意のリクエストコンテクストから構成される。

リクエスト形式はリクエストを発する度に 評価・実行される記述もしくはパターンである。 OMG IDLの``Syntax and Semantics''に記述されているとおり、 リクエスト形式は特定の言語バインディングにより定義されている。 リクエスト形式のもう1つのものは 動的起動インタフェースを呼び出しから構成されている。 このインタフェースは起動構造を生成し、引数を構造に追加し、起動させるものである(このリクエスト形式の記述は動的起動インタフェース (Dynamic Invocation Interface)の章を参照のこと)。

はリクエスト中の実際のパラメータである。 もう少し言うと、 値とはOMG IDLのデータ型のインスタンスである。 非オブジェクトの値と、オブジェクトを参照している値の両方がある。

オブジェクトリファレンスはある特定のオブジェクトを確実に示す値である。 特に、オブジェクトリファレンスは リクエスト中でそのリファレンスが利用される度に同一のオブジェクトを識別する (実装上の効率の制限を受けるが)。 オブジェクトは複数のことなるオブジェクトリファレンスにより示される。

リクエストはターゲットオブジェクトにデータを渡すのに使う パラメータを持つこともある。 また、 リクエストに関する追加の情報であるリクエストコンテクストを持つこともある。 リクエストコンテクストは文字列から文字列へのマッピングである。

リクエストによりクライアントのために実行されるべきサービスが起動する。 サービスを実行した結果として、リクエストで定義されていれば クライアントにその結果を返す。

リクエストの実行中に異常が起こったら、例外を返す。 例外にはその例外特有の戻り値が追加されることもある。

リクエストパラメータは位置により識別される。 パラメータは入力値や出力値、入出力値であったりする。 リクエストは、出力値・入出力値に結果を入れて返すこともあれば、 戻り値を返すこともある。

全てのリクエストに対して以下のようなセマンティクスが保たれる。

許されている値と例外の記述法に関しては、 1-4ページの``Types''と1-7ページの``Exceptions''を見よ。

Masao Takaku 平成11年3月12日