|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: INNER | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object | +--com.oroinc.net.DatagramSocketClient | +--com.oroinc.net.CharGenUDPClient
The CharGenUDPClient class is a UDP implementation of a client for the character generator protocol described in RFC 864. It can also be used for Systat (RFC 866), Quote of the Day (RFC 865), and netstat (port 15). All of these protocols involve sending a datagram to the appropriate port, and reading data contained in one or more reply datagrams. The chargen and quote of the day protocols only send one reply datagram containing 512 bytes or less of data. The other protocols may reply with more than one datagram, in which case you must wait for a timeout to determine that all reply datagrams have been sent.
To use the CharGenUDPClient class, just open a local UDP port with open and call send to send the datagram that will initiate the data reply. For chargen or quote of the day, just call receive , and you're done. For netstat and systat, call receive in a while loop, and catch a SocketException and InterruptedIOException to detect a timeout (don't forget to set the timeout duration beforehand). Don't forget to call close() to clean up properly.
CharGenTCPClient
Field Summary | |
static int |
CHARGEN_PORT
The character generator port value of 19 according to RFC 864. |
static int |
DEFAULT_PORT
The default chargen port. |
static int |
NETSTAT_PORT
The netstat port value of 19. |
static int |
QUOTE_OF_DAY_PORT
The quote of the day port value of 17 according to RFC 865. |
static int |
SYSTAT_PORT
The systat port value of 11 according to RFC 866. |
Fields inherited from class com.oroinc.net.DatagramSocketClient |
_isOpen_, _socket_, _socketFactory_, _timeout_ |
Constructor Summary | |
CharGenUDPClient()
The default CharGenUDPClient constructor. |
Method Summary | |
byte[] |
receive()
Receive the reply data from the server. |
void |
send(java.net.InetAddress host)
Same as send(host, CharGenUDPClient.DEFAULT_PORT); |
void |
send(java.net.InetAddress host,
int port)
Sends the data initiation datagram. |
Methods inherited from class com.oroinc.net.DatagramSocketClient |
close, getDefaultTimeout, getLocalAddress, getLocalPort, getSoTimeout, isOpen, open, open, open, setDatagramSocketFactory, setDefaultTimeout, setSoTimeout |
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Field Detail |
public static final int SYSTAT_PORT
public static final int NETSTAT_PORT
public static final int QUOTE_OF_DAY_PORT
public static final int CHARGEN_PORT
public static final int DEFAULT_PORT
Constructor Detail |
public CharGenUDPClient()
Method Detail |
public void send(java.net.InetAddress host, int port) throws java.io.IOException
host
- The address of the server.port
- The port of the service.java.io.IOException
- If an error occurs while sending the datagram.public void send(java.net.InetAddress host) throws java.io.IOException
send(host, CharGenUDPClient.DEFAULT_PORT);
public byte[] receive() throws java.io.IOException
java.io.IOException
- If an error occurs while receiving the datagram.
|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: INNER | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |