使用TCP与Spring集成生成MessageSource

时间:2017-10-31 12:21:38

标签: java spring tcp spring-integration

通过TCP客户端从服务器接收一些数据,在Spring Integration中生成MessageSource的最佳方法是什么? 我的应用程序已经在使用来自FTP和SFTP的数据,但我需要使用TCP实现一个版本。在以前的版本中,入口点是InboundChannelAdapter,如下所示:

@Bean
@InboundChannelAdapter(value = "channel", poller = @Poller(fixedDelay = "10000", maxMessagesPerPoll = "-1"))
public MessageSource<File> ftpMessageSource(
        @Autowired AbstractInboundFileSynchronizer<FTPFile> ftpInboundFileSynchronizer) {
    FtpInboundFileSynchronizingMessageSource source = new FtpInboundFileSynchronizingMessageSource(
            ftpInboundFileSynchronizer);
    source.setLocalDirectory(new File(repo));
    source.setAutoCreateLocalDirectory(true);
    source.setLocalFilter(new AcceptAllFileListFilter<File>());
    return source;
}

1 个答案:

答案 0 :(得分:1)

TCP没有MessageSource。仅仅因为TCP / IP是一种流媒体协议,所以我们通过MessageProducer实现 - TcpReceivingChannelAdapter持续工作。只需为这个定义明确的@Bean定义,并使用正确的ConnectionFactoryMessageChannel进行注入。