edtFTPj/Free - Open-source FTP library for Java | Download


com.enterprisedt.net.ftp
Interface FileTransferClientInterface

All Known Implementing Classes:
FileTransferClient

public interface FileTransferClientInterface

Easy to use FTP client interface

Version:
$Revision: 1.6 $
Author:
Bruce Blackshaw

Method Summary
 void cancelAllTransfers()
          Cancel current transfer if underway
 void changeDirectory(java.lang.String directoryName)
          Change directory on the FTP server.
 void changeToParentDirectory()
          Change to parent directory on the FTP server.
 void connect()
          Make a connection to the FTP server.
 void createDirectory(java.lang.String directoryName)
          Create directory on the FTP server.
 void deleteDirectory(java.lang.String directoryName)
          Delete directory on the FTP server.
 void deleteFile(java.lang.String remoteFileName)
          Deletes a remote file.
 FTPFile[] directoryList()
          List the current directory on the FTP server.
 FTPFile[] directoryList(java.lang.String directoryName)
          List a directory on the FTP server.
 void directoryList(java.lang.String directoryName, DirectoryListCallback lister)
          List a directory on the FTP server.
 java.lang.String[] directoryNameList()
          List the names of files and directories in the current directory on the FTP server.
 java.lang.String[] directoryNameList(java.lang.String directoryName, boolean isLongListing)
          List the names of files and directories of a directory on the FTP server.
 void disconnect()
          Disconnect from the FTP server.
 void disconnect(boolean immediate)
          Disconnect from the FTP server.
 byte[] downloadByteArray(java.lang.String remoteFileName)
          Download a file from the FTP server into a byte array.
 void downloadFile(java.lang.String localFileName, java.lang.String remoteFileName)
          Download a file from the FTP server .
 void downloadFile(java.lang.String localFileName, java.lang.String remoteFileName, WriteMode writeMode)
          Download a file from the FTP server .
 FileTransferInputStream downloadStream(java.lang.String remoteFileName)
          Download a file from the FTP server as a stream.
 java.lang.String executeCommand(java.lang.String command)
          Request that the remote server execute the literal command supplied.
 boolean exists(java.lang.String remoteFileName)
          Determine if a remote file exists.
 AdvancedFTPSettings getAdvancedFTPSettings()
          Get the advanced FTP configuration parameters object
 AdvancedGeneralSettings getAdvancedSettings()
          Get the advanced general configuration parameters object
 FTPTransferType getContentType()
          Get the current content type for all connections.
 java.util.Date getModifiedTime(java.lang.String remoteFileName)
          Get the modified-time of a remote file.
 int getNetworkBufferSize()
          Get the size of the network buffers (SO_SNDBUF and SO_RCVBUF).
 java.lang.String getPassword()
          Get the current user password.
 java.lang.String getRemoteDirectory()
          Get the current remote directory.
 java.lang.String getRemoteHost()
          Returns the IP address or name of the remote host.
 int getRemotePort()
          Returns the port being connected to on the remote server.
 long getSize(java.lang.String remoteFileName)
          Get the size of a remote file.
 FileStatistics getStatistics()
          Get statistics on file transfers and deletions.
 java.lang.String getSystemType()
          Get a string that represents the remote system that the client is logged into.
 int getTimeout()
          Returns the timeout for socket connections.
 java.lang.String getUserName()
          Get the current user name.
 boolean isConnected()
          Is this client currently connected to the server?
 boolean isDetectContentType()
          Get the detect content type flag
 void rename(java.lang.String renameFromName, java.lang.String renameToName)
          Rename a remote file or directory.
 void setContentType(FTPTransferType type)
          Set the transfer type for all connections, either ASCII or binary.
 void setDetectContentType(boolean detectContentType)
          Set auto detect of filetypes on or off.
 void setEventListener(EventListener listener)
          Set the event listener for transfer event notification
 void setModifiedTime(java.lang.String remoteFileName, java.util.Date modifiedTime)
          Set the modified-time of a remote file.
 void setNetworkBufferSize(int networkBufferSize)
          Set the size of the network buffers (SO_SNDBUF and SO_RCVBUF).
 void setPassword(java.lang.String password)
          Set the password of the user to log in with.
 void setRemoteHost(java.lang.String remoteHost)
          Set the IP address or name of the remote host This may only be done if the client is not already connected to the server.
 void setRemotePort(int remotePort)
          Set the port to connect to on the remote server.
 void setTimeout(int timeout)
          Set the timeout for socket connections.
 void setUserName(java.lang.String userName)
          Set the name of the user to log in with.
 java.lang.String uploadFile(java.lang.String localFileName, java.lang.String remoteFileName)
          Upload a file to the FTP server.
 java.lang.String uploadFile(java.lang.String localFileName, java.lang.String remoteFileName, WriteMode writeMode)
          Upload a file to the FTP server.
 FileTransferOutputStream uploadStream(java.lang.String remoteFileName)
          Upload a file to the FTP server by writing to a stream.
 FileTransferOutputStream uploadStream(java.lang.String remoteFileName, WriteMode writeMode)
          Upload a file to the FTP server by writing to a stream.
 

