diff options
| author | Alan Conway <aconway@apache.org> | 2007-02-17 03:46:44 +0000 |
|---|---|---|
| committer | Alan Conway <aconway@apache.org> | 2007-02-17 03:46:44 +0000 |
| commit | f972bfa6c7c9a1b3d5f5fe4753dce7358b6b0215 (patch) | |
| tree | a3d37ef1999eb4ebdb8bb9d6eaea8b2d3de5dfe2 /cpp/lib/common/framing | |
| parent | 72de13352dc9c42acfe95a1d76f049c507eb5cfd (diff) | |
| download | qpid-python-f972bfa6c7c9a1b3d5f5fe4753dce7358b6b0215.tar.gz | |
* cpp/lib/client/ClientMessage.h/.cpp: Added Message constructor taking data.
* cpp/lib/client/IncomingMessage.cpp: Simplified message aggregation.
* cpp/lib/common/framing/AMQ*Body.h: remove unnecessary virtual inheritance.
* cpp/lib/common/framing/AMQMethodBody.h: add bool isRequest, isResponse
* cpp/lib/common/sys/Mutex.h (class ScopedUnlock): Added ScopedUnlock
* cpp/lib/common/sys/ThreadSafeQueue.h: Thread-safe queue template.
* cpp/tests/BrokerChannelTest.cpp: Renamed from ChannelTest.
* cpp/tests/ClientChannelTest.cpp: Test client API.
* cpp/tests/RequestResponseTest.cpp: Removed empty test.
* cpp/lib/client/Connection.h,.cpp:
- non-static channelIdCounter
- No close() in dtor.
git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/branches/qpid.0-9@508705 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'cpp/lib/common/framing')
| -rw-r--r-- | cpp/lib/common/framing/AMQContentBody.h | 2 | ||||
| -rw-r--r-- | cpp/lib/common/framing/AMQHeaderBody.h | 2 | ||||
| -rw-r--r-- | cpp/lib/common/framing/AMQHeartbeatBody.h | 2 | ||||
| -rw-r--r-- | cpp/lib/common/framing/AMQMethodBody.h | 3 | ||||
| -rw-r--r-- | cpp/lib/common/framing/AMQRequestBody.h | 1 | ||||
| -rw-r--r-- | cpp/lib/common/framing/AMQResponseBody.h | 1 |
6 files changed, 8 insertions, 3 deletions
diff --git a/cpp/lib/common/framing/AMQContentBody.h b/cpp/lib/common/framing/AMQContentBody.h index 172228671a..a324f1ab21 100644 --- a/cpp/lib/common/framing/AMQContentBody.h +++ b/cpp/lib/common/framing/AMQContentBody.h @@ -28,7 +28,7 @@ namespace qpid { namespace framing { -class AMQContentBody : virtual public AMQBody +class AMQContentBody : public AMQBody { string data; diff --git a/cpp/lib/common/framing/AMQHeaderBody.h b/cpp/lib/common/framing/AMQHeaderBody.h index 31cf7d575e..77f56d9a93 100644 --- a/cpp/lib/common/framing/AMQHeaderBody.h +++ b/cpp/lib/common/framing/AMQHeaderBody.h @@ -29,7 +29,7 @@ namespace qpid { namespace framing { -class AMQHeaderBody : virtual public AMQBody +class AMQHeaderBody : public AMQBody { HeaderProperties* properties; u_int16_t weight; diff --git a/cpp/lib/common/framing/AMQHeartbeatBody.h b/cpp/lib/common/framing/AMQHeartbeatBody.h index a2315119e4..20a954c468 100644 --- a/cpp/lib/common/framing/AMQHeartbeatBody.h +++ b/cpp/lib/common/framing/AMQHeartbeatBody.h @@ -28,7 +28,7 @@ namespace qpid { namespace framing { -class AMQHeartbeatBody : virtual public AMQBody +class AMQHeartbeatBody : public AMQBody { public: typedef boost::shared_ptr<AMQHeartbeatBody> shared_ptr; diff --git a/cpp/lib/common/framing/AMQMethodBody.h b/cpp/lib/common/framing/AMQMethodBody.h index 492571c83c..9b39a3d721 100644 --- a/cpp/lib/common/framing/AMQMethodBody.h +++ b/cpp/lib/common/framing/AMQMethodBody.h @@ -60,6 +60,9 @@ class AMQMethodBody : public AMQBody /** Return request ID or response correlationID */ virtual RequestId getRequestId() const { return 0; } + virtual bool isRequest() const { return false; } + virtual bool isResponse() const { return false; } + protected: static u_int32_t baseSize() { return 4; } diff --git a/cpp/lib/common/framing/AMQRequestBody.h b/cpp/lib/common/framing/AMQRequestBody.h index 9b8fc1d663..d9eb78c26f 100644 --- a/cpp/lib/common/framing/AMQRequestBody.h +++ b/cpp/lib/common/framing/AMQRequestBody.h @@ -62,6 +62,7 @@ class AMQRequestBody : public AMQMethodBody void setRequestId(RequestId id) { data.requestId=id; } void setResponseMark(ResponseId mark) { data.responseMark=mark; } + bool isRequest()const { return true; } protected: static const u_int32_t baseSize() { return AMQMethodBody::baseSize()+20; } void printPrefix(std::ostream& out) const; diff --git a/cpp/lib/common/framing/AMQResponseBody.h b/cpp/lib/common/framing/AMQResponseBody.h index 3954836ec8..5ed76ff67d 100644 --- a/cpp/lib/common/framing/AMQResponseBody.h +++ b/cpp/lib/common/framing/AMQResponseBody.h @@ -69,6 +69,7 @@ class AMQResponseBody : public AMQMethodBody void setRequestId(RequestId id) { data.requestId = id; } void setBatchOffset(BatchOffset id) { data.batchOffset = id; } + bool isResponse() const { return true; } protected: static const u_int32_t baseSize() { return AMQMethodBody::baseSize()+20; } void printPrefix(std::ostream& out) const; |
