diff options
author | Kjetil Ørbekk <kjetil.orbekk@gmail.com> | 2012-01-13 10:18:02 +0100 |
---|---|---|
committer | Kjetil Ørbekk <kjetil.orbekk@gmail.com> | 2012-01-13 10:18:02 +0100 |
commit | ba7132f3ce5629cff2cc4857fff7bd672511bee8 (patch) | |
tree | dc6f7d1adafb8351004f2de6f3f775ebfe596fc7 /same-android/src/main/java/com/orbekk/PingServer.java | |
parent | 85a93de08694f25bd049c5236f11f06b8d8e4ff7 (diff) |
Rename projects.
– jsonrpc → same
– master → same-android
Diffstat (limited to 'same-android/src/main/java/com/orbekk/PingServer.java')
-rw-r--r-- | same-android/src/main/java/com/orbekk/PingServer.java | 51 |
1 files changed, 51 insertions, 0 deletions
diff --git a/same-android/src/main/java/com/orbekk/PingServer.java b/same-android/src/main/java/com/orbekk/PingServer.java new file mode 100644 index 0000000..5df2346 --- /dev/null +++ b/same-android/src/main/java/com/orbekk/PingServer.java @@ -0,0 +1,51 @@ +package com.orbekk; + +import org.eclipse.jetty.server.Server; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; + +import com.googlecode.jsonrpc4j.JsonRpcServer; +import com.orbekk.rpc.PingService; +import com.orbekk.rpc.PingServiceImpl; +import com.orbekk.rpc.RpcHandler; + +public class PingServer { + private Server server; + private Logger logger = LoggerFactory.getLogger(getClass()); + + public PingServer(Server server) { + this.server = server; + } + + public static PingServer createPingServer(int port) { + PingService service = new PingServiceImpl(); + JsonRpcServer jsonServer = new JsonRpcServer(service, PingService.class); + + Server server = new Server(port); + RpcHandler rpcHandler = new RpcHandler(jsonServer); + server.setHandler(rpcHandler); + + return new PingServer(server); + } + + public void start() throws Exception { + logger.info("Starting server."); + server.start(); + } + + public void join() { + try { + server.join(); + } catch (InterruptedException e) { + logger.info("Received InterruptException while waiting for server.", e.fillInStackTrace()); + } + } + + public void stop() { + try { + server.stop(); + } catch (Exception e) { + logger.warn("Exception when stopping server.", e.fillInStackTrace()); + } + } +} |