Example usage for org.apache.commons.net.chargen CharGenUDPClient receive

List of usage examples for org.apache.commons.net.chargen CharGenUDPClient receive

Introduction

In this page you can find the example usage for org.apache.commons.net.chargen CharGenUDPClient receive.

Prototype

public byte[] receive() throws IOException 

Source Link

Document

Receive the reply data from the server.

Usage

From source file:examples.chargen.java

public static final void chargenUDP(String host) throws IOException {
    int packets = 50;
    byte[] data;/* w  w  w  .  j a  v  a 2 s  .co  m*/
    InetAddress address;
    CharGenUDPClient client;

    address = InetAddress.getByName(host);
    client = new CharGenUDPClient();

    client.open();
    // If we don't receive a return packet within 5 seconds, assume
    // the packet is lost.
    client.setSoTimeout(5000);

    while (packets-- > 0) {
        client.send(address);

        try {
            data = client.receive();
        }
        // Here we catch both SocketException and InterruptedIOException,
        // because even though the JDK 1.1 docs claim that
        // InterruptedIOException is thrown on a timeout, it seems
        // SocketException is also thrown.
        catch (SocketException e) {
            // We timed out and assume the packet is lost.
            System.err.println("SocketException: Timed out and dropped packet");
            continue;
        } catch (InterruptedIOException e) {
            // We timed out and assume the packet is lost.
            System.err.println("InterruptedIOException: Timed out and dropped packet");
            continue;
        }
        System.out.write(data);
        System.out.flush();
    }

    client.close();
}