我有一个我从中查询的文件丢弃端点。我需要在接收文件时按顺序轮询文件,并且我使用cron表达式仅在当天的某些时间轮询。这是我的文件输入:
file:///tmp/input?idempotent=true&moveFailed=/tmp/error&readLock=changed&readLockCheckInterval=2500&sortBy=file:modified&move=processed/&scheduler=quartz2&scheduler.cron=0+0/5+0-3,5-23+*+*+?
我遇到的问题是Camel轮询了一批文件,但随后将更新的文件写入目录,因此在后续轮询中,在上一批完成之前处理新文件。
我在路线中添加了一些属性来显示批量大小以及是否已完成某些信息:
<camel:log message="Camel batch size: $simple{property.CamelBatchSize}, Camel Batch Index: $simple{property.CamelBatchIndex}, Camel Batch finished: $simple{property.CamelBatchComplete}"/>
在上一批完成之前,如何告诉Camel不要轮询?我这样做是因为文件处理的顺序很重要。谢谢!