2016-07-23 11 views
0

メッセージのシーケンスを並べ替え、再シーケンス後にメッセージをその順序に従って動的にルーティングしたいとします。例えば、リシークエンシング後の最初のメッセージはAにルーティングする必要があり、他のメッセージはBにルーティングする必要があります。再順序付けメッセージに基づく動的ルーティング

resequencerを使用してメッセージを並べ替えることができましたが、再シーケンス後に最初のメッセージを特定のルートにのみ動的にルーティングします。どんな助けでも大歓迎です。上記のルートで

from(CAMEL_DIRECT_REORGANISE_MSGS) 
     .resequence(header("priority")).batch().timeout(resequencerTimeout * 1000).size(3).reverse() 
     .to("direct:A"); 

、置換器のうち、すべてのメッセージがRouteAに流れるが、私は一人で最初のメッセージがRouteBにRouteAし、残りの部分に流れるようにしたいです。

答えて

0

受信者リストコンポーネントを使用すると、 'to'エンドポイントにエンドポイントURIを動的に渡すことができます。

+0

しかし、再配列の後、最初の要素(再配列バッチのインデックス0)だけで、他のものについては「B経路」として受信者リストをどのように設定するのですか?どの要素が再配列バッチの最初の要素か分からないからです。 – sheikhisham

関連する問題