public abstract class TFTPRequestPacket extends TFTPPacket
TFTPReadRequestPacket and TFTPWriteRequestPacket classes.
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.
| Modifier and Type | Field and Description |
|---|---|
(package private) static String[] |
modeStrings
An array containing the string names of the transfer modes and indexed by the transfer mode constants.
|
ACKNOWLEDGEMENT, address, DATA, ERROR, MIN_PACKET_SIZE, OACK, port, READ_REQUEST, SEGMENT_SIZE, type, WRITE_REQUEST| Constructor and Description |
|---|
TFTPRequestPacket(InetAddress destination,
int port,
int type,
String fileName,
int mode)
Creates a request packet of a given type to be sent to a host at a given port with a file name and transfer mode request.
|
TFTPRequestPacket(int type,
DatagramPacket datagram)
Creates a request packet of a given type based on a received datagram.
|
| Modifier and Type | Method and Description |
|---|---|
String |
getFilename()
Gets the requested file name.
|
int |
getMode()
Gets the transfer mode of the request.
|
Map<String,String> |
getOptions()
Gets the options extensions of the request as a map.
|
DatagramPacket |
newDatagram()
Creates a UDP datagram containing all the TFTP request packet data in the proper format.
|
(package private) DatagramPacket |
newDatagram(DatagramPacket datagram,
byte[] data)
This is a method only available within the package for implementing efficient datagram transport by elminating buffering.
|
getAddress, getPort, getType, newTFTPPacket, setAddress, setPort, toStringstatic final String[] modeStrings
TFTPRequestPacket(InetAddress destination, int port, int type, String fileName, int mode)
destination - The host to which the packet is going to be sent.port - The port to which the packet is going to be sent.type - The type of the request (either TFTPPacket.READ_REQUEST or TFTPPacket.WRITE_REQUEST).fileName - The requested file name.mode - The requested transfer mode. This should be on of the TFTP class MODE constants (e.g., TFTP.NETASCII_MODE).TFTPRequestPacket(int type,
DatagramPacket datagram)
throws TFTPPacketException
type - The type of the request (either TFTPPacket.READ_REQUEST or TFTPPacket.WRITE_REQUEST).datagram - The datagram containing the received request.TFTPPacketException - If the datagram isn't a valid TFTP request packet of the appropriate type.public final String getFilename()
public final int getMode()
public final Map<String,String> getOptions()
public final DatagramPacket newDatagram()
TFTPClient class. Under normal circumstances, you should not have
a need to call this method.newDatagram in class TFTPPacketfinal DatagramPacket newDatagram(DatagramPacket datagram, byte[] data)
newDatagram in class TFTPPacketdatagram - The datagram to create.data - The buffer to store the packet and to use in the datagram.