public class DefaultSftpSessionFactory extends Object implements SessionFactory<com.jcraft.jsch.ChannelSftp.LsEntry>, SharedSessionCapable
SftpSession
instances.Constructor and Description |
---|
DefaultSftpSessionFactory() |
DefaultSftpSessionFactory(boolean isSharedSession) |
DefaultSftpSessionFactory(com.jcraft.jsch.JSch jsch,
boolean isSharedSession)
Intended for use in tests so the jsch can be mocked.
|
Modifier and Type | Method and Description |
---|---|
Session<com.jcraft.jsch.ChannelSftp.LsEntry> |
getSession() |
boolean |
isSharedSession() |
void |
resetSharedSession()
Resets the shared session so the next
#getSession() will return a session
using a new connection. |
void |
setClientVersion(String clientVersion)
Allows you to set the client version property.
|
void |
setEnableDaemonThread(Boolean enableDaemonThread)
If true, all threads will be daemon threads.
|
void |
setHost(String host)
The url of the host you want connect to.
|
void |
setHostKeyAlias(String hostKeyAlias)
Sets the host key alias, used when comparing the host key to the known
hosts list.
|
void |
setKnownHosts(String knownHosts)
Specifies the filename that will be used to create a host key repository.
|
void |
setPassword(String password)
The password to authenticate against the remote host.
|
void |
setPort(int port)
The port over which the SFTP connection shall be established.
|
void |
setPrivateKey(Resource privateKey)
Allows you to set a
Resource , which represents the location of the
private key used for authenticating against the remote host. |
void |
setPrivateKeyPassphrase(String privateKeyPassphrase)
The password for the private key.
|
void |
setProxy(com.jcraft.jsch.Proxy proxy)
Allows for specifying a JSch-based
Proxy . |
void |
setServerAliveCountMax(Integer serverAliveCountMax)
Specifies the number of server-alive messages, which will be sent without
any reply from the server before disconnecting.
|
void |
setServerAliveInterval(Integer serverAliveInterval)
Sets the timeout interval (milliseconds) before a server alive message is
sent, in case no message is received from the server.
|
void |
setSessionConfig(Properties sessionConfig)
Using
Properties , you can set additional configuration settings on
the underlying JSch Session . |
void |
setSocketFactory(com.jcraft.jsch.SocketFactory socketFactory)
Allows you to pass in a
SocketFactory . |
void |
setTimeout(Integer timeout)
The timeout property is used as the socket timeout parameter, as well as
the default connection timeout.
|
void |
setUser(String user)
The remote user to use.
|
public DefaultSftpSessionFactory()
public DefaultSftpSessionFactory(boolean isSharedSession)
isSharedSession
- true if the session is to be shared.public DefaultSftpSessionFactory(com.jcraft.jsch.JSch jsch, boolean isSharedSession)
jsch
- The jsch instance.isSharedSession
- true if the session is to be shared.public void setHost(String host)
host
- The host.JSch.getSession(String, String, int)
public void setPort(int port)
22
. If specified, this properties must
be a positive number.port
- The port.JSch.getSession(String, String, int)
public void setUser(String user)
user
- The user.JSch.getSession(String, String, int)
public void setPassword(String password)
privateKey
is
mandatory.password
- The password.Session.setPassword(String)
public void setKnownHosts(String knownHosts)
knownHosts
- The known hosts.JSch.setKnownHosts(String)
public void setPrivateKey(Resource privateKey)
Resource
, which represents the location of the
private key used for authenticating against the remote host. If the privateKey
is not provided, then the setPassword(String)
property is mandatory.privateKey
- The private key.JSch.addIdentity(String)
,
JSch.addIdentity(String, String)
public void setPrivateKeyPassphrase(String privateKeyPassphrase)
privateKeyPassphrase
- The private key passphrase.JSch.addIdentity(String, String)
public void setSessionConfig(Properties sessionConfig)
Properties
, you can set additional configuration settings on
the underlying JSch Session
.sessionConfig
- The session configuration properties.Session.setConfig(Properties)
public void setProxy(com.jcraft.jsch.Proxy proxy)
Proxy
. If set, then the proxy
object is used to create the connection to the remote host.proxy
- The proxy.Session.setProxy(Proxy)
public void setSocketFactory(com.jcraft.jsch.SocketFactory socketFactory)
SocketFactory
. The socket factory is used
to create a socket to the target host. When a Proxy
is used, the
socket factory is passed to the proxy. By default plain TCP sockets are used.socketFactory
- The socket factory.Session.setSocketFactory(SocketFactory)
public void setTimeout(Integer timeout)
0
, which means,
that no timeout will occur.timeout
- The timeout.Session.setTimeout(int)
public void setClientVersion(String clientVersion)
SSH-2.0-JSCH-0.1.45
clientVersion
- The client version.Session.setClientVersion(String)
public void setHostKeyAlias(String hostKeyAlias)
hostKeyAlias
- The host key alias.Session.setHostKeyAlias(String)
public void setServerAliveInterval(Integer serverAliveInterval)
serverAliveInterval
- The server alive interval.Session.setServerAliveInterval(int)
public void setServerAliveCountMax(Integer serverAliveCountMax)
1
.serverAliveCountMax
- The server alive count max.Session.setServerAliveCountMax(int)
public void setEnableDaemonThread(Boolean enableDaemonThread)
false
,
normal non-daemon threads will be used. This property will be set on the
underlying Session
using
Session.setDaemonThread(boolean)
. There, this
property will default to false
, if not explicitly set.enableDaemonThread
- true to enable a daemon thread.Session.setDaemonThread(boolean)
public Session<com.jcraft.jsch.ChannelSftp.LsEntry> getSession()
getSession
in interface SessionFactory<com.jcraft.jsch.ChannelSftp.LsEntry>
public final boolean isSharedSession()
isSharedSession
in interface SharedSessionCapable
public void resetSharedSession()
SharedSessionCapable
#getSession()
will return a session
using a new connection.resetSharedSession
in interface SharedSessionCapable