我使用Spring Integration中的 inbound-channel-adapter 从远程服务器检索sftp上的文件 . 一切正常 . 但我有一个额外的要求:在本地接收文件后,该文件需要移动到远程服务器上的"send"目录 .
"SFTP Outbound Gateway"有适当的方法用于 move 操作,但我的问题是何时调用它 .
情况:远程服务器上有10个文件,本地服务器上有0个文件当我启动应用程序时,它将从远程服务器接收所有10个文件并将它们写入我的本地文件系统 . 完善 .
情况:远程服务器上有1个文件,本地服务器上有10个文件在这种情况下会收到远程文件,但是对于本地文件系统上的每个文件,也会调用QueueChannel的接收方法 . 来自一个文件的示例日志:(file1.zip)
18:12:52.118 [task-scheduler-1] INFO o.s.i.file.FileReadingMessageSource - Created message: [[Payload File content=C:\Downloads\sftpTest\file1.zip][Headers=...]
18:12:52.119 [task-scheduler-1] DEBUG o.s.i.e.SourcePollingChannelAdapter - Poll resulted in Message: [Payload File content=C:\Downloads\sftpTest\file1.zip][Headers=...]
18:12:52.119 [task-scheduler-1] DEBUG o.s.integration.channel.QueueChannel - preSend on channel 'fromChannel