protobuf_socket_rpcJava and Python protobuf RPC implementation using TCP/IP sockets | |
Download |
protobuf_socket_rpc Ranking & Summary
Advertisement
- License:
- MIT/X Consortium Lic...
- Price:
- FREE
- Publisher Name:
- Martin Norbury
- Publisher web site:
- http://code.google.com/u/martin.norbury/
protobuf_socket_rpc Tags
protobuf_socket_rpc Description
Java and Python protobuf RPC implementation using TCP/IP sockets protobuf_socket_rpc is a Python implementation of the Google protocol buffer socket-rpc.Usage:For a service MyService with a method MyMethod that takes in a MyRequest protobuf message and returns a MyResponse protobuf message.JavaSample server side usage code:// Start serverSocketRpcServer socketRpcServer = new SocketRpcServer(serverPort, Executors.newFixedThreadPool(threadPoolSize));socketRpcServer.registerService(new MyServiceImpl());socketRpcServer.run();Sample client side usage code:// Create channelSocketRpcChannel socketRpcChannel = new SocketRpcChannel(host, port);SocketRpcController rpcController = socketRpcChannel.newRpcController();// Call serviceMyService myService = MyService.newStub(socketRpcChannel);myService.myMethod(rpcController, myRequest, new RpcCallback() { public void run(MyResponse myResponse) { System.out.println("Received Response: " + myResponse); } }); // Check successif (rpcController.failed()) { System.err.println(String.format("Rpc failed %s : %s", rpcController.errorReason(), rpcController.errorText()));}PythonSample server side usage code:// Start serverserver = protobuf.server.SocketRpcServer(port)server.registerService(MyServiceImpl())server.run()Sample client side usage code:// Define callbackclass Callback: def run(self,response): print "Received Response: %s" % response// Create channelchannel = protobuf.channel.SocketRpcChannel(hostname,port)controller = channel.newController()// Call serviceservice = MyService_Stub(channel)service.myMethod(controller,request,Callback())// Check successif controller.failed(): print "Rpc failed %s : %s" % (controller.error,controller.reason)
protobuf_socket_rpc Related Software