57.8. Camel Bean インテグレーション
57.8.1. Camel アノテーション
Camel Bean インテグレーション の一部として、Camel CDI によってシームレスにサポートされる アノテーション のセットが Camel CDI で提供されます。そのため、CDI Bean でこれらのアノテーションのいずれかを使用できます。以下に例を示します。
Camel アノテーション | CDI equivalent | |
---|---|---|
設定プロパティー |
@PropertyInject("key") String value; | DeltaSpike 設定メカニズム を使用する場合: @Inject @ConfigProperty(name = "key") String value; 詳細は、「設定プロパティー」を参照してください。 |
プロデューサーテンプレートインジェクション(デフォルトの Camel コンテキスト) |
@Produce(uri = "mock:outbound") ProducerTemplate producer; @Produce(uri = "mock:outbound") FluentProducerTemplate producer; |
@Inject @Uri("direct:outbound") ProducerTemplate producer; @Produce(uri = "direct:outbound") FluentProducerTemplate producer; |
エンドポイントインジェクション(デフォルトの Camel コンテキスト) |
@EndpointInject(uri = "direct:inbound") Endpoint endpoint; |
@Inject @Uri("direct:inbound") Endpoint endpoint; |
エンドポイントインジェクション(名前による Camel コンテキスト) |
@EndpointInject(uri = "direct:inbound", context = "foo") Endpoint contextEndpoint; |
@Inject @ContextName("foo") @Uri("direct:inbound") Endpoint contextEndpoint; |
Bean インジェクション(型別) |
@BeanInject MyBean bean; |
@Inject MyBean bean; |
Bean インジェクション(名前別) |
@BeanInject("foo") MyBean bean; |
@Inject @Named("foo") MyBean bean; |
POJO の消費 |
@Consume(uri = "seda:inbound") void consume(@Body String body) { //... } |
|