diff --git a/spring-integration-sftp/src/main/java/org/springframework/integration/sftp/session/SimpleSftpSessionFactory.java b/spring-integration-sftp/src/main/java/org/springframework/integration/sftp/session/DefaultSftpSessionFactory.java similarity index 89% rename from spring-integration-sftp/src/main/java/org/springframework/integration/sftp/session/SimpleSftpSessionFactory.java rename to spring-integration-sftp/src/main/java/org/springframework/integration/sftp/session/DefaultSftpSessionFactory.java index a6a76823eb..e4cded1c48 100644 --- a/spring-integration-sftp/src/main/java/org/springframework/integration/sftp/session/SimpleSftpSessionFactory.java +++ b/spring-integration-sftp/src/main/java/org/springframework/integration/sftp/session/DefaultSftpSessionFactory.java @@ -23,14 +23,13 @@ import org.springframework.util.Assert; import org.springframework.util.StringUtils; /** - * Factory for creating {@link SftpSession} instances. There are lots of ways to construct a - * {@link SftpSession} instance, and not all of them are obvious. This factory should help. + * Factory for creating {@link SftpSession} instances. * * @author Josh Long * @author Mario Gray * @since 2.0 */ -public class SimpleSftpSessionFactory implements SessionFactory { +public class DefaultSftpSessionFactory implements SessionFactory { private volatile String host; @@ -86,7 +85,7 @@ public class SimpleSftpSessionFactory implements SessionFactory { if (privateKey != null){ privateKeyToPass = privateKey.getFile().getAbsolutePath(); } - DefaultSftpSession session = new DefaultSftpSession( + SftpSession session = new SftpSession( this.user, this.host, this.password, this.port, this.knownHosts, null, privateKeyToPass, this.privateKeyPassphrase); session.connect(); return session; diff --git a/spring-integration-sftp/src/main/java/org/springframework/integration/sftp/session/DefaultSftpSession.java b/spring-integration-sftp/src/main/java/org/springframework/integration/sftp/session/SftpSession.java similarity index 97% rename from spring-integration-sftp/src/main/java/org/springframework/integration/sftp/session/DefaultSftpSession.java rename to spring-integration-sftp/src/main/java/org/springframework/integration/sftp/session/SftpSession.java index dda1a95e2e..f5fa95bfeb 100644 --- a/spring-integration-sftp/src/main/java/org/springframework/integration/sftp/session/DefaultSftpSession.java +++ b/spring-integration-sftp/src/main/java/org/springframework/integration/sftp/session/SftpSession.java @@ -40,7 +40,7 @@ import com.jcraft.jsch.UserInfo; * @author Mark Fisher * @since 2.0 */ -public class DefaultSftpSession implements Session { +public class SftpSession implements Session { private final Log logger = LogFactory.getLog(this.getClass()); @@ -78,7 +78,7 @@ public class DefaultSftpSession implements Session { * to surmount that, we need the private key passphrase. Specify that here. * @throws Exception thrown if any of a myriad of scenarios plays out */ - public DefaultSftpSession(String userName, String hostName, String userPassword, int port, String knownHostsFile, + public SftpSession(String userName, String hostName, String userPassword, int port, String knownHostsFile, InputStream knownHostsInputStream, String privateKey, String pvKeyPassPhrase) throws Exception { JSch jSch = new JSch(); @@ -120,15 +120,6 @@ public class DefaultSftpSession implements Session { } } - public void close() { - if (jschSession.isConnected()) { - jschSession.disconnect(); - if (channel.isConnected()) { - channel.disconnect(); - } - } - } - public boolean mkdir(String path) { try { channel.mkdir(path); @@ -191,6 +182,15 @@ public class DefaultSftpSession implements Session { } } + public void close() { + if (jschSession.isConnected()) { + jschSession.disconnect(); + if (channel.isConnected()) { + channel.disconnect(); + } + } + } + /** * this is a simple, optimistic implementation of this interface. It simply returns in the positive where possible diff --git a/spring-integration-sftp/src/test/java/org/springframework/integration/sftp/config/InboundChannelAdapaterParserTests-context-fail-autocreate.xml b/spring-integration-sftp/src/test/java/org/springframework/integration/sftp/config/InboundChannelAdapaterParserTests-context-fail-autocreate.xml index e14c633e85..8682b0f141 100644 --- a/spring-integration-sftp/src/test/java/org/springframework/integration/sftp/config/InboundChannelAdapaterParserTests-context-fail-autocreate.xml +++ b/spring-integration-sftp/src/test/java/org/springframework/integration/sftp/config/InboundChannelAdapaterParserTests-context-fail-autocreate.xml @@ -20,7 +20,7 @@ - + diff --git a/spring-integration-sftp/src/test/java/org/springframework/integration/sftp/config/InboundChannelAdapaterParserTests-context.xml b/spring-integration-sftp/src/test/java/org/springframework/integration/sftp/config/InboundChannelAdapaterParserTests-context.xml index 7cdaaefb69..d6e3b3cb93 100644 --- a/spring-integration-sftp/src/test/java/org/springframework/integration/sftp/config/InboundChannelAdapaterParserTests-context.xml +++ b/spring-integration-sftp/src/test/java/org/springframework/integration/sftp/config/InboundChannelAdapaterParserTests-context.xml @@ -26,7 +26,7 @@ - + diff --git a/spring-integration-sftp/src/test/java/org/springframework/integration/sftp/config/MessageHistory-context.xml b/spring-integration-sftp/src/test/java/org/springframework/integration/sftp/config/MessageHistory-context.xml index aed5c71f18..fcbe0bf157 100644 --- a/spring-integration-sftp/src/test/java/org/springframework/integration/sftp/config/MessageHistory-context.xml +++ b/spring-integration-sftp/src/test/java/org/springframework/integration/sftp/config/MessageHistory-context.xml @@ -20,7 +20,7 @@ - + diff --git a/spring-integration-sftp/src/test/java/org/springframework/integration/sftp/config/OutboundChannelAdapaterParserTests-context.xml b/spring-integration-sftp/src/test/java/org/springframework/integration/sftp/config/OutboundChannelAdapaterParserTests-context.xml index 99cd0c8850..05029e1af3 100644 --- a/spring-integration-sftp/src/test/java/org/springframework/integration/sftp/config/OutboundChannelAdapaterParserTests-context.xml +++ b/spring-integration-sftp/src/test/java/org/springframework/integration/sftp/config/OutboundChannelAdapaterParserTests-context.xml @@ -8,7 +8,7 @@ http://www.springframework.org/schema/integration/sftp http://www.springframework.org/schema/integration/sftp/spring-integration-sftp-2.0.xsd"> - + diff --git a/spring-integration-sftp/src/test/java/org/springframework/integration/sftp/config/OutboundChannelAdapaterParserTests.java b/spring-integration-sftp/src/test/java/org/springframework/integration/sftp/config/OutboundChannelAdapaterParserTests.java index 9c1dc0deec..0c096b1a73 100644 --- a/spring-integration-sftp/src/test/java/org/springframework/integration/sftp/config/OutboundChannelAdapaterParserTests.java +++ b/spring-integration-sftp/src/test/java/org/springframework/integration/sftp/config/OutboundChannelAdapaterParserTests.java @@ -32,7 +32,7 @@ import org.springframework.integration.endpoint.EventDrivenConsumer; import org.springframework.integration.file.FileNameGenerator; import org.springframework.integration.file.remote.session.CachingSessionFactory; import org.springframework.integration.sftp.outbound.SftpSendingMessageHandler; -import org.springframework.integration.sftp.session.SimpleSftpSessionFactory; +import org.springframework.integration.sftp.session.DefaultSftpSessionFactory; import org.springframework.integration.test.util.TestUtils; /** @@ -58,7 +58,7 @@ public class OutboundChannelAdapaterParserTests { assertNotNull(TestUtils.getPropertyValue(handler, "temporaryBufferFolder")); assertNotNull(TestUtils.getPropertyValue(handler, "temporaryBufferFolderFile")); CachingSessionFactory sessionFactory = (CachingSessionFactory) TestUtils.getPropertyValue(handler, "sessionFactory"); - SimpleSftpSessionFactory clientFactory = (SimpleSftpSessionFactory) TestUtils.getPropertyValue(sessionFactory, "sessionFactory"); + DefaultSftpSessionFactory clientFactory = (DefaultSftpSessionFactory) TestUtils.getPropertyValue(sessionFactory, "sessionFactory"); assertEquals("localhost", TestUtils.getPropertyValue(clientFactory, "host")); assertEquals(2222, TestUtils.getPropertyValue(clientFactory, "port")); }