Prev Class | Next Class | Frames | No Frames |
Summary: Nested | Field | Method | Constr | Detail: Nested | Field | Method | Constr |
java.lang.Object
java.net.DatagramSocketImpl
gnu.java.net.PlainDatagramSocketImpl
public final class PlainDatagramSocketImpl
extends DatagramSocketImpl
Field Summary |
Fields inherited from class java.net.DatagramSocketImpl | |
fd , localPort |
Fields inherited from interface java.net.SocketOptions | |
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 Summary | |
|
Method Summary | |
protected void |
|
protected void |
|
protected void |
|
protected void |
|
protected void |
|
protected void |
|
int | |
Object |
|
protected byte |
|
protected int |
|
protected void |
|
protected void |
|
protected void |
|
protected void |
|
protected int |
|
protected int |
|
protected void |
|
protected void |
|
void | |
protected void |
|
protected void |
|
Methods inherited from class java.net.DatagramSocketImpl | |
bind , close , connect , create , disconnect , getFileDescriptor , getLocalPort , getTTL , getTimeToLive , join , joinGroup , leave , leaveGroup , peek , peekData , receive , send , setTTL , setTimeToLive |
Methods inherited from class java.lang.Object | |
clone , equals , extends Object> getClass , finalize , hashCode , notify , notifyAll , toString , wait , wait , wait |
public PlainDatagramSocketImpl() throws IOException
Default do nothing constructor
protected void bind(int port, InetAddress addr) throws SocketException
Binds this socket to a particular port and interface
- Overrides:
- bind in interface DatagramSocketImpl
- Parameters:
port
- The port to bind toaddr
- The address to bind to
- Throws:
SocketException
- If an error occurs
protected void connect(InetAddress addr, int port) throws SocketException
Connects the socket to a host specified by address and port.
- Overrides:
- connect in interface DatagramSocketImpl
- Parameters:
port
- The port number of the host to connect to
- Throws:
SocketException
- If an error occurs
- Since:
- 1.4
protected void create() throws SocketException
Creates a new datagram socket
- Overrides:
- create in interface DatagramSocketImpl
- Throws:
SocketException
- If an error occurs
protected void disconnect()
Disconnects the socket.
- Overrides:
- disconnect in interface DatagramSocketImpl
- Since:
- 1.4
protected void finalize() throws Throwable
Called on an object by the Virtual Machine at most once, at some point after the Object is determined unreachable but before it is destroyed. You would think that this means it eventually is called on every Object, but this is not necessarily the case. If execution terminates abnormally, garbage collection does not always happen. Thus you cannot rely on this method to always work. For finer control over garbage collection, use references from thejava.lang.ref
package.Virtual Machines are free to not call this method if they can determine that it does nothing important; for example, if your class extends Object and overrides finalize to do simply
super.finalize()
.finalize() will be called by a
Thread
that has no locks on any Objects, and may be called concurrently. There are no guarantees on the order in which multiple objects are finalized. This means that finalize() is usually unsuited for performing actions that must be thread-safe, and that your implementation must be use defensive programming if it is to always work.If an Exception is thrown from finalize() during garbage collection, it will be patently ignored and the Object will still be destroyed.
It is allowed, although not typical, for user code to call finalize() directly. User invocation does not affect whether automatic invocation will occur. It is also permitted, although not recommended, for a finalize() method to "revive" an object by making it reachable from normal code again.
Unlike constructors, finalize() does not get called for an object's superclass unless the implementation specifically calls
super.finalize()
.The default implementation does nothing.
- Throws:
Throwable
- permits a subclass to throw anything in an overridden version; but the default throws nothing
- See Also:
System.gc()
,System.runFinalizersOnExit(boolean)
,java.lang.ref
public Object getOption(int option_id) throws SocketException
Retrieves the value of an option on the socket
- Specified by:
- getOption in interface SocketOptions
- Parameters:
option_id
- The identifier of the option to retrieve
- Returns:
- The value of the option
- Throws:
SocketException
- If an error occurs
protected byte getTTL() throws IOException
Deprecated. 1.2
Gets the Time to Live value for the socket
- Overrides:
- getTTL in interface DatagramSocketImpl
- Returns:
- The TTL value
- Throws:
IOException
- If an error occurs
protected int getTimeToLive() throws IOException
Gets the Time to Live value for the socket
- Overrides:
- getTimeToLive in interface DatagramSocketImpl
- Returns:
- The TTL value
- Throws:
IOException
- If an error occurs
protected void join(InetAddress addr) throws IOException
Joins a multicast group
- Overrides:
- join in interface DatagramSocketImpl
- Parameters:
addr
- The group to join
- Throws:
IOException
- If an error occurs
protected void joinGroup(SocketAddress mcastaddr, NetworkInterface netIf) throws IOException
Causes this socket to join the specified multicast group on a specified device
- Overrides:
- joinGroup in interface DatagramSocketImpl
- Parameters:
mcastaddr
- The address to leavenetIf
- The specified network interface to join the group at
- Throws:
IOException
- If an error occurs
- Since:
- 1.4
protected void leave(InetAddress addr) throws IOException
Leaves a multicast group
- Overrides:
- leave in interface DatagramSocketImpl
- Parameters:
addr
- The group to leave
- Throws:
IOException
- If an error occurs
protected void leaveGroup(SocketAddress mcastaddr, NetworkInterface netIf) throws IOException
Leaves a multicast group
- Overrides:
- leaveGroup in interface DatagramSocketImpl
- Parameters:
mcastaddr
- The address to joinnetIf
- The specified network interface to leave the group at
- Throws:
IOException
- If an error occurs
- Since:
- 1.4
protected int peek(InetAddress addr) throws IOException
Takes a peek at the next packet received in order to retrieve the address of the sender
- Overrides:
- peek in interface DatagramSocketImpl
- Parameters:
- Returns:
- The port number of the sender of the packet
- Throws:
IOException
- If an error occurs
protected int peekData(DatagramPacket packet) throws IOException
Takes a peek at the next packet received. This packet is not consumed. With the next peekData/receive operation this packet will be read again.
- Overrides:
- peekData in interface DatagramSocketImpl
- Parameters:
- Returns:
- The port number of the sender of the packet.
- Throws:
IOException
- If an error occurs
- Since:
- 1.4
protected void receive(DatagramPacket packet) throws IOException
Receives a UDP packet from the network
- Overrides:
- receive in interface DatagramSocketImpl
- Parameters:
packet
- The packet to fill in with the data received
- Throws:
IOException
- IOException If an error occurs
protected void send(DatagramPacket packet) throws IOException
Sends a packet of data to a remote host
- Overrides:
- send in interface DatagramSocketImpl
- Parameters:
packet
- The packet to send
- Throws:
IOException
- If an error occurs
public void setOption(int option_id, Object val) throws SocketException
Sets the value of an option on the socket
- Specified by:
- setOption in interface SocketOptions
- Parameters:
option_id
- The identifier of the option to setval
- The value of the option to set
- Throws:
SocketException
- If an error occurs
protected void setTTL(byte ttl) throws IOException
Deprecated. 1.2
Sets the Time to Live value for the socket
- Overrides:
- setTTL in interface DatagramSocketImpl
- Parameters:
ttl
- The new TTL value
- Throws:
IOException
- If an error occurs
protected void setTimeToLive(int ttl) throws IOException
Sets the Time to Live value for the socket
- Overrides:
- setTimeToLive in interface DatagramSocketImpl
- Parameters:
ttl
- The new TTL value
- Throws:
IOException
- If an error occurs