WebSphere Message Broker バージョン 8.0.0.5 オペレーティング・システム: AIX、HP-Itanium、Linux、Solaris、Windows、z/OS

製品の最新バージョンについては、IBM Integration Bus バージョン 9.0 をご覧ください。

ESQL モジュール

モジュールは、変数とその初期設定を定義する宣言のシーケンス、 およびメッセージ・フロー・ノードの特定の動作を定義するサブルーチン (関数およびプロシージャー) のシーケンスです。

モジュールは、CREATE node_type MODULE ステートメントで開始して END MODULE ステートメントで終了する必要があります。 node_type は、COMPUTE、DATABASE、DATABASEEVENT、または FILTER の 1 つでなければなりません。 DatabaseInput ノードの場合、必要な node_type は DATABASEEVENT です。 ComputeDatabase およびFilter ノードの場合は、必要な node_type はノードと同じです。 例えば、Compute ノードの ESQL モジュールでは、COMPUTE node_type を使用する必要があります。 ComputeDatabase および Filter ノードの場合、ESQL コードのエントリー・ポイントは、MAIN という名前の MODULE スコープ関数です。 DatabaseInput ノードの ESQL モジュールには MAIN 関数が含まれていませんが、READEVENTS、BUILDMESSAGE、および ENDEVENT という 3 つのプロシージャーが含まれています。 これらの 3 つのプロシージャーについて詳しくは、DatabaseInput ノードの構成を参照してください。

各モジュールは、CREATE node_type MODULE という文字が続く名前によって識別されます。 名前はデフォルト値を使って作成されますが、変更したり、独自に作成したりできます。 名前は大/小文字の区別なく処理されます (つまり、大文字と小文字を任意に組み合わせた名前を使用しても、宣言と一致します)。 これは、スキーマ、定数、変数、およびラベルに対して宣言する名前とは対照的です。それらの場合には、大/小文字の区別を付けて扱われ、宣言したのと同じに正確に指定する必要があります。

.esql という接尾部を持つ、ESQL ファイルにモジュール用のコードを作成する必要があります。 このファイルは、それを参照するノードと同じブローカー・スキーマ内に作成する必要があります。 対応するノードごとに適切なタイプのモジュールが 1 つ存在する必要があり、そのモジュールはそのノードに特定のもので他のノードが使用することはできません。

ESQL ファイルを作成するとき (すなわち、ESQL ファイルを作成するタスクを完了するとき)、そのファイルに関連付けられたメッセージ・ブローカー・プロジェクトおよびブローカー・スキーマを指定し、そのファイルに名前を付けます。

ESQL ファイル内で、各モジュールの名前はメッセージ・フロー・ノードの対応するプロパティーの値によって決まります。 例えば、Compute ノードのプロパティー ESQL Module は、そのノードの ESQL ファイルにあるモジュール名を指定します。 このプロパティーのデフォルト値は、ノードの名前です。 別の名前を指定することも可能ですが、プロパティーの値と必要な機能を提供するモジュールの名前とが同じであることを確認する必要があります。

ComputeDatabase、および Filter ノードの場合、モジュールは、モジュールのエントリー・ポイントである関数 MAIN を含んでいる必要があります。 この関数は、モジュールの作成時に自動的に組み込まれます。 MAIN 内で、ESQL をコーディングしてノードの動作を構成できます。 ESQL を変数、定数、関数、およびプロシージャーを宣言するモジュールに組み込む場合は、これらはローカル側の有効範囲のものに限定されて、この単一のモジュール内で使用可能となります。

DatabaseInput ノードの場合は、モジュールに READEVENTS、BUILDMESSAGE、および ENDEVENT の、3 つのプロシージャーが含まれている必要があります。 モジュールがユーザー用に作成される場合、これらのプロシージャーは、そのプロシージャーを説明するコメントとともに自動的に組み込まれます。 この 3 つのプロシージャー内で ESQL をコーディングしてノードの動作を構成できます。DatabaseInput ノードの構成を参照してください。 ESQL を変数、定数、関数、およびプロシージャーを宣言するモジュールに組み込む場合は、これらはローカル側の有効範囲のものに限定されて、この単一のモジュール内で使用可能となります。

ESQL 定数、関数、またはプロシージャーを再利用したい場合、それらをブローカー・スキーマ・レベルで宣言する必要があります。 その後、これらの定数、関数、またはプロシージャーを、同じプロジェクトまたは別のプロジェクトに含まれるそのブローカー・スキーマ内の任意のリソースから参照できます。 この手法を使用したい場合、プロシージャーを完全修飾するか、または修飾子を設定する PATH ステートメントを組み込んでください。 PATH ステートメントは同じ ESQL ファイル内でコーディングする必要がありますが、MODULE 内でコーディングすることはできません。

特記事項 | 商標 | ダウンロード | ライブラリー | サポート | フィードバック

Copyright IBM Corporation 1999, 2014Copyright IBM Corporation 1999, 2014.

        
        最終更新:
        
        最終更新: 2015-02-28 17:47:19


概念トピック概念トピック | バージョン 8.0.0.5 | ak01110_