我在同一个文件位置有 2 个文件.....我希望同时提取这两个文件,以便我可以同时在我的处理器中获取这两个文件...
我正在使用 Apache Camel 进行路由。
我在同一个文件位置有 2 个文件.....我希望同时提取这两个文件,以便我可以同时在我的处理器中获取这两个文件...
我正在使用 Apache Camel 进行路由。
您的问题的解决方案取决于很多情况。
如果您可以预测文件名,您可以轻松地将pollEnrich与聚合策略一起使用。
聚合策略为您提供了这样的方法
Exchange aggregate(Exchange oldExchange,Exchange newExchange)
这样您就可以决定如何处理这两个文件。oldExchange
是原始交换,newExchange
将是来自丰富 URI 的交换。
伪代码示例:
from("file:inbox?fileName=invoices.csv")
.pollEnrich("file:inbox2?fileName=customers.xml" strategyRef="myAggregationStrategy")
.bean(someTransformerBean)
.to("file:outbox?fileName=report.xml");