org.apache.commons.net.tftp
Class TFTPDataPacket
public final class TFTPDataPacket
A final class derived from TFTPPacket definiing the TFTP Data
packet type.
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. Additionally, only very
few people should have to care about any of the TFTPPacket classes
or derived classes. Almost all users should only be concerned with the
TFTPClient
class
receiveFile()
and
sendFile()
methods.
static int | MAX_DATA_LENGTH - The maximum number of bytes in a TFTP data packet (512) **
|
static int | MIN_DATA_LENGTH - The minimum number of bytes in a TFTP data packet (0) **
|
TFTPDataPacket(InetAddress destination, int port, int blockNumber, byte[] data)
|
TFTPDataPacket(InetAddress destination, int port, int blockNumber, byte[] data, int offset, int length) -
Creates a data packet to be sent to a host at a given port
with a given block number.
|
int | getBlockNumber() -
Returns the block number of the data packet.
|
byte[] | getData() -
Returns the byte array containing the packet data.
|
int | getDataLength() -
Returns the length of the data part of the data packet.
|
int | getDataOffset() -
Returns the offset into the byte array where the packet data actually
starts.
|
DatagramPacket | newDatagram() -
Creates a UDP datagram containing all the TFTP
data packet data in the proper format.
|
void | setBlockNumber(int blockNumber) - Sets the block number of the data packet.
|
void | setData(byte[] data, int offset, int length) -
Sets the data for the data packet.
|
MAX_DATA_LENGTH
public static final int MAX_DATA_LENGTH
The maximum number of bytes in a TFTP data packet (512) **
MIN_DATA_LENGTH
public static final int MIN_DATA_LENGTH
The minimum number of bytes in a TFTP data packet (0) **
TFTPDataPacket
public TFTPDataPacket(InetAddress destination,
int port,
int blockNumber,
byte[] data)
TFTPDataPacket
public TFTPDataPacket(InetAddress destination,
int port,
int blockNumber,
byte[] data,
int offset,
int length)
Creates a data packet to be sent to a host at a given port
with a given block number. The actual data to be sent is passed as
an array, an offset, and a length. The offset is the offset into
the byte array where the data starts. The length is the length of
the data. If the length is greater than MAX_DATA_LENGTH, it is
truncated.
destination
- The host to which the packet is going to be sent.port
- The port to which the packet is going to be sent.blockNumber
- The block number of the data.data
- The byte array containing the data.offset
- The offset into the array where the data starts.length
- The length of the data.
getBlockNumber
public int getBlockNumber()
Returns the block number of the data packet.
- The block number of the data packet.
getData
public byte[] getData()
Returns the byte array containing the packet data.
- The byte array containing the packet data.
getDataLength
public int getDataLength()
Returns the length of the data part of the data packet.
- The length of the data part of the data packet.
getDataOffset
public int getDataOffset()
Returns the offset into the byte array where the packet data actually
starts.
- The offset into the byte array where the packet data actually
starts.
newDatagram
public DatagramPacket newDatagram()
Creates a UDP datagram containing all the TFTP
data packet data in the proper format.
This is a method exposed to the programmer in case he
wants to implement his own TFTP client instead of using
the
TFTPClient
class.
Under normal circumstances, you should not have a need to call this
method.
- newDatagram in interface TFTPPacket
- A UDP datagram containing the TFTP data packet.
setBlockNumber
public void setBlockNumber(int blockNumber)
Sets the block number of the data packet. **
setData
public void setData(byte[] data,
int offset,
int length)
Sets the data for the data packet.
data
- The byte array containing the data.offset
- The offset into the array where the data starts.length
- The length of the data.