diff options
| author | Alan Conway <aconway@apache.org> | 2006-10-16 13:50:26 +0000 |
|---|---|---|
| committer | Alan Conway <aconway@apache.org> | 2006-10-16 13:50:26 +0000 |
| commit | 8a6ab3aa61d441b9210c05c84dc9998acfc38737 (patch) | |
| tree | 1eb9d7f39b5c2d04a85a1f66caef3d398567b740 /cpp/DESIGN | |
| parent | 9a808fb13aba243d41bbdab75158dae5939a80a4 (diff) | |
| download | qpid-python-8a6ab3aa61d441b9210c05c84dc9998acfc38737.tar.gz | |
Build system reorg, see README and Makefile comments for details.
git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@464494 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'cpp/DESIGN')
| -rw-r--r-- | cpp/DESIGN | 40 |
1 files changed, 15 insertions, 25 deletions
diff --git a/cpp/DESIGN b/cpp/DESIGN index 476fd42bfa..7e9ba6755c 100644 --- a/cpp/DESIGN +++ b/cpp/DESIGN @@ -1,37 +1,27 @@ Qpid C++ AMQP implementation ============================= -The following is a brief description of the logical design of the -Qpid C++ code. += Project layout = -Layout +For Build system design see comment at start of Makefile. -There are three top level modules. The first two, client and broker, -containi the code required for an AMQP client and an AMQP broker -respectively. The third, common, contains code that is common to both -client and broker implementations. [Note that at present only the -client has been started]. +Project contains: + * Client library (lib/libqpid_client): src/qpid/client + * Broker library (lib/libqpid_broker): src/qpid/broker + * Common classes + * src/qpid/concurrent: concurrecy + * src/qpid/framing: wire encoding/decoding + * src/qpid/io: reading/writing + * src/qpid/Exception.cpp, QpidError.cpp: Exception classes. + * Qpid Daemon (bin/qpidd): src/qpidd.cpp -Within the common module there are currently four sub-modules. The -largest of these is framing, containing the definitions of classes -corresponding to key AMQP concepts such as frames, content & header -bodies, particular method bodies etc as well as some interfaces and -utilities used in the encoding and decoding of the wire protocol. +Unit tests in test/unit: each *Test.cpp builds a CppUnit plugin. -Two of the other sub-modules in common, io and concurrent, provide -abstractions of core io and concurrency constructs used in the client -and broker code. The intention is to allow these to be implemented in -different ways.interaction with the wire protocol. At present the -implementation of the io and concurrency abstractions is based on APR -(Apache Portable Runtime). [Note: the io module currently only -contains the abstractions as seen from the client - the Connector. It -will in due time likely have the analogous broker-side abstraction - -the Acceptor]. +Client tests in test/client: each *.cpp builds a test executable. -The final common sub-module is error, containing a simple exception -definition used in all the error handling. +Test utilities: test/include -Client Design += Client Design = The client module is primarily concerned with presenting the functionality offered by AMQP to users through a simple API that |
