如何将自定义方法添加到 spring 集成 ftp 网关接口?

Posted

技术标签:

【中文标题】如何将自定义方法添加到 spring 集成 ftp 网关接口?【英文标题】:How to add custom method to spring integration ftp gateway interface? 【发布时间】:2018-01-26 19:59:48 【问题描述】:

在 Spring 集成 ftp doc 之后,我已经设法通过 java config 方式将文件发送到 ftp 服务器:

@MessagingGateway
public interface MyGateway 

     @Gateway(requestChannel = "toFtpChannel")
     void sendToFtp(File file);


ss

    public static void main(String[] args) 
    ConfigurableApplicationContext context =
                new SpringApplicationBuilder(FtpJavaApplication.class)
                    .web(false)
                    .run(args);
    MyGateway gateway = context.getBean(MyGateway.class);
     // sending file to ftp server
    gateway.sendToFtp(new File("/foo/bar.txt"));

在我看来,上面的代码使用自定义方法“sendToFtp()”将文件发送到目标 ftp 服务器。我的问题是如何在 MyGateway 接口中添加其他方法来实现操作?

ls (list files)
get (retrieve file)
mget (retrieve file(s))
rm (remove file(s))
mv (move/rename file)
put (send file)
mput (send multiple files)

【问题讨论】:

【参考方案1】:

每个 FTP 网关只能处理一种方法。

你需要为每个声明一个,然后...

@MessagingGateway
public interface MyGateway 

     @Gateway(requestChannel = "toFtpGetChannel")
     void sendToFtpGet(...);

     @Gateway(requestChannel = "toFtpPutChannel")
     void sendToFtpPut(...);

    ...


【讨论】:

有没有办法订阅任何requestChannel。如果是,如何? 完全不清楚你在问什么;而且,无论如何,您不得在 cmets 中对旧答案提出新问题。问一个新问题,更清楚你要解决的问题;如果相关,请从新问题中引用此答案。

以上是关于如何将自定义方法添加到 spring 集成 ftp 网关接口?的主要内容,如果未能解决你的问题,请参考以下文章

如何将自定义挂钩添加到 Woocommerce 的自定义插件

php 将自定义字段添加到Popup Maker MailChimp集成表单。

我可以将自定义集成应用程序添加到 bim360 可编程

如何通过 API 将自定义字段添加到 SalesForce 中的布局部分

如何将自定义方法添加到 Lumen 的响应类

如何将自定义授权过滤器添加到ASP网络核心中非控制器的方法?