2017-11-02 6 views
-1

ラクダルート:複数のfrom文の場合、camelは以前の(ソース)パイプラインを理解できますか?

from("file://" + REST_FILES + "?idempotent=true") 
    .from("file://" + FTP_FILES + "?idempotent=true") 
    .process(new Processor() { 
     @Override 
     public void process(Exchange exchange) { 
     } 

それはprocessメソッド内理解することは可能ですが - 交換はREST_FILESからかFTP_FILESから入手しましたか?

+0

このようなルートで複数の「from」を使用することはできません。 – pvpkiran

+0

@pvpkiranなぜ、それは良い作品 – gstackoverflow

答えて

1

私はメンテナンスとテストの観点から、これを3つの異なるルートに分割する方がよいと思います。

ルート1は、最初のファイルエンドポイントから受信し、処理を行う新しいルートに送信します。

ルート2は、最初のファイルエンドポイントから受信し、処理を行う新しいルートに送信します。

新しいルートであるルート3が実際の処理を行います。

次に、Exchangeプロパティをルート1と2から設定できます。このプロパティは、メッセージの到着ルートとルート3のルートを識別し、そのプロパティに基づいて何をすべきかを決定します。

関連する問題