Method Detail

isConnected

boolean isConnected()
Is this client currently connected to the server?

Returns:
true if connected, false otherwise

getRemoteHost

java.lang.String getRemoteHost()
Returns the IP address or name of the remote host.

Returns:
Returns the remote host.

setRemoteHost

void setRemoteHost(java.lang.String remoteHost)
                   throws FTPException
Set the IP address or name of the remote host This may only be done if the client is not already connected to the server.

Parameters:
remoteHost - The IP address or name of the remote host
Throws:
FTPException - Thrown if the client is already connected to the server.

getTimeout

int getTimeout()
Returns the timeout for socket connections.

Returns:
Returns the connection timeout in milliseconds

setTimeout

void setTimeout(int timeout)
                throws FTPException
Set the timeout for socket connections. Can only do this if not already connected.

Parameters:
timeout - the timeout to use in milliseconds
Throws:
FTPException - Thrown if the client is already connected to the server.

getNetworkBufferSize

int getNetworkBufferSize()
Get the size of the network buffers (SO_SNDBUF and SO_RCVBUF).

Returns:
network buffer size

setNetworkBufferSize

void setNetworkBufferSize(int networkBufferSize)
                          throws FTPException
Set the size of the network buffers (SO_SNDBUF and SO_RCVBUF).

Parameters:
networkBufferSize - new buffer size to set
Throws:
FTPException

getRemotePort

int getRemotePort()
Returns the port being connected to on the remote server.

Returns:
Returns the port being connected to on the remote server.

setRemotePort

void setRemotePort(int remotePort)
                   throws FTPException
Set the port to connect to on the remote server. Can only do this if not already connected.

Parameters:
remotePort - The port to use.
Throws:
FTPException - Thrown if the client is already connected to the server.

setContentType

void setContentType(FTPTransferType type)
                    throws java.io.IOException,
                           FTPException
Set the transfer type for all connections, either ASCII or binary. Setting applies to all subsequent transfers that are initiated.

Parameters:
type - transfer type
Throws:
FTPException
java.io.IOException
FTPException

getContentType

FTPTransferType getContentType()
Get the current content type for all connections.

Returns:
transfer type

setDetectContentType

void setDetectContentType(boolean detectContentType)
Set auto detect of filetypes on or off. If on, the transfer mode is switched from ASCII to binary and vice versa depending on the extension of the file. After the transfer, the mode is always returned to what it was before the transfer was performed. The default is off. If the filetype is unknown, the transfer mode is unchanged

Parameters:
detectContentType - true if detecting content type, false if not

isDetectContentType

boolean isDetectContentType()
Get the detect content type flag

Returns:
true if we are detecting binary and ASCII transfers from the file type

setUserName

void setUserName(java.lang.String userName)
                 throws FTPException
Set the name of the user to log in with. Can only do this if not already connected.

Parameters:
userName - user-name to log in with.
Throws:
FTPException

getPassword

java.lang.String getPassword()
Get the current user password.

Returns:
current user password

setPassword

void setPassword(java.lang.String password)
                 throws FTPException
Set the password of the user to log in with. Can only do this if not already connected.

Parameters:
password - password to log in with.
Throws:
FTPException

getUserName

java.lang.String getUserName()
Get the current user name.

Returns:
current user name

getAdvancedFTPSettings

AdvancedFTPSettings getAdvancedFTPSettings()
Get the advanced FTP configuration parameters object

Returns:
advanced parameters

getAdvancedSettings

AdvancedGeneralSettings getAdvancedSettings()
Get the advanced general configuration parameters object

Returns:
advanced parameters

setEventListener

void setEventListener(EventListener listener)
Set the event listener for transfer event notification

Parameters:
listener - event listener reference

connect

void connect()
             throws FTPException,
                    java.io.IOException
Make a connection to the FTP server.

Throws:
FTPException
java.io.IOException

getStatistics

FileStatistics getStatistics()
Get statistics on file transfers and deletions.

Returns:
FTPStatistics

executeCommand

java.lang.String executeCommand(java.lang.String command)
                                throws FTPException,
                                       java.io.IOException
Request that the remote server execute the literal command supplied. In FTP, this is the equivalent of 'quote'. It could be used to send a SITE command to the server, e.g. "SITE recfm=FB lrecl=180 blksize=5400".

