107.7. Request Reply (リクエストリプライ) の利用
SEDA コンポーネントは、発信者が非同期ルートの完了を待機する Request Reply の使用をサポートしています。たとえば、以下のようになります。
from("mina:tcp://0.0.0.0:9876?textline=true&sync=true").to("seda:input");
from("seda:input").to("bean:processInput").to("bean:createResponse");
from("mina:tcp://0.0.0.0:9876?textline=true&sync=true").to("seda:input");
from("seda:input").to("bean:processInput").to("bean:createResponse");
上記の経路では、受信リクエストを受け入れるポート 9876 に TCP リスナーがあります。リクエストは seda:input キューにルーティングされます。Request Reply メッセージなので、レスポンスを待ちます。seda:input キューの consumer が完了すると、応答を元のメッセージ応答にコピーします。