Spring integration 具有Spring积分流的多重过滤器表达式
我正在使用spring集成流,我知道如何添加过滤器表达式Spring integration 具有Spring积分流的多重过滤器表达式,spring-integration,spring-integration-dsl,spring-integration-sftp,Spring Integration,Spring Integration Dsl,Spring Integration Sftp,我正在使用spring集成流,我知道如何添加过滤器表达式 IntegrationFlows.from(Sftp.inboundAdapter(inboundSftp) .localDirectory(此.getlocalDirectory(config.getId())) .deleteRemoteFiles(true) .filterExpression(config.getFilterExpression()) .autoCreateLocalDirectory(true) .remoteD
IntegrationFlows.from(Sftp.inboundAdapter(inboundSftp)
.localDirectory(此.getlocalDirectory(config.getId()))
.deleteRemoteFiles(true)
.filterExpression(config.getFilterExpression())
.autoCreateLocalDirectory(true)
.remoteDirectory(config.getInboundDirectory()),e->e.poller(Pollers.cron(config.getCron()).errorChannel(MessageHeaders.ERROR_CHANNEL)。errorHandler((ex)->{
//关于例外情况的行动就在这里
}))).publishSubscribeChannel(s->s)
.订阅(f->f
.handle(Sftp.outboundAdapter(outboundSftp)
.useTemporaryFileName(false)
.autoCreateDirectory(true)
.remoteDirectory(config.getOutboundDirectory()),c->c.advice(startup.deleteFileAdvice())
))
.订阅(f->f
.手柄(m->{
//我所有的自定义日志逻辑都在这里
})
))
.get();
我想了解的是
- 如何给出多个过滤器表达式,例如,我想从服务器获取.csv和.xml文件
- 如何忽略单个文件类型例如,我只想忽略.txt类型的文件并获取rest文件
.regexFilter
“*\”(xml | csv)
或
.filtereexpression(“name.endsWith('.csv')或name.endsWith('xml')”)
或
.filterExpression(“!name.endsWith('.txt')”)
您可以改用.regexFilter
“*\”(xml | csv)
或
.filtereexpression(“name.endsWith('.csv')或name.endsWith('xml')”)
或
.filterExpression(“!name.endsWith('.txt')”)