THRIFT-923. cpp: Implement a fully nonblocking server and client
There are three major parts of this:
1/ New callback-style interfaces for for a few key Thrift components:
TAsyncProcessor for servers and TAsyncChannel for clients.
2/ Concrete implementations of TAsyncChannel and a server for
TAsyncProcessor based on evhttp.
3/ Async-style code generation for C++
git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@1005127 13f79535-47bb-0310-9956-ffa450edef68
diff --git a/lib/cpp/Makefile.am b/lib/cpp/Makefile.am
index 664a58a..39382c8 100644
--- a/lib/cpp/Makefile.am
+++ b/lib/cpp/Makefile.am
@@ -70,9 +70,11 @@
src/server/TSimpleServer.cpp \
src/server/TThreadPoolServer.cpp \
src/server/TThreadedServer.cpp \
+ src/async/TAsyncChannel.cpp \
src/processor/PeekProcessor.cpp
-libthriftnb_la_SOURCES = src/server/TNonblockingServer.cpp
+libthriftnb_la_SOURCES = src/server/TNonblockingServer.cpp \
+ src/async/TAsyncProtocolProcessor.cpp
libthriftz_la_SOURCES = src/transport/TZlibTransport.cpp
@@ -148,6 +150,17 @@
src/processor/PeekProcessor.h \
src/processor/StatsProcessor.h
+include_asyncdir = $(include_thriftdir)/async
+include_async_HEADERS = \
+ src/async/TAsyncChannel.h \
+ src/async/TAsyncProcessor.h \
+ src/async/TAsyncBufferProcessor.h \
+ src/async/TAsyncProtocolProcessor.h \
+ src/async/TEvhttpClientChannel.h \
+ src/async/TEvhttpServer.h \
+ src/async/SimpleCallback.h
+
+
noinst_PROGRAMS = concurrency_test
concurrency_test_SOURCES = src/concurrency/test/Tests.cpp \