Class FtpSession
java.lang.Object
org.springframework.integration.ftp.session.FtpSession
- All Implemented Interfaces:
Closeable,AutoCloseable,Session<org.apache.commons.net.ftp.FTPFile>
Implementation of
Session for FTP.- Since:
- 2.0
- Author:
- Mark Fisher, Oleg Zhurakousky, Gary Russell, Artem Bilan, Den Ivanov
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoidappend(InputStream inputStream, String path) Append to a file.voidclose()booleanCheck if the remote file or directory exists.booleanInvoke after closing the InputStream fromSession.readRaw(String).org.apache.commons.net.ftp.FTPClientGet the underlying client library's client instance for this session.Return the host:port pair this session is connected to.booleanisOpen()org.apache.commons.net.ftp.FTPFile[]String[]booleanvoidread(String path, OutputStream fos) Retrieve a remote file as a rawInputStream.booleanvoidbooleanRemove a remote directory.booleantest()Test the session is still alive, e.g.voidwrite(InputStream inputStream, String path)
-
Constructor Details
-
FtpSession
public FtpSession(org.apache.commons.net.ftp.FTPClient client)
-
-
Method Details
-
remove
- Specified by:
removein interfaceSession<org.apache.commons.net.ftp.FTPFile>- Throws:
IOException
-
list
- Specified by:
listin interfaceSession<org.apache.commons.net.ftp.FTPFile>- Throws:
IOException
-
listNames
- Specified by:
listNamesin interfaceSession<org.apache.commons.net.ftp.FTPFile>- Throws:
IOException
-
read
- Specified by:
readin interfaceSession<org.apache.commons.net.ftp.FTPFile>- Throws:
IOException
-
readRaw
Description copied from interface:SessionRetrieve a remote file as a rawInputStream.- Specified by:
readRawin interfaceSession<org.apache.commons.net.ftp.FTPFile>- Parameters:
source- The path of the remote file.- Returns:
- The raw inputStream.
- Throws:
IOException- Any IOException.
-
finalizeRaw
Description copied from interface:SessionInvoke after closing the InputStream fromSession.readRaw(String). Required by some session providers.- Specified by:
finalizeRawin interfaceSession<org.apache.commons.net.ftp.FTPFile>- Returns:
- true if successful.
- Throws:
IOException- Any IOException.
-
write
- Specified by:
writein interfaceSession<org.apache.commons.net.ftp.FTPFile>- Throws:
IOException
-
append
Description copied from interface:SessionAppend to a file.- Specified by:
appendin interfaceSession<org.apache.commons.net.ftp.FTPFile>- Parameters:
inputStream- the stream.path- the destination.- Throws:
IOException- an IO Exception.
-
close
public void close() -
isOpen
public boolean isOpen() -
rename
- Specified by:
renamein interfaceSession<org.apache.commons.net.ftp.FTPFile>- Throws:
IOException
-
mkdir
- Specified by:
mkdirin interfaceSession<org.apache.commons.net.ftp.FTPFile>- Throws:
IOException
-
rmdir
Description copied from interface:SessionRemove a remote directory.- Specified by:
rmdirin interfaceSession<org.apache.commons.net.ftp.FTPFile>- Parameters:
directory- The directory.- Returns:
- True if the directory was removed.
- Throws:
IOException- an IO exception.
-
exists
Description copied from interface:SessionCheck if the remote file or directory exists.- Specified by:
existsin interfaceSession<org.apache.commons.net.ftp.FTPFile>- Parameters:
path- the remote path.- Returns:
trueorfalseif remote path exists or not.- Throws:
IOException- an IO exception during remote interaction.
-
getClientInstance
public org.apache.commons.net.ftp.FTPClient getClientInstance()Description copied from interface:SessionGet the underlying client library's client instance for this session. Returns anObjectto avoid significant changes to -file, -ftp, -sftp modules, which would be required if we added another generic parameter. Implementations should narrow the return type.- Specified by:
getClientInstancein interfaceSession<org.apache.commons.net.ftp.FTPFile>- Returns:
- The client instance.
-
getHostPort
Description copied from interface:SessionReturn the host:port pair this session is connected to.- Specified by:
getHostPortin interfaceSession<org.apache.commons.net.ftp.FTPFile>- Returns:
- the host:port pair this session is connected to.
-
test
public boolean test()Description copied from interface:SessionTest the session is still alive, e.g. when checking out from a pool. The default implementation simply delegates toSession.isOpen().
-