|
|||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object org.apache.commons.net.DatagramSocketClient
The DatagramSocketClient provides the basic operations that are required of client objects accessing datagram sockets. It is meant to be subclassed to avoid having to rewrite the same code over and over again to open a socket, close a socket, set timeouts, etc. Of special note is the setDatagramSocketFactory method, which allows you to control the type of DatagramSocket the DatagramSocketClient creates for network communications. This is especially useful for adding things like proxy support as well as better support for applets. For example, you could create a DatagramSocketFactory that requests browser security capabilities before creating a socket. All classes derived from DatagramSocketClient should use the _socketFactory_ member variable to create DatagramSocket instances rather than instantiating them by directly invoking a constructor. By honoring this contract you guarantee that a user will always be able to provide his own Socket implementations by substituting his own SocketFactory.
DatagramSocketFactory
Field Summary | |
protected boolean |
_isOpen_
A status variable indicating if the client's socket is currently open. |
protected DatagramSocket |
_socket_
The datagram socket used for the connection. |
protected DatagramSocketFactory |
_socketFactory_
The datagram socket's DatagramSocketFactory. |
protected int |
_timeout_
The timeout to use after opening a socket. |
Constructor Summary | |
DatagramSocketClient()
Default constructor for DatagramSocketClient. |
Method Summary | |
void |
close()
Closes the DatagramSocket used for the connection. |
int |
getDefaultTimeout()
Returns the default timeout in milliseconds that is used when opening a socket. |
InetAddress |
getLocalAddress()
Returns the local address to which the client's socket is bound. |
int |
getLocalPort()
Returns the port number of the open socket on the local host used for the connection. |
int |
getSoTimeout()
Returns the timeout in milliseconds of the currently opened socket. |
boolean |
isOpen()
Returns true if the client has a currently open socket. |
void |
open()
Opens a DatagramSocket on the local host at the first available port. |
void |
open(int port)
Opens a DatagramSocket on the local host at a specified port. |
void |
open(int port,
InetAddress laddr)
Opens a DatagramSocket at the specified address on the local host at a specified port. |
void |
setDatagramSocketFactory(DatagramSocketFactory factory)
Sets the DatagramSocketFactory used by the DatagramSocketClient to open DatagramSockets. |
void |
setDefaultTimeout(int timeout)
Set the default timeout in milliseconds to use when opening a socket. |
void |
setSoTimeout(int timeout)
Set the timeout in milliseconds of a currently open connection. |
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Field Detail |
protected int _timeout_
protected DatagramSocket _socket_
protected boolean _isOpen_
protected DatagramSocketFactory _socketFactory_
Constructor Detail |
public DatagramSocketClient()
Method Detail |
public void open() throws SocketException
_isOpen_ is set to true after calling this method and _socket_ is set to the newly opened socket.
SocketException
- If the socket could not be opened or the
timeout could not be set.public void open(int port) throws SocketException
_isOpen_ is set to true after calling this method and _socket_ is set to the newly opened socket.
port
- The port to use for the socket.
SocketException
- If the socket could not be opened or the
timeout could not be set.public void open(int port, InetAddress laddr) throws SocketException
_isOpen_ is set to true after calling this method and _socket_ is set to the newly opened socket.
port
- The port to use for the socket.laddr
- The local address to use.
SocketException
- If the socket could not be opened or the
timeout could not be set.public void close()
public boolean isOpen()
public void setDefaultTimeout(int timeout)
timeout
- The timeout in milliseconds to use for the datagram socket
connection.public int getDefaultTimeout()
public void setSoTimeout(int timeout) throws SocketException
timeout
- The timeout in milliseconds to use for the currently
open datagram socket connection.
SocketException
public int getSoTimeout() throws SocketException
SocketException
public int getLocalPort()
public InetAddress getLocalAddress()
public void setDatagramSocketFactory(DatagramSocketFactory factory)
factory
- The new DatagramSocketFactory the DatagramSocketClient
should use.
|
|||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |