Package org.apache.commons.net.tftp
Class TFTPPacket
java.lang.Object
org.apache.commons.net.tftp.TFTPPacket
- Direct Known Subclasses:
- TFTPAckPacket,- TFTPDataPacket,- TFTPErrorPacket,- TFTPRequestPacket
TFTPPacket is an abstract class encapsulating the functionality common to the 5 types of TFTP packets. It also provides a static factory method that will
 create the correct TFTP packet instance from a datagram. This relieves the programmer from having to figure out what kind of TFTP packet is contained in a
 datagram and create it himself.
 
 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.
- See Also:
- 
Field SummaryFieldsModifier and TypeFieldDescriptionstatic final intThis is the actual TFTP spec identifier and is equal to 4.static final intThis is the actual TFTP spec identifier and is equal to 3.static final intThis is the actual TFTP spec identifier and is equal to 5.static final intThis is the actual TFTP spec identifier and is equal to 1.static final intThe TFTP data packet maximum segment size in bytes.static final intThis is the actual TFTP spec identifier and is equal to 2.
- 
Method SummaryModifier and TypeMethodDescriptionfinal InetAddressReturns the address of the host where the packet is going to be sent or where it came from.final intgetPort()Returns the port where the packet is going to be sent or where it came from.final intgetType()Returns the type of the packet.abstract DatagramPacketCreates a UDP datagram containing all the TFTP packet data in the proper format.static final TFTPPacketnewTFTPPacket(DatagramPacket datagram) When you receive a datagram that you expect to be a TFTP packet, you use this factory method to create the proper TFTPPacket object encapsulating the data contained in that datagram.final voidsetAddress(InetAddress address) Sets the host address where the packet is going to be sent.final voidsetPort(int port) Sets the port where the packet is going to be sent.toString()For debugging
- 
Field Details- 
READ_REQUESTThis is the actual TFTP spec identifier and is equal to 1. Identifier returned bygetType()indicating a read request packet.- See Also:
 
- 
WRITE_REQUESTThis is the actual TFTP spec identifier and is equal to 2. Identifier returned bygetType()indicating a write request packet.- See Also:
 
- 
DATAThis is the actual TFTP spec identifier and is equal to 3. Identifier returned bygetType()indicating a data packet.- See Also:
 
- 
ACKNOWLEDGEMENTThis is the actual TFTP spec identifier and is equal to 4. Identifier returned bygetType()indicating an acknowledgement packet.- See Also:
 
- 
ERRORThis is the actual TFTP spec identifier and is equal to 5. Identifier returned bygetType()indicating an error packet.- See Also:
 
- 
SEGMENT_SIZEThe TFTP data packet maximum segment size in bytes. This is 512 and is useful for those familiar with the TFTP protocol who want to use theTFTPclass methods to implement their own TFTP servers or clients.- See Also:
 
 
- 
- 
Method Details- 
newTFTPPacketWhen you receive a datagram that you expect to be a TFTP packet, you use this factory method to create the proper TFTPPacket object encapsulating the data contained in that datagram. This method is the only way you can instantiate a TFTPPacket derived class from a datagram.- Parameters:
- datagram- The datagram containing a TFTP packet.
- Returns:
- The TFTPPacket object corresponding to the datagram.
- Throws:
- TFTPPacketException- If the datagram does not contain a valid TFTP packet.
 
- 
getAddressReturns the address of the host where the packet is going to be sent or where it came from.- Returns:
- The type of the packet.
 
- 
getPortReturns the port where the packet is going to be sent or where it came from.- Returns:
- The port where the packet came from or where it is going.
 
- 
getTypeReturns the type of the packet.- Returns:
- The type of the packet.
 
- 
newDatagramCreates a UDP datagram containing all the TFTP packet data in the proper format. This is an abstract method, exposed to the programmer in case he wants to implement his own TFTP client instead of using theTFTPClientclass. Under normal circumstances, you should not have a need to call this method.- Returns:
- A UDP datagram containing the TFTP packet.
 
- 
setAddressSets the host address where the packet is going to be sent.- Parameters:
- address- the address to set
 
- 
setPortSets the port where the packet is going to be sent.- Parameters:
- port- the port to set
 
- 
toStringFor debugging
 
-