Author: dreiss
Date: Tue Jun 10 15:59:10 2008
New Revision: 666389

URL: http://svn.apache.org/viewvc?rev=666389&view=rev
Log:
Add stress test implementation for new Erlang

Added:
    incubator/thrift/trunk/test/erl/src/stress_server.erl
Modified:
    incubator/thrift/trunk/test/erl/Makefile

Modified: incubator/thrift/trunk/test/erl/Makefile
URL: 
http://svn.apache.org/viewvc/incubator/thrift/trunk/test/erl/Makefile?rev=666389&r1=666388&r2=666389&view=diff
==============================================================================
--- incubator/thrift/trunk/test/erl/Makefile (original)
+++ incubator/thrift/trunk/test/erl/Makefile Tue Jun 10 15:59:10 2008
@@ -10,7 +10,7 @@
 ALL_INCLUDEDIR=$(GEN_INCLUDEDIR) $(INCLUDEDIR) ../../lib/erl/include
 INCLUDEFLAGS=$(patsubst %,-I%, ${ALL_INCLUDEDIR})
 
-MODULES = test_server
+MODULES = stress_server test_server
 
 INCLUDES = 
 TARGETS = $(patsubst %,${TARGETDIR}/%.beam,${MODULES})
@@ -18,12 +18,14 @@
 
 all: ${GEN_TARGETDIR}/ ${TARGETS}
 
-RPCFILE = ../ThriftTest.thrift
+TEST_RPCFILE = ../ThriftTest.thrift
+STRESS_RPCFILE = ../StressTest.thrift
 THRIFT = ../../compiler/cpp/thrift
 
 ${GENDIR}/: ${RPCFILE}
        rm -rf ${GENDIR}
-       ${THRIFT} -alterl ${RPCFILE}
+       ${THRIFT} -alterl ${TEST_RPCFILE}
+       ${THRIFT} -alterl ${STRESS_RPCFILE}
        mkdir -p ${GEN_INCLUDEDIR}
        mkdir -p ${GEN_SRCDIR}
        mkdir -p ${GEN_TARGETDIR}

Added: incubator/thrift/trunk/test/erl/src/stress_server.erl
URL: 
http://svn.apache.org/viewvc/incubator/thrift/trunk/test/erl/src/stress_server.erl?rev=666389&view=auto
==============================================================================
--- incubator/thrift/trunk/test/erl/src/stress_server.erl (added)
+++ incubator/thrift/trunk/test/erl/src/stress_server.erl Tue Jun 10 15:59:10 
2008
@@ -0,0 +1,64 @@
+-module(stress_server).
+
+-include("thrift.hrl").
+
+-export([start_link/1, old_start_link/1,
+
+         handle_function/2,
+
+         echoVoid/0,
+         echoByte/1,
+         echoI32/1,
+         echoI64/1,
+         echoString/1,
+         echoList/1,
+         echoSet/1,
+         echoMap/1
+        ]).
+
+start_link(Port) ->
+    thrift_server:start_link(Port, service_thrift, ?MODULE).
+
+% Start the server with the old style bindings
+old_start_link(Port) ->
+    Handler   = ?MODULE,
+    Processor = service_thrift,
+
+    TF = tBufferedTransportFactory:new(),
+    PF = tBinaryProtocolFactory:new(),
+
+    ServerTransport = tErlAcceptor,
+    ServerFlavor    = tErlServer,
+
+    Server = oop:start_new(ServerFlavor, [Port, Handler, Processor, 
ServerTransport, TF, PF]),
+
+    case ?R0(Server, effectful_serve) of
+       ok    -> Server;
+       Error -> Error
+    end.
+    
+
+handle_function(Function, Args) ->
+    case apply(?MODULE, Function, tuple_to_list(Args)) of
+        ok ->
+             ok;
+        Else -> {reply, Else}
+    end.
+
+
+echoVoid() ->
+    ok.
+echoByte(X) ->
+    X.
+echoI32(X) ->
+    X.
+echoI64(X) ->
+    X.
+echoString(X) ->
+    X.
+echoList(X) ->
+    X.
+echoSet(X) ->
+    X.
+echoMap(X) ->
+    X.


Reply via email to