Red Hat Training
A Red Hat training course is available for Red Hat Fuse
57.2. Camel ルートの自動検出
Camel CDI は、アプリケーション内のすべての RoutesBuilder
Bean を自動的に収集し、インスタンス化して、CDI コンテナーの初期化時に CamelContext
Bean インスタンスに追加します。たとえば、Camel ルートの追加は、クラスを宣言するのと同じくらい簡単です。
class MyRouteBean extends RouteBuilder { @Override public void configure() { from("jms:invoices").to("file:/invoices"); } }
必要な数の RoutesBuilder
Bean を宣言できることに注意してください。さらに、RouteContainer
Bean も自動的に収集され、インスタンス化され、コンテナーの初期化時に Camel CDI によって管理される CamelContext
Bean インスタンスに追加されます。
Camel 2.19 以降で利用可能
状況によっては、RouteBuilder
および RouteContainer
Bean の自動設定を無効にする必要がある場合があります。これは、CdiCamelConfiguration
イベントを監視することで実現できます。
static void configuration(@Observes CdiCamelConfiguration configuration) { configuration.autoConfigureRoutes(false); }
同様に、設定された CamelContext
Bean の自動起動を無効にすることができます。
static void configuration(@Observes CdiCamelConfiguration configuration) { configuration.autoStartContexts(false); }