public class TFTPClient extends TFTP
TFTP
because
it is more convenient than using aggregation, and as a result exposes
the same set of methods to allow you to deal with the TFTP protocol
directly. However, almost every user should only be concerend with the
the open()
,
close()
,
sendFile()
, and
receiveFile()
methods. Additionally, the
setMaxTimeouts()
and
setDefaultTimeout()
methods may be of importance for performance
tuning.
Details regarding the TFTP protocol and the format of TFTP packets can be found in RFC 783. But the point of these classes is to keep you from having to worry about the internals.
TFTP
,
TFTPPacket
,
TFTPPacketException
Modifier and Type | Field and Description |
---|---|
static int |
DEFAULT_MAX_TIMEOUTS
The default number of times a receive attempt is allowed to timeout
before ending attempts to retry the receive and failing.
|
ASCII_MODE, BINARY_MODE, DEFAULT_PORT, DEFAULT_TIMEOUT, IMAGE_MODE, NETASCII_MODE, OCTET_MODE
_isOpen_, _socket_, _socketFactory_, _timeout_
Constructor and Description |
---|
TFTPClient()
Creates a TFTPClient instance with a default timeout of DEFAULT_TIMEOUT,
maximum timeouts value of DEFAULT_MAX_TIMEOUTS, a null socket,
and buffered operations disabled.
|
Modifier and Type | Method and Description |
---|---|
int |
getMaxTimeouts()
Returns the maximum number of times a receive attempt is allowed to
timeout before ending attempts to retry the receive and failing.
|
int |
receiveFile(String filename,
int mode,
OutputStream output,
InetAddress host)
Same as calling receiveFile(filename, mode, output, host, TFTP.DEFAULT_PORT).
|
int |
receiveFile(String filename,
int mode,
OutputStream output,
InetAddress host,
int port)
Requests a named file from a remote host, writes the
file to an OutputStream, closes the connection, and returns the number
of bytes read.
|
int |
receiveFile(String filename,
int mode,
OutputStream output,
String hostname)
Same as calling receiveFile(filename, mode, output, hostname, TFTP.DEFAULT_PORT).
|
int |
receiveFile(String filename,
int mode,
OutputStream output,
String hostname,
int port)
Requests a named file from a remote host, writes the
file to an OutputStream, closes the connection, and returns the number
of bytes read.
|
void |
sendFile(String filename,
int mode,
InputStream input,
InetAddress host)
Same as calling sendFile(filename, mode, input, host, TFTP.DEFAULT_PORT).
|
void |
sendFile(String filename,
int mode,
InputStream input,
InetAddress host,
int port)
Requests to send a file to a remote host, reads the file from an
InputStream, sends the file to the remote host, and closes the
connection.
|
void |
sendFile(String filename,
int mode,
InputStream input,
String hostname)
Same as calling sendFile(filename, mode, input, hostname, TFTP.DEFAULT_PORT).
|
void |
sendFile(String filename,
int mode,
InputStream input,
String hostname,
int port)
Requests to send a file to a remote host, reads the file from an
InputStream, sends the file to the remote host, and closes the
connection.
|
void |
setMaxTimeouts(int numTimeouts)
Sets the maximum number of times a receive attempt is allowed to
timeout during a receiveFile() or sendFile() operation before ending
attempts to retry the receive and failing.
|
beginBufferedOps, bufferedReceive, bufferedSend, discardPackets, endBufferedOps, getModeName, receive, send
close, getCharset, getCharsetName, getDefaultTimeout, getLocalAddress, getLocalPort, getSoTimeout, isOpen, open, open, open, setCharset, setDatagramSocketFactory, setDefaultTimeout, setSoTimeout
public static final int DEFAULT_MAX_TIMEOUTS
public TFTPClient()
public void setMaxTimeouts(int numTimeouts)
numTimeouts
- The maximum number of timeouts to allow. Values
less than 1 should not be used, but if they are, they are
treated as 1.public int getMaxTimeouts()
public int receiveFile(String filename, int mode, OutputStream output, InetAddress host, int port) throws IOException
open()
before
invoking this method. This method will not close the OutputStream
containing the file; you must close it after the method invocation.filename
- The name of the file to receive.mode
- The TFTP mode of the transfer (one of the MODE constants).output
- The OutputStream to which the file should be written.host
- The remote host serving the file.port
- The port number of the remote TFTP server.IOException
- If an I/O error occurs. The nature of the
error will be reported in the message.public int receiveFile(String filename, int mode, OutputStream output, String hostname, int port) throws UnknownHostException, IOException
open()
before
invoking this method. This method will not close the OutputStream
containing the file; you must close it after the method invocation.filename
- The name of the file to receive.mode
- The TFTP mode of the transfer (one of the MODE constants).output
- The OutputStream to which the file should be written.hostname
- The name of the remote host serving the file.port
- The port number of the remote TFTP server.IOException
- If an I/O error occurs. The nature of the
error will be reported in the message.UnknownHostException
- If the hostname cannot be resolved.public int receiveFile(String filename, int mode, OutputStream output, InetAddress host) throws IOException
filename
- The name of the file to receive.mode
- The TFTP mode of the transfer (one of the MODE constants).output
- The OutputStream to which the file should be written.host
- The remote host serving the file.IOException
- If an I/O error occurs. The nature of the
error will be reported in the message.public int receiveFile(String filename, int mode, OutputStream output, String hostname) throws UnknownHostException, IOException
filename
- The name of the file to receive.mode
- The TFTP mode of the transfer (one of the MODE constants).output
- The OutputStream to which the file should be written.hostname
- The name of the remote host serving the file.IOException
- If an I/O error occurs. The nature of the
error will be reported in the message.UnknownHostException
- If the hostname cannot be resolved.public void sendFile(String filename, int mode, InputStream input, InetAddress host, int port) throws IOException
open()
before
invoking this method. This method will not close the InputStream
containing the file; you must close it after the method invocation.filename
- The name the remote server should use when creating
the file on its file system.mode
- The TFTP mode of the transfer (one of the MODE constants).input
- the input stream containing the data to be senthost
- The remote host receiving the file.port
- The port number of the remote TFTP server.IOException
- If an I/O error occurs. The nature of the
error will be reported in the message.public void sendFile(String filename, int mode, InputStream input, String hostname, int port) throws UnknownHostException, IOException
open()
before
invoking this method. This method will not close the InputStream
containing the file; you must close it after the method invocation.filename
- The name the remote server should use when creating
the file on its file system.mode
- The TFTP mode of the transfer (one of the MODE constants).input
- the input stream containing the data to be senthostname
- The name of the remote host receiving the file.port
- The port number of the remote TFTP server.IOException
- If an I/O error occurs. The nature of the
error will be reported in the message.UnknownHostException
- If the hostname cannot be resolved.public void sendFile(String filename, int mode, InputStream input, InetAddress host) throws IOException
filename
- The name the remote server should use when creating
the file on its file system.mode
- The TFTP mode of the transfer (one of the MODE constants).input
- the input stream containing the data to be senthost
- The name of the remote host receiving the file.IOException
- If an I/O error occurs. The nature of the
error will be reported in the message.UnknownHostException
- If the hostname cannot be resolved.public void sendFile(String filename, int mode, InputStream input, String hostname) throws UnknownHostException, IOException
filename
- The name the remote server should use when creating
the file on its file system.mode
- The TFTP mode of the transfer (one of the MODE constants).input
- the input stream containing the data to be senthostname
- The name of the remote host receiving the file.IOException
- If an I/O error occurs. The nature of the
error will be reported in the message.UnknownHostException
- If the hostname cannot be resolved.Copyright © 2001–2016 The Apache Software Foundation. All rights reserved.