public final class

DatagramPacket

extends Object
java.lang.Object
   ↳ java.net.DatagramPacket

Class Overview

This class represents a datagram packet which contains data either to be sent or received through a DatagramSocket. It holds additional information such as its source or destination host.

See Also

Summary

Public Constructors
DatagramPacket(byte[] data, int length)
Constructs a new DatagramPacket object to receive data up to length bytes.
DatagramPacket(byte[] data, int offset, int length)
Constructs a new DatagramPacket object to receive data up to length bytes with a specified buffer offset.
DatagramPacket(byte[] data, int offset, int length, InetAddress host, int aPort)
Constructs a new DatagramPacket object to send data to the port aPort of the address host.
DatagramPacket(byte[] data, int length, InetAddress host, int port)
Constructs a new DatagramPacket object to send data to the port aPort of the address host.
DatagramPacket(byte[] data, int length, SocketAddress sockAddr)
Constructs a new DatagramPacket object to send data to the address sockAddr.
DatagramPacket(byte[] data, int offset, int length, SocketAddress sockAddr)
Constructs a new DatagramPacket object to send data to the address sockAddr.
Public Methods
synchronized InetAddress getAddress()
Gets the sender or destination IP address of this datagram packet.
synchronized byte[] getData()
Gets the data of this datagram packet.
synchronized int getLength()
Gets the length of the data stored in this datagram packet.
synchronized int getOffset()
Gets the offset of the data stored in this datagram packet.
synchronized int getPort()
Gets the port number of the target or sender host of this datagram packet.
synchronized SocketAddress getSocketAddress()
Gets the host address and the port to which this datagram packet is sent as a SocketAddress object.
synchronized void setAddress(InetAddress addr)
Sets the IP address of the target host.
synchronized void setData(byte[] buf, int anOffset, int aLength)
Sets the data buffer for this datagram packet.
synchronized void setData(byte[] buf)
Sets the data buffer for this datagram packet.
synchronized void setLength(int len)
Sets the length of the datagram packet.
synchronized void setPort(int aPort)
Sets the port number of the target host of this datagram packet.
synchronized void setSocketAddress(SocketAddress sockAddr)
Sets the SocketAddress for this datagram packet.
[Expand]
Inherited Methods
From class java.lang.Object

Public Constructors

public DatagramPacket (byte[] data, int length)

Since: API Level 1

Constructs a new DatagramPacket object to receive data up to length bytes.

Parameters
data a byte array to store the read characters.
length the length of the data buffer.

public DatagramPacket (byte[] data, int offset, int length)

Since: API Level 1

Constructs a new DatagramPacket object to receive data up to length bytes with a specified buffer offset.

Parameters
data a byte array to store the read characters.
offset the offset of the byte array where the bytes is written.
length the length of the data.

public DatagramPacket (byte[] data, int offset, int length, InetAddress host, int aPort)

Since: API Level 1

Constructs a new DatagramPacket object to send data to the port aPort of the address host. The length must be lesser than or equal to the size of data. The first length bytes from the byte array position offset are sent.

Parameters
data a byte array which stores the characters to be sent.
offset the offset of data where to read from.
length the length of data.
host the address of the target host.
aPort the port of the target host.

public DatagramPacket (byte[] data, int length, InetAddress host, int port)

Since: API Level 1

Constructs a new DatagramPacket object to send data to the port aPort of the address host. The length must be lesser than or equal to the size of data. The first length bytes are sent.

Parameters
data a byte array which stores the characters to be sent.
length the length of data.
host the address of the target host.
port the port of the target host.

public DatagramPacket (byte[] data, int length, SocketAddress sockAddr)

Since: API Level 1

Constructs a new DatagramPacket object to send data to the address sockAddr. The length must be lesser than or equal to the size of data. The first length bytes of the data are sent.

Parameters
data the byte array to store the data.
length the length of the data.
sockAddr the target host address and port.
Throws
SocketException if an error in the underlying protocol occurs.

public DatagramPacket (byte[] data, int offset, int length, SocketAddress sockAddr)

Since: API Level 1

Constructs a new DatagramPacket object to send data to the address sockAddr. The length must be lesser than or equal to the size of data. The first length bytes of the data are sent.

Parameters
data the byte array to store the data.
offset the offset of the data.
length the length of the data.
sockAddr the target host address and port.
Throws
SocketException if an error in the underlying protocol occurs.

Public Methods

public synchronized InetAddress getAddress ()

Since: API Level 1

Gets the sender or destination IP address of this datagram packet.

Returns
  • the address from where the datagram was received or to which it is sent.

public synchronized byte[] getData ()

Since: API Level 1

Gets the data of this datagram packet.

Returns
  • the received data or the data to be sent.

public synchronized int getLength ()

Since: API Level 1

Gets the length of the data stored in this datagram packet.

Returns
  • the length of the received data or the data to be sent.

public synchronized int getOffset ()

Since: API Level 1

Gets the offset of the data stored in this datagram packet.

Returns
  • the position of the received data or the data to be sent.

public synchronized int getPort ()

Since: API Level 1

Gets the port number of the target or sender host of this datagram packet.

Returns
  • the port number of the origin or target host.

public synchronized SocketAddress getSocketAddress ()

Since: API Level 1

Gets the host address and the port to which this datagram packet is sent as a SocketAddress object.

Returns
  • the SocketAddress of the target host.

public synchronized void setAddress (InetAddress addr)

Since: API Level 1

Sets the IP address of the target host.

Parameters
addr the target host address.

public synchronized void setData (byte[] buf, int anOffset, int aLength)

Since: API Level 1

Sets the data buffer for this datagram packet.

Parameters
buf the buffer to store the data.
anOffset the buffer offset where the data is stored.
aLength the length of the data to be sent or the length of buffer to store the received data.

public synchronized void setData (byte[] buf)

Since: API Level 1

Sets the data buffer for this datagram packet. The length of the datagram packet is set to the buffer length.

Parameters
buf the buffer to store the data.

public synchronized void setLength (int len)

Since: API Level 1

Sets the length of the datagram packet. This length plus the offset must be lesser than or equal to the buffer size.

Parameters
len the length of this datagram packet.

public synchronized void setPort (int aPort)

Since: API Level 1

Sets the port number of the target host of this datagram packet.

Parameters
aPort the target host port number.

public synchronized void setSocketAddress (SocketAddress sockAddr)

Since: API Level 1

Sets the SocketAddress for this datagram packet.

Parameters
sockAddr the SocketAddress of the target host.