S3: Исходящий адаптер для размещения файла в нескольких целевых сегментах

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

Хотелось бы узнать, возможно ли разместить файл в нескольких корзинах, используя один исходящий адаптер, используя саму spring-gration-aws (без использования aws -sdk)

Любое предложение будет полезно.

S3: Исходящий адаптер:

<int-aws:s3-outbound-channel-adapter id="filesS3Mover"
        channel="filesS3MoverChannel"
        transfer-manager="transferManager"
        bucket="${aws.s3.target.bucket}"
        key-expression="headers.targetsystem-folder/headers.file_name"
        command="UPLOAD">
</int-aws:s3-outbound-channel-adapter>

1 ответ

Нет, с таким канальным адаптером невозможно посылать одновременно несколько блоков. Это не его ответственность.

Вы можете иметь:

 <xsd:attribute name="bucket-expression">
        <xsd:annotation>
            <xsd:documentation>
                A SpEL expression to evaluate S3 bucket at runtime against request message.
                Mutually exclusive with 'bucket'.
            </xsd:documentation>
        </xsd:annotation>
    </xsd:attribute>

тем не менее, чтобы определить его во время выполнения с сообщением и иметь цикл перед <int-aws:s3-outbound-channel-adapter> изменять заголовок сообщения на каждой итерации и отправлять их снова и снова на один и тот же канал.

Другие вопросы по тегам