public
abstract
class
DatagramSocketImpl
extends Object
implements
SocketOptions
java.lang.Object | |
↳ | java.net.DatagramSocketImpl |
Abstract datagram and multicast socket implementation base class.
Inherited constants |
---|
From
interface
java.net.SocketOptions
|
Fields | |
---|---|
protected
FileDescriptor |
fd
The file descriptor object. |
protected
int |
localPort
The local port number. |
Public constructors | |
---|---|
DatagramSocketImpl()
|
Protected methods | |
---|---|
abstract
void
|
bind(int lport, InetAddress laddr)
Binds a datagram socket to a local port and address. |
abstract
void
|
close()
Close the socket. |
void
|
connect(InetAddress address, int port)
Connects a datagram socket to a remote destination. |
abstract
void
|
create()
Creates a datagram socket. |
void
|
disconnect()
Disconnects a datagram socket from its remote destination. |
FileDescriptor
|
getFileDescriptor()
Gets the datagram socket file descriptor. |
int
|
getLocalPort()
Gets the local port. |
abstract
byte
|
getTTL()
This method was deprecated in API level 1. use getTimeToLive instead. |
abstract
int
|
getTimeToLive()
Retrieve the TTL (time-to-live) option. |
abstract
void
|
join(InetAddress inetaddr)
Join the multicast group. |
abstract
void
|
joinGroup(SocketAddress mcastaddr, NetworkInterface netIf)
Join the multicast group. |
abstract
void
|
leave(InetAddress inetaddr)
Leave the multicast group. |
abstract
void
|
leaveGroup(SocketAddress mcastaddr, NetworkInterface netIf)
Leave the multicast group. |
abstract
int
|
peek(InetAddress i)
Peek at the packet to see who it is from. |
abstract
int
|
peekData(DatagramPacket p)
Peek at the packet to see who it is from. |
abstract
void
|
receive(DatagramPacket p)
Receive the datagram packet. |
abstract
void
|
send(DatagramPacket p)
Sends a datagram packet. |
abstract
void
|
setTTL(byte ttl)
This method was deprecated in API level 1. use setTimeToLive instead. |
abstract
void
|
setTimeToLive(int ttl)
Set the TTL (time-to-live) option. |
Inherited methods | |
---|---|
From
class
java.lang.Object
| |
From
interface
java.net.SocketOptions
|
void bind (int lport, InetAddress laddr)
Binds a datagram socket to a local port and address.
Parameters | |
---|---|
lport |
int :
the local port |
laddr |
InetAddress :
the local address |
Throws | |
---|---|
SocketException |
if there is an error in the underlying protocol, such as a TCP error. |
void connect (InetAddress address, int port)
Connects a datagram socket to a remote destination. This associates the remote address with the local socket so that datagrams may only be sent to this destination and received from this destination. This may be overridden to call a native system connect.
If the remote destination to which the socket is connected does not exist, or is otherwise unreachable, and if an ICMP destination unreachable packet has been received for that address, then a subsequent call to send or receive may throw a PortUnreachableException. Note, there is no guarantee that the exception will be thrown.
Parameters | |
---|---|
address |
InetAddress :
the remote InetAddress to connect to |
port |
int :
the remote port number |
Throws | |
---|---|
SocketException |
may be thrown if the socket cannot be connected to the remote destination |
void create ()
Creates a datagram socket.
Throws | |
---|---|
SocketException |
if there is an error in the underlying protocol, such as a TCP error. |
void disconnect ()
Disconnects a datagram socket from its remote destination.
FileDescriptor getFileDescriptor ()
Gets the datagram socket file descriptor.
Returns | |
---|---|
FileDescriptor |
a FileDescriptor object representing the datagram socket file descriptor |
int getLocalPort ()
Gets the local port.
Returns | |
---|---|
int |
an int representing the local port value |
byte getTTL ()
This method was deprecated
in API level 1.
use getTimeToLive instead.
Retrieve the TTL (time-to-live) option.
Returns | |
---|---|
byte |
a byte representing the TTL value |
Throws | |
---|---|
IOException |
if an I/O exception occurs while retrieving the time-to-live option |
See also:
int getTimeToLive ()
Retrieve the TTL (time-to-live) option.
Returns | |
---|---|
int |
an int representing the time-to-live value |
Throws | |
---|---|
IOException |
if an I/O exception occurs while retrieving the time-to-live option |
See also:
void join (InetAddress inetaddr)
Join the multicast group.
Parameters | |
---|---|
inetaddr |
InetAddress :
multicast address to join. |
Throws | |
---|---|
IOException |
if an I/O exception occurs while joining the multicast group. |
void joinGroup (SocketAddress mcastaddr, NetworkInterface netIf)
Join the multicast group.
Parameters | |
---|---|
mcastaddr |
SocketAddress :
address to join. |
netIf |
NetworkInterface :
specifies the local interface to receive multicast
datagram packets |
Throws | |
---|---|
IOException |
if an I/O exception occurs while joining the multicast group |
void leave (InetAddress inetaddr)
Leave the multicast group.
Parameters | |
---|---|
inetaddr |
InetAddress :
multicast address to leave. |
Throws | |
---|---|
IOException |
if an I/O exception occurs while leaving the multicast group. |
void leaveGroup (SocketAddress mcastaddr, NetworkInterface netIf)
Leave the multicast group.
Parameters | |
---|---|
mcastaddr |
SocketAddress :
address to leave. |
netIf |
NetworkInterface :
specified the local interface to leave the group at |
Throws | |
---|---|
IOException |
if an I/O exception occurs while leaving the multicast group |
int peek (InetAddress i)
Peek at the packet to see who it is from. Updates the specified InetAddress
to the address which the packet came from.
Parameters | |
---|---|
i |
InetAddress :
an InetAddress object |
Returns | |
---|---|
int |
the port number which the packet came from. |
Throws | |
---|---|
IOException |
if an I/O exception occurs |
PortUnreachableException |
may be thrown if the socket is connected to a currently unreachable destination. Note, there is no guarantee that the exception will be thrown. |
int peekData (DatagramPacket p)
Peek at the packet to see who it is from. The data is copied into the specified
DatagramPacket
. The data is returned,
but not consumed, so that a subsequent peekData/receive operation
will see the same data.
Parameters | |
---|---|
p |
DatagramPacket :
the Packet Received. |
Returns | |
---|---|
int |
the port number which the packet came from. |
Throws | |
---|---|
IOException |
if an I/O exception occurs |
PortUnreachableException |
may be thrown if the socket is connected to a currently unreachable destination. Note, there is no guarantee that the exception will be thrown. |
void receive (DatagramPacket p)
Receive the datagram packet.
Parameters | |
---|---|
p |
DatagramPacket :
the Packet Received. |
Throws | |
---|---|
IOException |
if an I/O exception occurs while receiving the datagram packet. |
PortUnreachableException |
may be thrown if the socket is connected to a currently unreachable destination. Note, there is no guarantee that the exception will be thrown. |
void send (DatagramPacket p)
Sends a datagram packet. The packet contains the data and the destination address to send the packet to.
Parameters | |
---|---|
p |
DatagramPacket :
the packet to be sent. |
Throws | |
---|---|
IOException |
if an I/O exception occurs while sending the datagram packet. |
PortUnreachableException |
may be thrown if the socket is connected to a currently unreachable destination. Note, there is no guarantee that the exception will be thrown. |
void setTTL (byte ttl)
This method was deprecated
in API level 1.
use setTimeToLive instead.
Set the TTL (time-to-live) option.
Parameters | |
---|---|
ttl |
byte :
a byte specifying the TTL value |
Throws | |
---|---|
IOException |
if an I/O exception occurs while setting the time-to-live option. |
See also:
void setTimeToLive (int ttl)
Set the TTL (time-to-live) option.
Parameters | |
---|---|
ttl |
int :
an int specifying the time-to-live value |
Throws | |
---|---|
IOException |
if an I/O exception occurs while setting the time-to-live option. |
See also: