Estou usando o Spring Integration Java DSL versão 1.2.2 e seguindo alguns exemplos tento escrever um código para pesquisar uma pasta
return IntegrationFlows .from(Files.inboundAdapter(new File("/tmp/foo"))) .handle((p, h) -> fileProcessor.process(p)) .get();
Este código não pode ser compilado porque
"Cannot resolve method 'from(org.springframework.integration.dsl. file.FileInboundChannelAdapterSpec)'"
Como isso pode ser corrigido e como o polling de intervalo fixo pode ser adicionado?
Não está claro o que está acontecendo em seu IDE, mas temos esse exemplo em casos de teste:
@Bean public IntegrationFlow fileToFile() { return IntegrationFlows.from(Files.inboundAdapter(new File("/tmp/in")) .autoCreateDirectory(true) .patternFilter("*.txt"), e -> e.poller(Pollers.fixedDelay(5000))) .transform(Transformers.fileToString()) .transform("payload.replaceAll('\r\n', '\n')") .handle(Files.outboundAdapter("'/tmp/out'") .autoCreateDirectory(true)) .get(); }
O fixedDelay()
é uma resposta para sua segunda pergunta sobre fixed-interval
.