Spring Integration AWS — S3-Inbound-Adapter — deleteSourceFiles и файлы резервных копий

Нужно удалить файлы после прочтения из ведра S3, вариант не нашел. Как удалить исходный файл после чтения файла из корзины S3 и как сделать резервную копию файлов после его успешного чтения?

Есть ли способ, которым S3-Inbound-Adapter выводит полезную нагрузку на выходной канал?

Цените свое время и помогайте!

С уважением Картик


person Karthik Palanivelu    schedule 24.09.2015    source источник


Ответы (1)


Картик,

S3-Inbound-Adapter работает так же, как и все другие файловые адаптеры для удаленной файловой системы. Я имею в виду FTP и SFTP. Соединяем synchronize удаленную директорию с локальной и забираем оттуда файлы на каждую poll. Таким образом, операция удаления не должна быть частью процесса send file to output-channel только потому, что удаленная передача и процесс разделены во времени.

Я вижу для вас только возможность удалить / создать резервную копию файла в конце процесса чтения, например. еще один подписчик для publish-subscriber-channel или <transaction-synchronization для <poller> из <int-aws:s3-inbound-channel-adapter>.

Но при этом вы должны как-то указать свойства AmazonS3Object, чтобы в конце вызвать AmazonS3.deleteObject(String bucketName, String key)...

Я уверен, что мы сможем передать эти параметры через MessageHeaders, так что не стесняйтесь поднимать JIRA по этому поводу!

person Artem Bilan    schedule 24.09.2015