您有以下路线。
现在我想在路由开始从ftp下载文件之前插入或调用preproccsor bean。我想这样做是为了序列化,因为我有一个分布式节点设置,并希望使用Zookeeper一次一个地序列化下载。运行此路由的所有节点都会导致问题。是否有任何预处理器挂钩或bean可用于执行此操作。
<route id="download-from-ftp" autoStartup="{{cnpp.route.startup}}"
startupOrder="1">
<from
uri="uri"/>
<to uri="{{download.filelocation}}"/>
<to uri="{{backup.filelocation}}"/>
<process ref="updateDownloadedProcessor"/>
</route>
答案 0 :(得分:0)
你是否有机会看到骆驼拦截器,特别是&#39; interceptFrom&#39;。 http://camel.apache.org/intercept.html
<强> InterceptFrom 强>
InterceptFrom用于拦截任何路由中的任何传入Exchange(它拦截来自DSL的所有路由)。这允许您为收到的Exchange执行一些自定义行为。您可以为给定的端点提供特定的uri,然后它仅适用于该特定路由。
还可以看看AdviceWith。 http://camel.apache.org/advicewith.html
可以通过添加InterceptFrom来建议现有路线。