blob: 915b027ea8b939449fe4096c749bc57b38291486 [file] [log] [blame]
David Reiss60b50cf2008-06-10 22:59:10 +00001-module(stress_server).
2
3-include("thrift.hrl").
4
5-export([start_link/1, old_start_link/1,
6
7 handle_function/2,
8
9 echoVoid/0,
10 echoByte/1,
11 echoI32/1,
12 echoI64/1,
13 echoString/1,
14 echoList/1,
15 echoSet/1,
16 echoMap/1
17 ]).
18
19start_link(Port) ->
20 thrift_server:start_link(Port, service_thrift, ?MODULE).
21
22% Start the server with the old style bindings
23old_start_link(Port) ->
24 Handler = ?MODULE,
25 Processor = service_thrift,
26
27 TF = tBufferedTransportFactory:new(),
28 PF = tBinaryProtocolFactory:new(),
29
30 ServerTransport = tErlAcceptor,
31 ServerFlavor = tErlServer,
32
33 Server = oop:start_new(ServerFlavor, [Port, Handler, Processor, ServerTransport, TF, PF]),
34
35 case ?R0(Server, effectful_serve) of
36 ok -> Server;
37 Error -> Error
38 end.
39
40
41handle_function(Function, Args) ->
42 case apply(?MODULE, Function, tuple_to_list(Args)) of
43 ok ->
44 ok;
45 Else -> {reply, Else}
46 end.
47
48
49echoVoid() ->
50 ok.
51echoByte(X) ->
52 X.
53echoI32(X) ->
54 X.
55echoI64(X) ->
56 X.
57echoString(X) ->
58 X.
59echoList(X) ->
60 X.
61echoSet(X) ->
62 X.
63echoMap(X) ->
64 X.