如何触发和轮询 ftp 出站网关
How to trigger and poll an ftp outbound gateway
我正在尝试使用 ftp 出站网关和递归方法从 ftp 服务器传输文件,因为我的 ftp 服务器将生成新的随机名称文件夹,我需要获取一切。我只知道这种方法有效,除非有人能提出更简单的方法。不管怎样,这是我的代码。
@Bean(value = "ftpTolocal")
public IntegrationFlow fileToFile() {
IntegrationFlow flow = IntegrationFlows
.from("inputChannel")
.handle(Ftp.outboundGateway(defaultFtpSessionFactory(),
AbstractRemoteFileOutboundGateway.Command.MGET,
null)
//.regexFileNameFilter("(.*n.txt)")
.autoCreateDirectory(true)
.options(AbstractRemoteFileOutboundGateway.Option.RECURSIVE)
.localDirectoryExpression("'/localDirectory/' + #remoteDirectory"))
.channel("nullChannel")
.get();
return flow;
}
我已经搜索过,我总是得到的答案是创建一个 inputChannel 消息,但我找不到真正告诉我如何去做的消息。我也看到很多 xml 解决方案,但我找不到如何实现它。 FTP 集成指南似乎很少见,解释对我这样的菜鸟来说似乎很难理解。提前致谢。
@Bean
IntegrationFlow polled() {
return IntegrationFlows.fromSupplier(() -> "testMessage",
e -> e.poller(Pollers.fixedDelay(Duration.ofSeconds(5))))
.handle(System.out::println)
.get();
}
我正在尝试使用 ftp 出站网关和递归方法从 ftp 服务器传输文件,因为我的 ftp 服务器将生成新的随机名称文件夹,我需要获取一切。我只知道这种方法有效,除非有人能提出更简单的方法。不管怎样,这是我的代码。
@Bean(value = "ftpTolocal")
public IntegrationFlow fileToFile() {
IntegrationFlow flow = IntegrationFlows
.from("inputChannel")
.handle(Ftp.outboundGateway(defaultFtpSessionFactory(),
AbstractRemoteFileOutboundGateway.Command.MGET,
null)
//.regexFileNameFilter("(.*n.txt)")
.autoCreateDirectory(true)
.options(AbstractRemoteFileOutboundGateway.Option.RECURSIVE)
.localDirectoryExpression("'/localDirectory/' + #remoteDirectory"))
.channel("nullChannel")
.get();
return flow;
}
我已经搜索过,我总是得到的答案是创建一个 inputChannel 消息,但我找不到真正告诉我如何去做的消息。我也看到很多 xml 解决方案,但我找不到如何实现它。 FTP 集成指南似乎很少见,解释对我这样的菜鸟来说似乎很难理解。提前致谢。
@Bean
IntegrationFlow polled() {
return IntegrationFlows.fromSupplier(() -> "testMessage",
e -> e.poller(Pollers.fixedDelay(Duration.ofSeconds(5))))
.handle(System.out::println)
.get();
}