第265章 RouteBox コンポーネント(非推奨)
Camel バージョン 2.6 で利用可能
変更に関する Routebox の件名
routebox コンポーネントを使用すると、カプセル化機能やストラテジーベースの間接化サービスを、自動作成またはユーザーが挿入された Camel コンテキストでホストされる Camel ルートのコレクションに提供する特殊なエンドポイントを作成できます。
Routebox エンドポイントは、Camel ルートで直接呼び出すことができる Camel エンドポイントです。routebox エンドポイントは、以下の主要な機能を実行します。
- カプセル化 - 内側の Camel コンテキストに保存されている Camel ルートのコレクションをホストするブラックボックスとして機能します。内部コンテキストは routebox コンポーネントで完全に制御され、JVM バインド です。
- ストラテジーベースの間接化: ユーザー定義の内部ルーティングストラテジーまたはディスパッチマップに基づいて、Camel ルートと Camel ルートに送信された直接ペイロード。
- Exchange propagation: routebox エンドポイントによって変更されたエクスチェンジを camel ルートの次のセグメントに転送します。
routebox コンポーネントは、コンシューマーおよびプロデューサーエンドポイントの両方をサポートします。
プロデューサーエンドポイントは 2 つのフレーバーです。
- 外部ルートトレイコンシューマーエンドポイントへの受信リクエストを送受信するプロデューサー
- 内部埋め込み Camel コンテキストでルートを直接呼び出すプロデューサー。これにより、リクエストを外部コンシューマーに送信しません。
Maven ユーザーは、このコンポーネントの pom.xml
に以下の依存関係を追加する必要があります。
<dependency> <groupId>org.apache.camel</groupId> <artifactId>camel-routebox</artifactId> <version>x.x.x</version> <!-- use the same version as your Camel core version --> </dependency>
265.1. Camel Routebox エンドポイントが必要
routebox コンポーネントは、複雑な環境での統合を容易にするように設計されています。
- ルートに関する大規模なコレクション
- さまざまな方法でインテグレーションを必要とする各種のエンドポイントテクノロジーを含む
このような環境では、Camel ルート間でレイヤーを効果的に整理することで、統合ソリューションを作り出す必要があることがよくあります。
- 粒度の細かいレベルルートまたは高レベルのルート: 統合フォーカスエリアを表す Routebox エンドポイントとして公開される内部または下位レベルのルートの集約されたコレクション。たとえば、以下のようになります。
フォーカスエリア | 粒度の細かいルートの例 |
---|---|
department Focus | HR ルート、営業ルート等 |
supply chain & B2B Focus | 配送経路、Fulfillment ルート、サードパーティーサービスなど |
テクノロジー集約 | データベースルート、JMS ルート、スケジュールされているバッチルートなど |
- 粒度の細かいルート: 単数および特定のビジネスまたは統合パターンを実行するルート。
粒度の細かいルートの Routebox エンドポイントに送信される要求は、特定の統合目的の一時的なルートに要求を委譲し、最終的な内部結果を収集し、結合されたルートで次のステップに進むことができます。