Spring 集成 AWS - S3-Inbound-Adapter - deleteSourceFiles 和备份文件
Spring Integration AWS - S3-Inbound-Adapter - deleteSourceFiles and Backup files
我们需要在从 S3 存储桶中读取文件后将其删除,我找不到选项。从S3 bucket中读取文件后如何删除源文件以及读取成功后如何备份文件?
有没有办法让 S3-Inbound-Adapter 将负载输出到输出通道?
感谢您的宝贵时间和帮助!
问候
卡尔提克
卡尔提克,
S3-Inbound-Adapter 与远程文件系统的所有其他基于文件的适配器一样工作。我的意思是 FTP 和 SFTP。我们 synchronize
远程目录和本地目录,并在每个 poll
上从那里获取文件。所以,删除操作不应该作为 send file to output-channel
进程的一部分,只是因为远程传输和进程在时间上是分开的。
我只看到你在阅读过程结束时 delete/backup 归档的选项,例如publish-subscriber-channel
或 <poller>
的 <int-aws:s3-inbound-channel-adapter>
上的 <transaction-synchronization
又多了一位订阅者。
但是你应该以某种方式提供 AmazonS3Object
属性以在最后调用 AmazonS3.deleteObject(String bucketName, String key)
...
我相信我们将能够通过 MessageHeaders
传输这些选项,所以请随时就此事提出 JIRA!
我们需要在从 S3 存储桶中读取文件后将其删除,我找不到选项。从S3 bucket中读取文件后如何删除源文件以及读取成功后如何备份文件?
有没有办法让 S3-Inbound-Adapter 将负载输出到输出通道?
感谢您的宝贵时间和帮助!
问候 卡尔提克
卡尔提克,
S3-Inbound-Adapter 与远程文件系统的所有其他基于文件的适配器一样工作。我的意思是 FTP 和 SFTP。我们 synchronize
远程目录和本地目录,并在每个 poll
上从那里获取文件。所以,删除操作不应该作为 send file to output-channel
进程的一部分,只是因为远程传输和进程在时间上是分开的。
我只看到你在阅读过程结束时 delete/backup 归档的选项,例如publish-subscriber-channel
或 <poller>
的 <int-aws:s3-inbound-channel-adapter>
上的 <transaction-synchronization
又多了一位订阅者。
但是你应该以某种方式提供 AmazonS3Object
属性以在最后调用 AmazonS3.deleteObject(String bucketName, String key)
...
我相信我们将能够通过 MessageHeaders
传输这些选项,所以请随时就此事提出 JIRA!