Package com.peterhi.net7

Source Code of com.peterhi.net7.ServerApp

package com.peterhi.net7;

import java.net.DatagramPacket;
import java.net.SocketAddress;
import java.text.MessageFormat;

import com.peterhi.net.Event;
import com.peterhi.net.Listener;
import com.peterhi.net.Local;


public final class ServerApp {

  public static void main(String[] args) throws Exception {
    final Local local = new Local(22222);
    local.getSocket().setSoTimeout(10);
    local.addListener(new Listener() {
      @Override
      public void received(Event event) {
        SocketAddress address = event.getAddress();
        byte[] data = event.getData(true);
        System.out.println(MessageFormat.format("Received {0} bytes of data from {1}.", data.length, address));
      }     
    });
   
    Runnable worker = new Runnable() {
      @Override
      public void run() {
        try {
          while (local.getSocket().isBound()) {
            DatagramPacket packet = local.receive();
           
            if (packet != null) {
              local.process(packet);
            }
           
            local.dispatch();
          }
        } catch (Exception ex) {
          ex.printStackTrace();
        }
      }
    };
   
    Thread thread = new Thread(worker);
    thread.start();
  }
 
}
TOP

Related Classes of com.peterhi.net7.ServerApp

TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.