s3的spring-integration-aws是否可以复制存储桶子目录?

路易斯根

我正在使用来自https://github.com/spring-projects/spring-integration-aws的样本配置作为入站通道适配器,但是我有一个存储桶,其中包含内部带有CSV的子目录。

有没有办法在本地复制存储桶树结构?我只能从子目录中复制文件,但是最终还是在我用messageSource.setLocalDirectory(LOCAL_FOLDER)设置的目录的根目录中创建了文件。

还是有办法识别文件来自哪个bucket子目录?

@Bean
@InboundChannelAdapter(value = "s3FilesChannel", poller = @Poller(fixedDelay = "100"))
public S3InboundFileSynchronizingMessageSource s3InboundFileSynchronizingMessageSource() {
    S3InboundFileSynchronizingMessageSource messageSource =
            new S3InboundFileSynchronizingMessageSource(s3InboundFileSynchronizer());
    messageSource.setAutoCreateLocalDirectory(true);
    messageSource.setLocalDirectory(LOCAL_FOLDER);
    messageSource.setLocalFilter(new AcceptOnceFileListFilter<File>());
    return messageSource;
}
阿尔特姆·比兰(Artem Bilan)

您需要使用

/**
 * Switch the local {@link FileReadingMessageSource} to use a custom
 * {@link DirectoryScanner}.
 * @param scanner the {@link DirectoryScanner} to use.
 * @since 5.0
 */
public void setScanner(DirectoryScanner scanner) {

并指定一个RecursiveDirectoryScannerhttps : //docs.spring.io/spring-integration/docs/current/reference/html/ftp.html#_recovering_from_failures

从版本5.0开始,入站通道适配器可以根据生成的本地文件名在本地构建子目录。

您需要从存储桶中拉出,S3InboundFileSynchronizingMessageSource它将在本地目录中恢复结构。

注意:您当然需要使用最新的spring-integration-aws-2.0.0.RELEASE

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

如何创建s3存储桶子目录(无服务器)?

使用Spring Integration AWS轮询S3存储桶以进行文件和处理

Spring XD(基于Spring Integration DSL)AWS S3接收器模块错误

使用S3消息处理程序和Spring Integration动态设置S3存储桶

来自多个s3存储桶的Spring Integration AWS s3-inbound-streaming-channel-adapter流

使用Spring Batch Integration为AWS S3中的每个新文件启动JobLaunchRequest

尝试使用spring-integration-aws S3StreamingMessageSource轮询S3时使用NPE

如何使用spring-integration-aws获取S3存储桶中当前日期的对象计数?

如何从存储桶根目录重定向到AWS S3中的子目录?

也可以使用Jenkins S3插件复制子目录

亚马逊s3 aws url路径子目录存储桶

如何使用aws s3 cp复制根目录中的所有对象,而不复制子目录?

将CSV文件从公共Git子目录复制到S3存储桶

Spring Integration:如何使用IntegrationFlow在sftp上动态创建子目录

AWS Lambda将列出文件版本控制中的S3存储桶对象和子目录

授予访问权限以读取Amazon S3存储桶中的子目录

在 AWS S3 上创建过时的子目录的简单方法

Spring Integration AWS本地SQS

NiFi数据插入s3子目录

从PySpark中的s3子目录读取数据

spring-integration-aws S3StreamingMessageSource如何删除远程文件?

Spring Integration AWS-S3-Inbound-Adapter-deleteSourceFiles和备份文件

如何将子目录路径传递给GunDB S3存储驱动程序,以便可以与非Gun数据共享同一S3存储桶?

(ASDF 3)是否可以递归地在子目录中加载系统?

从带有boto3和Python 3.7的AWS S3的特定“子目录”下载多个文件

重定向/重写(在Nginx中)对子目录的请求到S3兼容存储桶

Spring Integration Mail 入站复制与 Outlook

使用Python获取AWS S3子目录中每个文件夹的最后修改日期

Amazon Web Services(AWS)S3 Java创建一个子目录(对象)