我正在使用spring集成从SFTP服务器下载一组PDF和XML文件 . 该过程由基于cron的轮询器触发 . 我需要确保在来自同一远程目录的PDF文件之前完全下载所有XML文件 . 我不想使用两个不同的cron作业来触发这些 . 我怎么解决这个问题?提前致谢 . (注意:我是集成框架的新手)
在 filter 属性中使用自定义 FileListFilter (对于FTP使用 FTPFile ,对于SFTP使用 LsEntry 作为参数化通用类型) .
filter
FileListFilter
FTPFile
LsEntry
在 filterFiles 方法中,将候选文件列表排序为您希望它们下载的顺序 .
filterFiles
我建议计算目录中的文件数,然后在循环中使用它 . 要检查UNIX系统上的文件数,可以使用以下命令:
ls -1fa | wc -l
下载所有XML后,您可以触发另一个开始下载PDF文件的方法 .
2 回答
在
filter
属性中使用自定义FileListFilter
(对于FTP使用FTPFile
,对于SFTP使用LsEntry
作为参数化通用类型) .在
filterFiles
方法中,将候选文件列表排序为您希望它们下载的顺序 .我建议计算目录中的文件数,然后在循环中使用它 . 要检查UNIX系统上的文件数,可以使用以下命令:
下载所有XML后,您可以触发另一个开始下载PDF文件的方法 .