summaryrefslogtreecommitdiffstats
path: root/src/jaegertracing/thrift/contrib/transport-sample/README.md
diff options
context:
space:
mode:
Diffstat (limited to 'src/jaegertracing/thrift/contrib/transport-sample/README.md')
-rw-r--r--src/jaegertracing/thrift/contrib/transport-sample/README.md61
1 files changed, 61 insertions, 0 deletions
diff --git a/src/jaegertracing/thrift/contrib/transport-sample/README.md b/src/jaegertracing/thrift/contrib/transport-sample/README.md
new file mode 100644
index 000000000..a1dfc0a36
--- /dev/null
+++ b/src/jaegertracing/thrift/contrib/transport-sample/README.md
@@ -0,0 +1,61 @@
+Thrift transport sample project
+-------------------------------
+
+This cross-platform project has been built with Windows Visual Studio 10 and
+OSX 10.7.1's g++. The client and server support socket and pipe transports
+through command-line switches.
+
+Windows supports both named & anonymous pipes; *NIX gets only named
+'pipes' at this time.
+
+Windows-only at this time:
+The client & server are double-ended. Both sides run a server and client to
+enable full duplex bidirectional event signaling. They are simple command
+line apps. The server runs until it's aborted (Ctl-C). The client connects to
+the server, informs the server of its listening pipe/port, runs some more RPCs
+and exits. The server also makes RPC calls to the client to demonstrate
+bidirectional operation.
+
+Prequisites:
+Boost -- tested with Boost 1.47, other versions may work.
+libthrift library -- build the library under "thrift/lib/cpp/"
+thrift IDL compiler -- download from http://thrift.apache.org/download/
+ or build from "thrift/compiler/cpp". The IDL compiler version should
+ match the thrift source distribution's version. For instance, thrift-0.9.0
+ has a different directory structure than thrift-0.8.0 and the generated
+ files are not compatible.
+
+Note: Bulding the thrift IDL compiler and library are beyond the scope
+of this article. Please refer to the Thrift documentation in the respective
+directories and online.
+
+
+Microsoft Windows with Visual Studio 10
+----------------------------------------
+Copy the IDL compiler 'thrift.exe' to this project folder or to a location in the path.
+Run thriftme.bat to generate the interface source from the thrift files.
+
+Open transport-sample.sln and...
+Adapt the Boost paths for the client and server projects. Right-click on each project, select
+Properties, then:
+Configuration Properties -> C/C++ -> General -> Additional Include Directories
+Configuration Properties -> Linker -> General -> Additional Include Directories
+
+The stock path assumes that Boost is located at the same level as the thrift repo root.
+
+Run the following in separate command prompts from the Release or Debug
+build folder:
+ server.exe -np test
+ client.exe -np test
+
+
+*NIX flavors
+------------
+Build the thrift cpp library.
+Build the IDL compiler and copy it to this project folder.
+Run thriftme.sh to generate the interface source from the thrift files.
+Run 'make'
+
+Run the following in separate shells:
+ server/server -np /tmp/test
+ client/client -np /tmp/test