37.2. Fluent Producer テンプレートの使用
Camel 2.18 から利用可能
FluentProducerTemplate
インターフェイスは、プロデューサーを構築するための Fluent 構文を提供します。DefaultFluentProducerTemplate
クラスは FluentProducerTemplate
を実装します。
以下の例では、DefaultFluentProducerTemplate
オブジェクトを使用してヘッダーとボディーを設定します。
Integer result = DefaultFluentProducerTemplate.on(context) .withHeader("key-1", "value-1") .withHeader("key-2", "value-2") .withBody("Hello") .to("direct:inout") .request(Integer.class);
以下の例は、DefaultFluentProducerTemplate
オブジェクトでプロセッサーを指定する方法を示しています。
Integer result = DefaultFluentProducerTemplate.on(context) .withProcessor(exchange -> exchange.getIn().setBody("Hello World")) .to("direct:exception") .request(Integer.class);
以下の例では、デフォルトの Fluent Producer テンプレートをカスタマイズする方法を表しています。
Object result = DefaultFluentProducerTemplate.on(context) .withTemplateCustomizer( template -> { template.setExecutorService(myExecutor); template.setMaximumCacheSize(10); } ) .withBody("the body") .to("direct:start") .request();
FluentProducerTemplate
インスタンスを作成するには、Camel コンテキストで createFluentProducerTemplate()
メソッドを呼び出します。以下に例を示します。
FluentProducerTemplate fluentProducerTemplate = context.createFluentProducerTemplate();