想知道 Spring Integration SFTP 入站适配器是否支持在运行时变化的文件名正则表达式。
文件名正则表达式看起来像"^(foo_|bar_)" + new java.text.SimpleDateFormat("yyyyMMdd").
format(new java.util.Date()) +".txt$"
我在入站适配器设置中设置了 auto-startup="true" 。
在我的测试用例中,使用固定速率=“1000”时间单元=“毫秒”的轮询器,它将当天的正确文件复制到本地目录。但是,如果我在系统日期仍在轮询时更改系统日期,则它不会获取新日期的文件。如果我重新运行测试,它就会起作用。
我的理解是它应该有效。不是因为它是从 JUnit 运行的吗?
你可以子类化SftpRegexPatternFileListFilter
并在每次调用时更新模式accept
- setPattern
and return super.accept(file)
.
您可以将其优化为仅在检测到日期更改时编译新模式。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)