第3章 ルートの定義
このチュートリアルでは、エンドポイントをルートに追加および設定する方法について説明します。エンドポイントは、ルートを通過するメッセージのソースとシンクを定義します。ZooOrderApp
プロジェクトでは、開始 (ソース) エンドポイントは XML メッセージファイルを含むフォルダーです。シンク (終了) エンドポイントは、プロジェクトで指定する別のフォルダーです。
ゴール
このチュートリアルでは、次のタスクを完了します。
- ルートにソースエンドポイントとシンクエンドポイントを追加します
- エンドポイントを設定します
- エンドポイントを接続します
作業を開始する前に
このチュートリアルを開始する前に:
- 2章環境の設定チュートリアルで説明されているように、ワークスペース環境を設定する必要があります。
-
CodeReady Studio で、Editor ビューで
ZooOrderApp
プロジェクトの/src/main/resources/OSGI-INF/blueprint/blueprint.xml
ファイルを開きます。 -
必要に応じて、Editor ビューの下部にある Design タブをクリックして、
Route_route1
というラベルが付けられた初期ルートのグラフを表示します。
ソースエンドポイントの設定
以下の手順に従って、src/data
フォルダーをルートのソースエンドポイントとして設定します。
File コンポーネント ( ) を Palette の Components ドロワーからキャンバスにドラッグし、それを
Route_route1
コンテナーノードにドロップします。File コンポーネントは、
Route_route1
コンテナーノード内のFrom _from1
ノードに変更されます。キャンバスで
From _from1
ノードを選択します。キャンバスの下にある Properties ビューには、編集用のノードのプロパティーフィールドが表示されます。
メッセージファイルのソースディレクトリーを指定するには、Properties ビューで Advanced タブをクリックします。
Directory Name フィールドに
src/data
を入力します。src/data
は、プロジェクトのディレクトリーからの相対パスです。Consumer タブで、チェックボックスをクリックして Noop オプションを有効にします。
Noop オプションにより、
message#.xml
ファイルがsrc/data
フォルダーから削除されなくなり、べき等を有効にして各message#.xml
ファイルが 1 度だけ消費されるようにします。Details タブを選択して、ファイルノードの Details ページを開きます。
ツールは、Advanced 設定タブで設定した Directory Name と Noop プロパティーを Uri フィールドに自動的に入力することに注意してください。また、Id フィールドに自動生成される ID (
_from1
) も設定します。注記ツールは、自動生成された ID 値の前にアンダースコア (_) を付けます。オプションで ID 値を変更できます。アンダースコア接頭辞は必須ではありません。
自動生成された ID はそのままにします。
-
File
Save を選択して、ルートを保存します。
シンクエンドポイントの設定
ルートのシンク (ターゲット) エンドポイントを追加して設定するには、次の手順に従います。
別の File コンポーネントをPalette の Components ドロワーからドラッグし、それを
Route_route1
コンテナーノードにドロップします。File コンポーネントは、
Route_route1
コンテナーノード内のTo_to1
ノードに変更されます。キャンバスで
To_to1
ノードを選択します。キャンバスの下にある Properties ビューには、編集用のノードのプロパティーフィールドが表示されます。
Details タブ:
-
Uri フィールドに
file:target/messages/received
と入力します。 Id フィールドに
_Received
と入力します。注記このツールは、実行時に
target/messages/received
フォルダーを作成します。
-
Uri フィールドに
Route_route1
コンテナーで From _from1 ノードを選択し、そのコネクター矢印 ( ) を To_Received ノードにドラッグしてからリリースします。注記2 つのファイルノードは、ルートエディターのレイアウト方向設定に従って、キャンバス上で接続および整列されます。選択肢は、Down (デフォルト) と Right です。
ルートエディターのレイアウト設定オプションにアクセスするには:
-
Linux および Windows マシンでは、Windows
Preferences Fuse Tooling Editor Choose the layout direction for the diagram editor を選択します。 -
OS X では、CodeReady Studio
Preferences Fuse Tooling Editor Choose the layout direction for the diagram editor を選択します。
注記プロジェクトを閉じる前にノードを接続しない場合、プロジェクトを再度開くと、ツールによってノードが自動的に接続されます。
-
Linux および Windows マシンでは、Windows
- ルートを Save します。
キャンバスの下部にある Source タブをクリックして、ルートの XML を表示します。
<?xml version="1.0" encoding="UTF-8"?> <blueprint xmlns="http://www.osgi.org/xmlns/blueprint/v1.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.osgi.org/xmlns/blueprint/v1.0.0 https://www.osgi.org/xmlns/blueprint/v1.0.0/blueprint.xsd http://camel.apache.org/schema/blueprint http://camel.apache.org/schema/blueprint/camel-blueprint.xsd"> <camelContext id="_context1" xmlns="http://camel.apache.org/schema/blueprint"> <route id="_route1"> <from id="_from1" uri="file:src/data?noop=true"/> <to id="_Received" uri="file:target/messages/received"/> </route> </camelContext> </blueprint>
次のステップ
ルートにエンドポイントを追加して設定したので、次の 4章ルートの実行 チュートリアル説明に従ってルートを実行できます。