diff options
author | Kjetil Ørbekk <kjetil.orbekk@gmail.com> | 2012-02-06 13:24:07 +0100 |
---|---|---|
committer | Kjetil Ørbekk <kjetil.orbekk@gmail.com> | 2012-02-06 13:24:07 +0100 |
commit | 73bfca1fa99a4b881f5a3c2b19386e86c77da6f9 (patch) | |
tree | 5530b3d19f420208d0327bd857056a77863db217 /same/src/main/java/com/orbekk/same/http | |
parent | 7a6765d14402c8f7010b02f44021f9020af06497 (diff) |
Get rid of UrlReceiver interface.
Diffstat (limited to 'same/src/main/java/com/orbekk/same/http')
-rw-r--r-- | same/src/main/java/com/orbekk/same/http/RpcHandler.java | 69 |
1 files changed, 0 insertions, 69 deletions
diff --git a/same/src/main/java/com/orbekk/same/http/RpcHandler.java b/same/src/main/java/com/orbekk/same/http/RpcHandler.java deleted file mode 100644 index 56970d1..0000000 --- a/same/src/main/java/com/orbekk/same/http/RpcHandler.java +++ /dev/null @@ -1,69 +0,0 @@ -package com.orbekk.same.http; - -import com.googlecode.jsonrpc4j.JsonRpcServer; -import com.orbekk.net.HttpUtil; -import com.orbekk.same.UrlReceiver; - -import java.io.IOException; -import java.util.HashMap; -import java.util.Map; -import javax.servlet.ServletException; -import javax.servlet.http.HttpServletRequest; -import javax.servlet.http.HttpServletResponse; -import org.eclipse.jetty.server.Request; -import org.eclipse.jetty.server.handler.AbstractHandler; -import org.slf4j.Logger; -import org.slf4j.LoggerFactory; - -public class RpcHandler extends AbstractHandler { - private Logger logger = LoggerFactory.getLogger(getClass()); - private UrlReceiver urlReceiver; - private Map<String, JsonRpcServer> rpcServers = - new HashMap<String, JsonRpcServer>(); - - public RpcHandler(UrlReceiver urlReceiver) { - this.urlReceiver = urlReceiver; - } - - /** - * Add an RpcServer to this Handler. - * - * @param url the base url of the service, e.g. - * /MyService.json - */ - public void addRpcServer(String url, JsonRpcServer rpcServer) { - rpcServers.put(url, rpcServer); - } - - @Override - public synchronized void handle(String target, Request baseRequest, - HttpServletRequest request, HttpServletResponse response) - throws IOException, ServletException { - logger.info("Handling request to target: " + target); - - if (urlReceiver != null) { - String sameServiceUrl = "http://" + request.getLocalAddr() + - ":" + request.getLocalPort() + "/"; - urlReceiver.setUrl(sameServiceUrl); - urlReceiver = null; - } - - if (target.equals("/ping")) { - int remotePort = Integer.parseInt(request.getParameter("port")); - String pongUrl = "http://" + request.getRemoteAddr() + ":" + - remotePort + "/pong"; - logger.info("Got ping. Sending pong to {}", pongUrl); - HttpUtil.sendHttpRequest(pongUrl); - baseRequest.setHandled(true); - } else if (target.equals("/pong")) { - logger.info("Received pong from {}", request.getRemoteAddr()); - baseRequest.setHandled(true); - } else { - JsonRpcServer server = rpcServers.get(target); - if (server != null) { - server.handle(request, response); - baseRequest.setHandled(true); - } - } - } -} |