gpt4 book ai didi

apache-camel - 使用带有 pollEnrich 模式的 apache Camel csv 处理器?

转载 作者:行者123 更新时间:2023-12-04 05:19:25 26 4
gpt4 key购买 nike

Apache Camel 2.12.1

是否可以将 Camel CSV 组件与 pollEnrich 一起使用?我看到的每个例子都是这样的:

from("file:somefile.csv").marshal...

而我正在使用 pollEnrich,例如:
pollEnrich("file:somefile.csv", new CSVAggregator())

所以在 CSVAggregator 中我没有 csv...我只有一个文件,我必须自己处理 csv。那么有没有办法以某种方式将编码连接到丰富位......?

编辑

为了使这更一般......例如:
from("direct:start")
.to("http:www.blah")
.enrich("file:someFile.csv", new CSVAggregationStrategy) <--how can I call marshal() on this?

...
public class CSVAggregator implements AggregationStrategy {
@Override
public Exchange aggregate(Exchange oldExchange, Exchange newExchange) {
/* Here I have:
oldExchange = results of http blah endpoint
newExchange = the someFile.csv GenericFile object */

}

有什么办法可以避免这种情况并在路线本身上使用 marshal().csv 类型的调用吗?

谢谢,

茶先生

最佳答案

您可以在丰富中使用任何端点。这包括指向其他​​路由的直接端点。你的例子...

替换这个:

from("direct:start")
.to("http:www.blah")
.enrich("file:someFile.csv", new CSVAggregationStrategy)

有了这个:
from("direct:start")
.to("http:www.blah")
.enrich("direct:readSomeFile", new CSVAggregationStrategy);

from("direct:readSomeFile")
.to("file:someFile.csv")
.unmarshal(myDataFormat);

关于apache-camel - 使用带有 pollEnrich 模式的 apache Camel csv 处理器?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20640944/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com