From 27cc0e4dcd6281402072f83f1d611a48fa91d782 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Kjetil=20=C3=98rbekk?= Date: Mon, 16 Jan 2012 20:34:44 +0100 Subject: =?UTF-8?q?Add=20ClientApp=20=E2=80=93=20a=20server=20hosting=20a?= =?UTF-8?q?=20ClientService.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- same/src/main/java/com/orbekk/same/ClientApp.java | 49 +++++++++++++++++++++++ 1 file changed, 49 insertions(+) create mode 100644 same/src/main/java/com/orbekk/same/ClientApp.java (limited to 'same') diff --git a/same/src/main/java/com/orbekk/same/ClientApp.java b/same/src/main/java/com/orbekk/same/ClientApp.java new file mode 100644 index 0000000..cc97823 --- /dev/null +++ b/same/src/main/java/com/orbekk/same/ClientApp.java @@ -0,0 +1,49 @@ +package com.orbekk.same; + +import org.eclipse.jetty.server.Server; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; + +import com.googlecode.jsonrpc4j.JsonRpcServer; + +public class ClientApp { + private Logger logger = LoggerFactory.getLogger(getClass()); + private Server server; + + public void run(int port, String networkName) { + ConnectionManagerImpl connections = new ConnectionManagerImpl(); + State state = new State(networkName); + Broadcaster broadcaster = + BroadcasterImpl.getDefaultBroadcastRunner(connections); + MasterServiceImpl master = new MasterServiceImpl(state, connections, + broadcaster); + ClientServiceImpl client = new ClientServiceImpl(state, connections); + + JsonRpcServer jsonServer = new JsonRpcServer(client, ClientService.class); + server = new Server(port); + RpcHandler rpcHandler = new RpcHandler(jsonServer, client); + server.setHandler(rpcHandler); + + try { + server.start(); + } catch (Exception e) { + logger.error("Could not start jetty server: {}", e); + } + + try { + server.join(); + } catch (InterruptedException e) { + logger.info("Received exception. Exiting. {}", e); + } + } + + public static void main(String[] args) { + if (args.length < 1) { + System.err.println("Usage: port networkName"); + System.exit(1); + } + int port = Integer.parseInt(args[0]); + String networkName = args[1]; + (new ClientApp()).run(port, networkName); + } +} -- cgit v1.2.3