第 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