第 12 章 系统管理
摘要
系统管理模式描述了如何监控、测试和管理消息传递系统。
12.1. detour
detour
通过 第 3 章 企业集成模式简介 中的 Detour,如果满足控制条件,您可以通过附加步骤发送消息。它可用于在需要时开启额外的验证、测试、调试代码。

Example
在本例中,我们基本上有一个路由,类似于 from ("direct:start").to ("mock:result"),在路由过程中有一个条件去到 mock:detour 端点。
from("direct:start").choice()
.when().method("controlBean", "isDetour").to("mock:detour").end()
.to("mock:result");<route>
<from uri="direct:start"/>
<choice>
<when>
<method bean="controlBean" method="isDetour"/>
<to uri="mock:detour"/>
</when>
</choice>
<to uri="mock:result"/>
</split>
</route>
detour 是打开还是关闭状态,由 ControlBean 决定。因此,当删除时,当消息路由到 mock:detour 时,然后是 mock:result。当停止后,消息会被路由到 mock:result。
有关详情请查看以下示例源:
camel-core/src/test/java/org/apache/camel/processor/DetourTest.java