82.7. 例
以下のルートでは Disruptor を使用してリクエストをこの非同期キューに送信し、別のスレッドでさらに処理するために fire-and-forget メッセージを送信し、このスレッド内の定数応答を元の呼び出し元に返します。
public void configure() throws Exception { from("direct:start") // send it to the disruptor that is async .to("disruptor:next") // return a constant response .transform(constant("OK")); from("disruptor:next").to("mock:result"); }
ここでは Hello World のメッセージを送信し、応答が OK であることを想定します。
Object out = template.requestBody("direct:start", "Hello World"); assertEquals("OK", out);
「Hello World」メッセージは、さらなる処理のために、別のスレッドの Disruptor から消費されます。これはユニットテストからのものであるため、ユニットテストでアサーションを実行できるモックエンドポイントに送信されます。