blob: 450d67a5175b6f4e68956d0e3da6beac9b21f952 [file] [log] [blame]
David Reiss03b574f2008-07-02 23:55:04 +00001package com.facebook.thrift.test;
2
3import com.facebook.thrift.TException;
4import com.facebook.thrift.protocol.TBinaryProtocol;
5import com.facebook.thrift.protocol.TProtocol;
6import com.facebook.thrift.protocol.TProtocolFactory;
7import com.facebook.thrift.server.TServer;
8import com.facebook.thrift.server.TSimpleServer;
9import com.facebook.thrift.server.TNonblockingServer;
10import com.facebook.thrift.server.THsHaServer;
11import com.facebook.thrift.transport.TNonblockingServerSocket;
12import com.facebook.thrift.transport.TNonblockingServerTransport;
13import com.facebook.thrift.transport.TFramedTransport;
14
15// Generated code
16import thrift.test.*;
17
18import java.net.ServerSocket;
19import java.util.List;
20import java.util.ArrayList;
21import java.util.Map;
22import java.util.HashMap;
23import java.util.Set;
24import java.util.HashSet;
25
26
27public class TestNonblockingServer extends TestServer {
28 public static void main(String [] args) {
29 try {
30 int port = 9090;
31 boolean hsha = false;
32
33 for (int i = 0; i < args.length; i++) {
34 if (args[i].equals("-p")) {
35 port = Integer.valueOf(args[i++]);
36 } else if (args[i].equals("-hsha")) {
37 hsha = true;
38 }
39 }
40
41 // Processor
42 TestHandler testHandler =
43 new TestHandler();
44 ThriftTest.Processor testProcessor =
45 new ThriftTest.Processor(testHandler);
46
47 // Transport
48 TNonblockingServerSocket tServerSocket =
49 new TNonblockingServerSocket(port);
50
51 TServer serverEngine;
52
53 if (hsha) {
54 // HsHa Server
55 serverEngine = new THsHaServer(testProcessor, tServerSocket);
56 } else {
57 // Nonblocking Server
58 serverEngine = new TNonblockingServer(testProcessor, tServerSocket);
59 }
60
61 // Run it
62 System.out.println("Starting the server on port " + port + "...");
63 serverEngine.serve();
64
65 } catch (Exception x) {
66 x.printStackTrace();
67 }
68 System.out.println("done.");
69 }
70}