在处理完文件中的所有行后删除文件

时间:2015-04-24 16:23:52

标签: spring-xd

我想在处理完文件中的所有行后删除文件。 我的溪流看起来像

source (file --fixedDelay=0 --outputType=text/plain --dir=XXX) | 
    splitter --expression=payload.split('\\n') | 
    transform -> filter -> sink

我的文件存储在目录中,文件模块正在监视该目录。我希望每个文件在处理完毕后都会被删除。

感谢。

1 个答案:

答案 0 :(得分:1)

确实令人惊讶的是文件源在处理后没有删除文件的选项,这可以通过查看xd / modules / source / file / config / file.xml中的配置文件来确认(截至版本1.1.0)。

虽然文件源没有此选项,但sftp源确实拥有此选项。因此,您可以使用sftp源。这将需要安装spring xd的机器上的ssh服务器。这有帮助吗?

您可能还希望通过配置文件转换器来添加自己的自定义源模块。文件转换器支持delete-files="true"选项:

http://docs.spring.io/spring-integration/reference/html/files.html