summaryrefslogtreecommitdiff
path: root/same/src/main/java/com/orbekk/same/benchmark/ExampleServer.java
diff options
context:
space:
mode:
Diffstat (limited to 'same/src/main/java/com/orbekk/same/benchmark/ExampleServer.java')
-rw-r--r--same/src/main/java/com/orbekk/same/benchmark/ExampleServer.java42
1 files changed, 42 insertions, 0 deletions
diff --git a/same/src/main/java/com/orbekk/same/benchmark/ExampleServer.java b/same/src/main/java/com/orbekk/same/benchmark/ExampleServer.java
new file mode 100644
index 0000000..9aa691d
--- /dev/null
+++ b/same/src/main/java/com/orbekk/same/benchmark/ExampleServer.java
@@ -0,0 +1,42 @@
+package com.orbekk.same.benchmark;
+
+import org.apache.log4j.Logger;
+
+import com.google.protobuf.RpcCallback;
+import com.google.protobuf.RpcController;
+import com.orbekk.protobuf.SimpleProtobufServer;
+import com.orbekk.same.benchmark.Example.Data;
+
+public class ExampleServer {
+ private final static Logger logger =
+ Logger.getLogger(ExampleServer.class);
+ private volatile SimpleProtobufServer server;
+
+ class ServiceImpl extends Example.Service {
+ @Override
+ public void methodA(RpcController controller, Data request, RpcCallback<Data> done) {
+ Data response = Data.newBuilder()
+ .setMessage(request.getMessage())
+ .setArg1(request.getArg1())
+ .setArg2(request.getArg2())
+ .build();
+ done.run(response);
+ }
+ }
+
+ public void runServer(int port) {
+ server = SimpleProtobufServer.create(port);
+ server.registerService(new ServiceImpl());
+ server.start();
+ logger.info("Running SimpleProtobufServer on port " + server.getPort());
+ }
+
+ public void stopServer() throws InterruptedException {
+ server.interrupt();
+ }
+
+ public static void main(String[] args) {
+ ExampleServer server = new ExampleServer();
+ server.runServer(12000);
+ }
+}