如何检测文件已准备好在camel中使用?

时间:2015-05-12 14:03:15

标签: apache-camel

我正在使用camel api进行大量文件处理。

示例路线:

from("file://testa")
.to("file://testb")
.end();

from("file://testb")
.to("xyz")
.end();

此处在完成第一条路线第二条路线开始处理之前。我的要求是我不想使用任何shcheduling技术,我想只在第一个路由消耗时使用文件夹testb中的数据。请帮我解决这个问题。

注意:我是Camel Technology的新手。

2 个答案:

答案 0 :(得分:0)

如果您访问文件组件页面,则可以看到有一个名为readLock的选项。值changed可能就是您要查找的内容。还有其他选项可以为文件组件创建锁,以便了解文件何时就绪。

了解更多信息:enter link description here

答案 1 :(得分:0)

您可以在第一条路线中拥有直接组件,如:

<route id="route1">
    <from uri="file://sourceFolder/"/>
    <log message = "fetching from source folder" />
    <to uri="file://intermediateDestination" />
    <log message = "Writing to an intermediateDestination" />
    <to uri="direct:processSecond" />
</route>

<route id="route2">
    <from uri="direct:processSecond"/>
    <from uri="file://intermediateDestination" />
    <log message = "fetching from intermediateDestination" />
    <to uri="file://destination" />
    <log message = "Writing to an intermediateDestination" />
</route>