diff options
author | Kjetil Ørbekk <kjetil.orbekk@gmail.com> | 2012-02-03 16:09:18 +0100 |
---|---|---|
committer | Kjetil Ørbekk <kjetil.orbekk@gmail.com> | 2012-02-03 16:09:18 +0100 |
commit | 1c7bbed107d0767536c93a092dbf192a6a45a620 (patch) | |
tree | 8c0fd5aa8daf4a443dfe018d7f275fbb0156c14e /same/src/main/java/com/orbekk/same/SameController.java | |
parent | af22c94b833643bc8545cfcc82b25b8f515ae513 (diff) |
Refactor Handler code.
Use servlets for everything.
Ping service not yet implemented (becuase it's ugly and will be replaced
with something else).
Diffstat (limited to 'same/src/main/java/com/orbekk/same/SameController.java')
-rw-r--r-- | same/src/main/java/com/orbekk/same/SameController.java | 27 |
1 files changed, 15 insertions, 12 deletions
diff --git a/same/src/main/java/com/orbekk/same/SameController.java b/same/src/main/java/com/orbekk/same/SameController.java index b75de96..bc912e6 100644 --- a/same/src/main/java/com/orbekk/same/SameController.java +++ b/same/src/main/java/com/orbekk/same/SameController.java @@ -1,6 +1,10 @@ package com.orbekk.same; +import org.eclipse.jetty.server.Handler; import org.eclipse.jetty.server.Server; +import org.eclipse.jetty.server.handler.HandlerList; +import org.eclipse.jetty.servlet.ServletContextHandler; +import org.eclipse.jetty.servlet.ServletHolder; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -8,6 +12,10 @@ import com.googlecode.jsonrpc4j.JsonRpcServer; import com.orbekk.net.HttpUtil; import com.orbekk.paxos.PaxosService; import com.orbekk.paxos.PaxosServiceImpl; +import com.orbekk.same.http.HandlerFactory; +import com.orbekk.same.http.RpcHandler; +import com.orbekk.same.http.ServerBuilder; +import com.orbekk.same.http.StateServlet; public class SameController implements UrlReceiver { private Logger logger = LoggerFactory.getLogger(getClass()); @@ -30,23 +38,18 @@ public class SameController implements UrlReceiver { MasterServiceImpl master = new MasterServiceImpl(state, connections, broadcaster); - JsonRpcServer jsonMaster = new JsonRpcServer(master, MasterService.class); ClientServiceImpl client = new ClientServiceImpl(state, connections); - JsonRpcServer jsonClient = new JsonRpcServer(client.getService(), - ClientService.class); PaxosServiceImpl paxos = new PaxosServiceImpl(""); - JsonRpcServer jsonPaxos = new JsonRpcServer(paxos, PaxosService.class); - Server server = new Server(port); + Server server = new ServerBuilder(port) + .withServlet(new StateServlet(), "/_/state") + .withService(client.getService(), ClientService.class) + .withService(master, MasterService.class) + .withService(paxos, PaxosService.class) + .build(); + SameController controller = new SameController(port, server, master, client, paxos); - RpcHandler rpcHandler = new RpcHandler(null); - - rpcHandler.addRpcServer("/MasterService.json", jsonMaster); - rpcHandler.addRpcServer("/ClientService.json", jsonClient); - rpcHandler.addRpcServer("/PaxosService.json", jsonPaxos); - - server.setHandler(rpcHandler); return controller; } |