Parameters:
command - command string
Returns:
result string returned by server
Throws:
FTPException
java.io.IOException

cancelAllTransfers

void cancelAllTransfers()
Cancel current transfer if underway


getSystemType

java.lang.String getSystemType()
                               throws FTPException,
                                      java.io.IOException
Get a string that represents the remote system that the client is logged into.

Returns:
system string
Throws:
FTPException
java.io.IOException

directoryNameList

java.lang.String[] directoryNameList()
                                     throws FTPException,
                                            java.io.IOException
List the names of files and directories in the current directory on the FTP server.

Returns:
String[]
Throws:
FTPException, - IOException
FTPException
java.io.IOException

directoryNameList

java.lang.String[] directoryNameList(java.lang.String directoryName,
                                     boolean isLongListing)
                                     throws FTPException,
                                            java.io.IOException
List the names of files and directories of a directory on the FTP server.

Parameters:
directoryName - name of the directory (generally not a path). Some servers will accept a wildcard.
isLongListing - true if the listing is a long format listing
Returns:
String[]
Throws:
FTPException, - IOException
FTPException
java.io.IOException

directoryList

FTPFile[] directoryList()
                        throws FTPException,
                               java.io.IOException,
                               java.text.ParseException
List the current directory on the FTP server.

Throws:
FTPException, - IOException
java.text.ParseException
FTPException
java.io.IOException

directoryList

FTPFile[] directoryList(java.lang.String directoryName)
                        throws FTPException,
                               java.io.IOException,
                               java.text.ParseException
List a directory on the FTP server.

Parameters:
directoryName - name of the directory (generally not a path). Some servers will accept a wildcard.
Throws:
FTPException, - IOException
java.text.ParseException
FTPException
java.io.IOException

directoryList

void directoryList(java.lang.String directoryName,
                   DirectoryListCallback lister)
                   throws FTPException,
                          java.io.IOException,
                          java.text.ParseException
List a directory on the FTP server.

Parameters:
directoryName - name of the directory (generally not a path)
Throws:
FTPException, - IOException
FTPException
java.io.IOException
java.text.ParseException

downloadByteArray

byte[] downloadByteArray(java.lang.String remoteFileName)
                         throws FTPException,
                                java.io.IOException
Download a file from the FTP server into a byte array.

Parameters:
remoteFileName - name of the remote file to be downloaded
Throws:
FTPException
java.io.IOException

downloadFile

void downloadFile(java.lang.String localFileName,
                  java.lang.String remoteFileName)
                  throws FTPException,
                         java.io.IOException
Download a file from the FTP server .

Parameters:
localFileName - name (or full path) of the local file to be downloaded to
remoteFileName - name of the remote file to be downloaded
Throws:
FTPException
java.io.IOException

downloadFile

void downloadFile(java.lang.String localFileName,
                  java.lang.String remoteFileName,
                  WriteMode writeMode)
                  throws FTPException,
                         java.io.IOException
Download a file from the FTP server .

Parameters:
localFileName - name (or full path) of the local file to be downloaded to
remoteFileName - name of the remote file to be downloaded
writeMode - mode in which the file is written to the client machine
Throws:
FTPException
java.io.IOException

downloadStream

FileTransferInputStream downloadStream(java.lang.String remoteFileName)
                                       throws FTPException,
                                              java.io.IOException
Download a file from the FTP server as a stream. The close() method must be called on the stream once the stream has been read.

Parameters:
remoteFileName - name of the remote file to be downloaded
Returns:
InputStream
Throws:
FTPException
java.io.IOException

uploadFile

java.lang.String uploadFile(java.lang.String localFileName,
                            java.lang.String remoteFileName)
                            throws FTPException,
                                   java.io.IOException
Upload a file to the FTP server. If a null is supplied as the remoteFileName, the STOU (store unique) FTP feature will be used (if available) and the FTP server will generate a unique name for the file.

Parameters:
localFileName - name (or full path) of the local file to be downloaded to
remoteFileName - name of the remote file to be downloaded (or null to generate a unique name)
Returns:
name of remote file
Throws:
FTPException
java.io.IOException

uploadFile

java.lang.String uploadFile(java.lang.String localFileName,
                            java.lang.String remoteFileName,
                            WriteMode writeMode)
                            throws FTPException,
                                   java.io.IOException
Upload a file to the FTP server. If a null is supplied as the remoteFileName, the STOU (store unique) FTP feature will be used (if available) and the FTP server will generate a unique name for the file.

Parameters:
localFileName - name (or full path) of the local file to be downloaded to
remoteFileName - name of the remote file to be downloaded (or null to generate a unique name)
writeMode - mode to write to the remote file with
Returns:
name of remote file
Throws:
FTPException
java.io.IOException

uploadStream

