103.13. 使用完成文件
可作为 Camel 2.6 使用。
另请参阅以下 编写完成文件 的章节。
				如果您只想在文件存在时消耗文件,那么您可以在端点上使用 doneFileName 选项。
			
from("file:bar?doneFileName=done");
from("file:bar?doneFileName=done");
				如果与目标文件位于同一目录中,则将仅消耗来自 bar 文件夹中的文件。消耗文件后,Camel 将自动删除已完成的文件。从 Camel 2.9.3 开始,如果配置了 noop=true,则 Camel 不会自动删除 已完成的文件。
			
				但是,每个目标文件有一个 已完成的文件 更为常见。这意味着有 1:1 相关性。要做到这一点,您必须在 doneFileName 选项中使用动态占位符。目前,Camel 支持以下两个动态令牌: file:name 和 file:name.noext,它必须用 $\{ } 括起。使用者仅支持 实现 的文件名的静态部分作为前缀或后缀(不是两者)。
			
from("file:bar?doneFileName=${file:name}.done");
from("file:bar?doneFileName=${file:name}.done");在本示例中,只有 名称文件名为.done 时,才会对文件进行轮询。例如:
- 
						hello.txt- 是要消耗的文件
- 
						hello.txt.done- 是关联的完成文件
您还可以为已完成的文件使用前缀,例如:
from("file:bar?doneFileName=ready-${file:name}");
from("file:bar?doneFileName=ready-${file:name}");- 
						hello.txt- 是要消耗的文件
- 
						ready-hello.txt- 是关联的完成文件