public class FTP
extends java.lang.Object
Modifier and Type | Field and Description |
---|---|
java.lang.String |
command
The last command issued.
|
protected java.net.Socket |
controlSocket
Socket for communicating commands with the server.
|
static int |
FILE_GET
Pre-defined state.
|
static int |
FILE_PUT
Pre-defined state.
|
static int |
FTP_PORT
FTP port to use for connection.
|
protected java.lang.String |
m_strDestination |
protected java.lang.String |
m_strSource |
java.io.InputStream |
serverInput
Buffered stream for reading replies from server.
|
java.io.PrintWriter |
serverOutput
Stream for printing to the server.
|
protected java.util.Vector |
serverResponse
Array of strings (usually 1 entry) for the last reply from the server.
|
protected java.lang.String |
strFileNameAndPath
String to hold the file we are up/downloading
|
java.lang.String |
welcomeMsg
Welcome message from the server, if any.
|
Constructor and Description |
---|
FTP(java.lang.String host)
Constructor for an FTP client connected to host host.
|
FTP(java.lang.String host,
int port)
Constructor for an FTP client connected to host host
and port port.
|
Modifier and Type | Method and Description |
---|---|
void |
abort()
Send Abort command.
|
java.io.BufferedWriter |
appendAscii(java.lang.String filename)
APPEND (with create) to a file to the FTP server in Ascii mode.
|
java.io.BufferedOutputStream |
appendBinary(java.lang.String filename)
APPEND (with create) to a file to the FTP server in Binary mode.
|
void |
ascii()
Set transfer type to 'A' (ascii transfer).
|
void |
binary()
Set transfer type to 'I' (binary transfer).
|
void |
cd(java.lang.String remoteDirectory)
CD to a specific directory on a remote FTP server.
|
void |
cdup()
Go up one directory on remote system.
|
void |
closeServer()
Issue the QUIT command to the FTP server and close the connection.
|
void |
cwd(java.lang.String remoteDirectory)
Change working directory to a specific directory on a remote FTP server.
|
void |
delete(java.lang.String aFile)
Delete the specified file from the ftp server file system.
|
java.io.BufferedReader |
dir()
Folder-list files on a remote FTP server.
|
java.io.BufferedReader |
getAscii(java.lang.String filename)
GET a file from the FTP server in Ascii mode.
|
java.io.BufferedInputStream |
getBinary(java.lang.String filename)
GET a file from the FTP server in Binary mode.
|
java.lang.String |
getDestinationFile()
This method reports on the destinationfile currently used in transfer.
|
java.lang.String |
getResponseString()
Returns all server response strings.
|
java.lang.String |
getResponseStringNoReset()
This method allows the caller to read the response strings from
the server, without resetting the internal buffer (and thus not clearing the
messages read by this messages).
|
java.lang.String |
getSourceFile()
This method reports on the sourcefile currently used in transfer.
|
protected int |
issueCommand(java.lang.String cmd)
This method allows the caller to issue a command to the server.
|
protected void |
issueCommandCheck(java.lang.String cmd)
This method will issue the specified command and throw an exception
whenever the reply is not equal to success! It basically converts an
FTP error code into an FtpProtocolException.
|
java.io.BufferedReader |
list()
LIST files on a remote FTP server.
|
void |
login(java.lang.String user)
Login user to a host with username user and no password
such as HP server which uses the form "
|
void |
login(java.lang.String user,
java.lang.String password)
Login user to a host with username user and password
password.
|
java.io.BufferedReader |
ls()
Folder-list files on a remote FTP server.
|
void |
mkdir(java.lang.String aDir)
Create a directory on the remote system
|
java.io.BufferedReader |
nlist()
NLIST files on a remote FTP server
|
protected java.net.Socket |
openDataConnection(java.lang.String cmd)
This method will set up the networking for client-server data transfer and
it will send the specified command to the server.
|
void |
openServer(java.lang.String host)
open a FTP connection to host host.
|
void |
openServer(java.lang.String host,
int port)
Open an FTP connection to host host on port port.
|
java.io.BufferedWriter |
putAscii(java.lang.String filename)
PUT a file on the FTP server in Ascii mode.
|
java.io.BufferedOutputStream |
putBinary(java.lang.String filename)
PUT a file to the FTP server in Binary mode
|
void |
pwd()
Get the name of the present working directory on the ftp server file system.
|
protected int |
readReply()
This method attempts to read a reply from the FTP server.
|
int |
readServerResponse()
This method allows the caller to capture the serverresponse.
|
void |
rename(java.lang.String oldFile,
java.lang.String newFile)
Rename a file on the remote server.
|
void |
rmdir(java.lang.String aDir)
Delete the specified directory from the ftp server file system.
|
void |
sendServer(java.lang.String cmd)
Sends command cmd to the server.
|
boolean |
serverIsOpen()
Return server connection status
|
void |
setDestinationFile(java.lang.String strDestinationFile)
This method allows the specification of the destinationfile.
|
void |
SetFileMode(int nMode)
This method sets the file transfer mode.
|
void |
setFilename(java.lang.String strFile)
This method sets the name of the file to up- or download.
|
void |
setPassive(boolean mode)
Set Passive mode Trasfers.
|
void |
setSourceFile(java.lang.String strSourceFile)
This method allows to set the source for the file that is to be
transferred.
|
void |
site(java.lang.String params)
Site Command
|
void |
syst()
Retrieve the system type from the remote server.
|
public static final int FTP_PORT
public static int FILE_GET
public static int FILE_PUT
public java.lang.String command
public java.lang.String welcomeMsg
protected java.util.Vector serverResponse
protected java.net.Socket controlSocket
public java.io.PrintWriter serverOutput
public java.io.InputStream serverInput
protected java.lang.String strFileNameAndPath
protected java.lang.String m_strSource
protected java.lang.String m_strDestination
public FTP(java.lang.String host) throws java.io.IOException
host
- String with the hostname (or IP) to connect to.java.io.IOException
- whenever a connection could not be made.public FTP(java.lang.String host, int port) throws java.io.IOException
host
- String with the hostname (or IP) to connect to.port
- int with the portnumber for the host FTP server.java.io.IOException
- whenever a connection could not be made.public void setFilename(java.lang.String strFile)
strFile
- String with the filename.public void setSourceFile(java.lang.String strSourceFile)
strSourceFile
- String with the sourec for the file to be
transferred.public void setDestinationFile(java.lang.String strDestinationFile)
strDestinationFile
- String with the destination file.public java.lang.String getSourceFile()
public java.lang.String getDestinationFile()
public boolean serverIsOpen()
public void setPassive(boolean mode)
mode
- boolean to indicate whether passive mode
should be used.public int readServerResponse() throws java.io.IOException
java.io.IOException
public void sendServer(java.lang.String cmd)
cmd
- String with the command to send.public java.lang.String getResponseString()
public java.lang.String getResponseStringNoReset()
public void closeServer() throws java.io.IOException
java.io.IOException
protected int issueCommand(java.lang.String cmd) throws java.io.IOException
cmd
- String with the command to issue.java.io.IOException
- when the connection with the server failed.protected void issueCommandCheck(java.lang.String cmd) throws java.io.IOException
cmd
- String with the command to issue (and verify the response for)java.io.IOException
- when the connection failed OR FtpProtocolException when the
command was not understood by the server.protected int readReply() throws java.io.IOException
java.io.IOException
- whenever the reply could not be read.protected java.net.Socket openDataConnection(java.lang.String cmd) throws java.io.IOException
cmd
- String with the command to issue.java.io.IOException
- whenever communications could not be established.public void openServer(java.lang.String host) throws java.io.IOException, java.net.UnknownHostException
host
- String with the hostname (or IP) to connect to.java.io.IOException
- whenever connection could not be established.java.net.UnknownHostException
- when the hostname cannot be resolved.public void openServer(java.lang.String host, int port) throws java.io.IOException, java.net.UnknownHostException
host
- String with the hostname (or IP) of the FTP server.port
- int with the portnumber the FTP server is listening on.java.io.IOException
- whenever connection could not be established.java.net.UnknownHostException
- when the hostname cannot be resolved.public void login(java.lang.String user, java.lang.String password) throws java.io.IOException
user
- String with the username to use.password
- String with the password to use (passwords are sent in plain text in FTP!)java.io.IOException
public void login(java.lang.String user) throws java.io.IOException
user
- String with the username (and possibly coded information such as password).java.io.IOException
public java.io.BufferedReader getAscii(java.lang.String filename) throws java.io.IOException
filename
- String with the filename to get from the server.java.io.IOException
- whenever the file could not be read.public java.io.BufferedInputStream getBinary(java.lang.String filename) throws java.io.IOException
filename
- String with the filename to get from the server.java.io.IOException
- whenever the file could not be read.public java.io.BufferedWriter putAscii(java.lang.String filename) throws java.io.IOException
filename
- String with the filename to put on the server.java.io.IOException
- whenever the file could not be sent.public java.io.BufferedOutputStream putBinary(java.lang.String filename) throws java.io.IOException
filename
- String with the filename to put on the server.java.io.IOException
- whenever the file could not be sent.public java.io.BufferedWriter appendAscii(java.lang.String filename) throws java.io.IOException
filename
- String with the name of the file to append to.java.io.IOException
- whenever the writer fails.public java.io.BufferedOutputStream appendBinary(java.lang.String filename) throws java.io.IOException
filename
- String with the name of the file to append to.java.io.IOException
- whenever the writer fails.public java.io.BufferedReader nlist() throws java.io.IOException
java.io.IOException
- whenever the listing failed.public java.io.BufferedReader list() throws java.io.IOException
java.io.IOException
- whenever the listing failed.public java.io.BufferedReader ls() throws java.io.IOException
java.io.IOException
- whenever the listing failed.public java.io.BufferedReader dir() throws java.io.IOException
java.io.IOException
- whenever the listing failed.public void cd(java.lang.String remoteDirectory) throws java.io.IOException
remoteDirectory
- String with the directory to CD to.java.io.IOException
- whenever the CD failed.public void cwd(java.lang.String remoteDirectory) throws java.io.IOException
remoteDirectory
- String with the directory to CWD to.java.io.IOException
- whenever the CWD failed.public void rename(java.lang.String oldFile, java.lang.String newFile) throws java.io.IOException
oldFile
- String with the original filename for the file to rename.newFile
- String with the filename to rename the file to.java.io.IOException
- when the renaming failed.public void site(java.lang.String params) throws java.io.IOException
params
- String with the parameters for the SITE command.java.io.IOException
- when the SITE command failed.public void binary() throws java.io.IOException
java.io.IOException
- when the binary mode could not be set up.public void ascii() throws java.io.IOException
java.io.IOException
- when the ASCII mode could not be set up.public void abort() throws java.io.IOException
java.io.IOException
- when the cancellation could not be
executed.public void cdup() throws java.io.IOException
java.io.IOException
- when the CDUP failed.public void mkdir(java.lang.String aDir) throws java.io.IOException
aDir
- String with the name for the directory to be created.java.io.IOException
- when the directory could not be created.public void rmdir(java.lang.String aDir) throws java.io.IOException
aDir
- String with the directory to delete.java.io.IOException
- when the deletion did not succeed.public void delete(java.lang.String aFile) throws java.io.IOException
aFile
- String with the filename for the file to delete.java.io.IOException
- when the deletion did not succeed.public void pwd() throws java.io.IOException
java.io.IOException
- whenever the server did not report on the pwd.public void syst() throws java.io.IOException
java.io.IOException
- whenever the system type could not be determined.public void SetFileMode(int nMode)
nMode
- int with the mode (either FILE_GET for retrieval,
or any other int for sending a file).Copyright © 2013. All Rights Reserved.