public abstract class DatagramSocketImpl extends Object implements SocketOptions
Modifier and Type | Field and Description |
---|---|
protected FileDescriptor |
fd
The file descriptor object.
|
protected int |
localPort
The local port number.
|
IP_MULTICAST_IF, IP_MULTICAST_IF2, IP_MULTICAST_LOOP, IP_TOS, SO_BINDADDR, SO_BROADCAST, SO_KEEPALIVE, SO_LINGER, SO_OOBINLINE, SO_RCVBUF, SO_REUSEADDR, SO_SNDBUF, SO_TIMEOUT, TCP_NODELAY
Constructor and Description |
---|
DatagramSocketImpl() |
Modifier and Type | Method and Description |
---|---|
protected abstract void |
bind(int lport,
InetAddress laddr)
Binds a datagram socket to a local port and address.
|
protected abstract void |
close()
Close the socket.
|
protected void |
connect(InetAddress address,
int port)
Connects a datagram socket to a remote destination.
|
protected abstract void |
create()
Creates a datagram socket.
|
protected void |
disconnect()
Disconnects a datagram socket from its remote destination.
|
protected FileDescriptor |
getFileDescriptor()
Gets the datagram socket file descriptor.
|
protected int |
getLocalPort()
Gets the local port.
|
protected abstract int |
getTimeToLive()
Retrieve the TTL (time-to-live) option.
|
protected abstract byte |
getTTL()
Deprecated.
use getTimeToLive instead.
|
protected abstract void |
join(InetAddress inetaddr)
Join the multicast group.
|
protected abstract void |
joinGroup(SocketAddress mcastaddr,
NetworkInterface netIf)
Join the multicast group.
|
protected abstract void |
leave(InetAddress inetaddr)
Leave the multicast group.
|
protected abstract void |
leaveGroup(SocketAddress mcastaddr,
NetworkInterface netIf)
Leave the multicast group.
|
protected abstract int |
peek(InetAddress i)
Peek at the packet to see who it is from.
|
protected abstract int |
peekData(DatagramPacket p)
Peek at the packet to see who it is from.
|
protected abstract void |
receive(DatagramPacket p)
Receive the datagram packet.
|
protected abstract void |
send(DatagramPacket p)
Sends a datagram packet.
|
protected abstract void |
setTimeToLive(int ttl)
Set the TTL (time-to-live) option.
|
protected abstract void |
setTTL(byte ttl)
Deprecated.
use setTimeToLive instead.
|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
getOption, setOption
protected int localPort
protected FileDescriptor fd
protected abstract void create() throws SocketException
SocketException
- if there is an error in the
underlying protocol, such as a TCP error.protected abstract void bind(int lport, InetAddress laddr) throws SocketException
SocketException
- if there is an error in the
underlying protocol, such as a TCP error.lport
- the local portladdr
- the local addressprotected abstract void send(DatagramPacket p) throws IOException
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.p
- the packet to be sent.protected void connect(InetAddress address, int port) throws SocketException
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.
SocketException
- may be thrown if the socket cannot be
connected to the remote destinationaddress
- the remote InetAddress to connect toport
- the remote port numberprotected void disconnect()
protected abstract int peek(InetAddress i) throws IOException
InetAddress
to the address which the packet came from.IOException
- if an I/O exception occursPortUnreachableException
- may be thrown if the socket is connected
to a currently unreachable destination. Note, there is no guarantee that the
exception will be thrown.i
- an InetAddress objectprotected abstract int peekData(DatagramPacket p) throws IOException
DatagramPacket
. The data is returned,
but not consumed, so that a subsequent peekData/receive operation
will see the same data.IOException
- if an I/O exception occursPortUnreachableException
- may be thrown if the socket is connected
to a currently unreachable destination. Note, there is no guarantee that the
exception will be thrown.p
- the Packet Received.protected abstract void receive(DatagramPacket p) throws IOException
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.p
- the Packet Received.@Deprecated protected abstract void setTTL(byte ttl) throws IOException
IOException
- if an I/O exception occurs while setting
the time-to-live option.ttl
- a byte specifying the TTL valuegetTTL()
@Deprecated protected abstract byte getTTL() throws IOException
IOException
- if an I/O exception occurs
while retrieving the time-to-live optionsetTTL(byte)
protected abstract void setTimeToLive(int ttl) throws IOException
IOException
- if an I/O exception occurs
while setting the time-to-live option.ttl
- an int
specifying the time-to-live valuegetTimeToLive()
protected abstract int getTimeToLive() throws IOException
IOException
- if an I/O exception occurs
while retrieving the time-to-live optionint
representing the time-to-live valuesetTimeToLive(int)
protected abstract void join(InetAddress inetaddr) throws IOException
IOException
- if an I/O exception occurs
while joining the multicast group.inetaddr
- multicast address to join.protected abstract void leave(InetAddress inetaddr) throws IOException
IOException
- if an I/O exception occurs
while leaving the multicast group.inetaddr
- multicast address to leave.protected abstract void joinGroup(SocketAddress mcastaddr, NetworkInterface netIf) throws IOException
IOException
- if an I/O exception occurs while joining
the multicast groupmcastaddr
- address to join.netIf
- specifies the local interface to receive multicast
datagram packetsprotected abstract void leaveGroup(SocketAddress mcastaddr, NetworkInterface netIf) throws IOException
IOException
- if an I/O exception occurs while leaving
the multicast groupmcastaddr
- address to leave.netIf
- specified the local interface to leave the group atprotected abstract void close()
protected int getLocalPort()
int
representing the local port valueprotected FileDescriptor getFileDescriptor()
FileDescriptor
object representing the datagram socket
file descriptoraicas GmbH, Karlsruhe, Germany —www.aicas.com
Copyright © 2001-2022 aicas GmbH. All Rights Reserved.