Spring integration FileReadingMessageSource与Metadatastore

Spring integration FileReadingMessageSource与Metadatastore,spring-integration,spring-integration-dsl,Spring Integration,Spring Integration Dsl,我想知道如何防止特定DSL集成流的多个实例同时使用相同的文件。我在流程的开头使用了FileReadingMessageSource,所以在本例中它是我的“文件观察者”。。。是否可以选择元数据存储?如果是,我如何将其附加到流中?读取文件后,我有一个GenericSelector,以过滤掉一些不需要的文件名。默认情况下,文件读取消息源使用AcceptOnceFileListFilter,以防止读取重复的文件。但这是在记忆中。因此,如果您想在应用程序重新启动后生存下来,并且不想看到已经处理过的文件,您

我想知道如何防止特定DSL集成流的多个实例同时使用相同的文件。我在流程的开头使用了FileReadingMessageSource,所以在本例中它是我的“文件观察者”。。。是否可以选择元数据存储?如果是,我如何将其附加到流中?读取文件后,我有一个GenericSelector,以过滤掉一些不需要的文件名。

默认情况下,
文件读取消息源使用
AcceptOnceFileListFilter
,以防止读取重复的文件。但这是在记忆中。因此,如果您想在应用程序重新启动后生存下来,并且不想看到已经处理过的文件,您可以自由地配置
FileReadingMessageSource
,使用
filesystemtempersistentAcceptoncefileListFilter
,该过滤器由一些共享
ConcurrentMetadataStore
实现提供

您还可以将此筛选器与其他筛选器组合,如
regexpaternfilelistfilter

请参阅文档中有关
链文件列表过滤器的更多信息:

谢谢,我明天第一件事就是设置它,并让您知道。它工作起来很有魅力,谢谢!