私は私のルートで繰り返しパターンを持っている - 特定のプロセッサが、私はそれを呼び出すたびに設定し、同じ3つのヘッダを必要とするので、私は倍10+についての私のルートに次のコードを持っている:Camel - Java DSLを拡張しますか?
.whatever()
.setHeader("foo1", "bar1")
.setHeader("foo2", "bar2")
.setHeader("foo3", "bar3")
.processRef("processorBazThatNeedsHeaders")
.whatever()
ヘッダーは毎回異なる方法で入力されるので、これをサブルーチンに抽象化しても実際には何も購入しません。
.whatever()
.bazProcessor("bar1", "bar2", "bar3")
.whatever()
と「bazProcessor」で、ヘッダーを設定し、プロセッサを呼び出す:私が行うことができるように愛する何
は私がこれを行うにできるようになる私のDSL内の別の方法を持っているサブクラスRouteDefinitionです。
私はこれをやろうとしましたが、これはおそらく将来的ではない重大な手術でのみ可能と思われ、それはothers have had similar luckと思われます。
値をプロセッサの後にルーティングのために使用するため、パラメータをプロセッサに直接渡すのではなく、ヘッダーとして設定する必要があります。
このようなものを実現するための隠された機能はありますか?
@
詳細これは良いアイデアです。私が必要とするのは少し違いますが、これは良いスタートだと思います。私はそれを打つと応答します。 –
あなたの答えを詳細に教えてもらえますか?私はそれを理解しませんでした:( – Edmondo1984