CamelのProducerTemplateを使用して、オブジェクトを生成し、それらをSEDAキューに送信するBeanがあります。
本文とヘッダーを送信します。
producerTemp.sendBodyAndHeader(document, "sourceSystem", sourceSys);
ここで、ヘッダー名はsourceSystem
であり、ヘッダーオブジェクト値はENUM(sourceSys
)であり、これには、いくつかの異なる属性を含むオブジェクトのソースが含まれていdocument
ます。
SEDAキューから同時にメッセージをプルし、sourceSys列挙型の値に応じて異なるエンドポイントにメッセージを送信したいと思います。
これを使用するためにラクダで最も効率的なEIPは何ですか?Java DSLを使用した例はありますか?列挙型の値をテストする方法がわかりませんか?
私はこのようなことをすると思っています:
from("seda:a")
.choice()
.when(header("foo").isEqualTo(SourceSysEnum.SYSTEM1))
.to("seda:b")
.when(header("foo").isEqualTo(SourceSysEnum.SYSTEM2))
.to("seda:c")
.otherwise()
.to("seda:d");
..?