FileTransferOutputStream uploadStream(java.lang.String remoteFileName)
                                      throws FTPException,
                                             java.io.IOException
Upload a file to the FTP server by writing to a stream. The close() method must be called on the stream once the stream has been read. If a null is supplied as the remoteFileName, the STOU (store unique) FTP feature will be used (if available) and the FTP server will generate a unique name for the file. This name can be obtained afterwards from FileTransferOutputStream.getRemoteFile()

Parameters:
remoteFileName - name of the remote file to be uploaded
Returns:
FTPOutputStream
Throws:
FTPException
java.io.IOException

uploadStream

FileTransferOutputStream uploadStream(java.lang.String remoteFileName,
                                      WriteMode writeMode)
                                      throws FTPException,
                                             java.io.IOException
Upload a file to the FTP server by writing to a stream. The close() method *must* be called on the stream once the stream has been read. If a null is supplied as the remoteFileName, the STOU (store unique) FTP feature will be used (if available) and the FTP server will generate a unique name for the file. This name can be obtained afterwards from FileTransferOutputStream.getRemoteFile()

Parameters:
remoteFileName - name of the remote file to be uploaded
writeMode - mode for writing to the server (supporting use of append)
Returns:
FTPOutputStream
Throws:
FTPException
java.io.IOException

getSize

long getSize(java.lang.String remoteFileName)
             throws FTPException,
                    java.io.IOException
Get the size of a remote file.

Parameters:
remoteFileName - name of remote file
Returns:
long
Throws:
FTPException
java.io.IOException

getModifiedTime

java.util.Date getModifiedTime(java.lang.String remoteFileName)
                               throws FTPException,
                                      java.io.IOException
Get the modified-time of a remote file. May not be supported by all servers.

Parameters:
remoteFileName - name of remote file
Returns:
Date
Throws:
FTPException
java.io.IOException

setModifiedTime

void setModifiedTime(java.lang.String remoteFileName,
                     java.util.Date modifiedTime)
                     throws FTPException,
                            java.io.IOException
Set the modified-time of a remote file. May not be supported by all servers.

Parameters:
remoteFileName - name of remote file
modifiedTime - new modified time
Throws:
FTPException
java.io.IOException

exists

boolean exists(java.lang.String remoteFileName)
               throws FTPException,
                      java.io.IOException
Determine if a remote file exists.

Parameters:
remoteFileName - name of remote file
Throws:
FTPException
java.io.IOException

deleteFile

void deleteFile(java.lang.String remoteFileName)
                throws FTPException,
                       java.io.IOException
Deletes a remote file.

Parameters:
remoteFileName - name of remote file
Throws:
FTPException
java.io.IOException

rename

void rename(java.lang.String renameFromName,
            java.lang.String renameToName)
            throws FTPException,
                   java.io.IOException
Rename a remote file or directory.

Parameters:
renameFromName - original name
renameToName - new name
Throws:
FTPException, - IOException
FTPException
java.io.IOException

changeDirectory

void changeDirectory(java.lang.String directoryName)
                     throws FTPException,
                            java.io.IOException
Change directory on the FTP server.

Parameters:
directoryName - name the remote directory to change into
Throws:
FTPException, - IOException
FTPException
java.io.IOException

changeToParentDirectory

void changeToParentDirectory()
                             throws FTPException,
                                    java.io.IOException
Change to parent directory on the FTP server.

Throws:
FTPException, - IOException
FTPException
java.io.IOException

getRemoteDirectory

java.lang.String getRemoteDirectory()
                                    throws java.io.IOException,
                                           FTPException
Get the current remote directory.

Returns:
current remote directory
Throws:
FTPException
java.io.IOException

createDirectory

void createDirectory(java.lang.String directoryName)
                     throws FTPException,
                            java.io.IOException
Create directory on the FTP server.

Parameters:
directoryName - name the remote directory to create
Throws:
FTPException, - IOException
FTPException
java.io.IOException

deleteDirectory

void deleteDirectory(java.lang.String directoryName)
                     throws FTPException,
                            java.io.IOException
Delete directory on the FTP server. The directory must be empty. Note that edtFTPj/PRO supports recursive directory deletions.

Parameters:
directoryName - name the remote directory to create
Throws:
FTPException, - IOException
FTPException
java.io.IOException

disconnect

void disconnect()
                throws FTPException,
                       java.io.IOException
Disconnect from the FTP server.

Throws:
FTPException, - IOException
FTPException
java.io.IOException

disconnect

void disconnect(boolean immediate)
                throws FTPException,
                       java.io.IOException
Disconnect from the FTP server.

Throws:
FTPException, - IOException
FTPException
java.io.IOException


Copyright (c) 2001-2007 Enterprise Distributed Technologies Ltd. All Rights Reserved.