У меня есть файл конфигурации Ftp, например
public class FtpConfig {
@Bean
public DefaultFtpSessionFactory ftpSessionFactory() {
DefaultFtpSessionFactory sessionFactory = new DefaultFtpSessionFactory();
sessionFactory.setHost("host");
sessionFactory.setPort(21);
sessionFactory.setUsername("ftpuser");
sessionFactory.setPassword("pass");
return sessionFactory;
}
@ServiceActivator(inputChannel = "fromFtpChannel")
@Bean
public FtpOutboundGateway getFiles() {
FtpOutboundGateway gateway = new FtpOutboundGateway(ftpSessionFactory(), "get", "payload");
gateway.setOptions(AbstractRemoteFileOutboundGateway.Option.STREAM.getOption());
gateway.setOutputChannelName("fileoutput");
return gateway;
}
}
И шлюз обмена сообщениями
@MessagingGateway
public interface ReadFilesGateway {
@Gateway(requestChannel = "fromFtpChannel", replyChannel = "fileoutput")
InputStream readFiles(String directory);
}
Шлюз обмена сообщениями используется для загрузки файлов с ftp-сервера, для просмотра файлов как inputStream. Служба FileService использует шлюз для чтения файлов. Как написать возможный тестовый сценарий для службы или шлюза обмена сообщениями?