我想开始一条路线并应用计时器/超时控制设置。如果在超时之前路由没有完成,可能会抛出异常,并且必须停止原始路由线程(路径)。我看过 NotifyBuilder、SEDA、Timer + 窃听、聚合器和 Camel BAM。它们似乎都没有内置功能来停止原始路由线程。你有什么建议吗?谢谢
这是我正在考虑的代码框架:
OnException(Exception.class)
.handled(true)
.to(dead_uri).end()// handle timeout exception and quite the current route thread
from(uri)
//start timer or set timeout something
.to(process_uri);
我知道 Camel JMS 有超时控制,但我不想仅仅因为我的路由需要超时而使用 JMS。SEDA 具有超时控制,但 SEDA 超时将在不同的线程中。如何停止“process_uri”的原始线程?