summaryrefslogtreecommitdiff
path: root/cpp/lib/common/framing/AMQFrame.h
diff options
context:
space:
mode:
Diffstat (limited to 'cpp/lib/common/framing/AMQFrame.h')
-rw-r--r--cpp/lib/common/framing/AMQFrame.h10
1 files changed, 6 insertions, 4 deletions
diff --git a/cpp/lib/common/framing/AMQFrame.h b/cpp/lib/common/framing/AMQFrame.h
index eb230c740c..d3c769087a 100644
--- a/cpp/lib/common/framing/AMQFrame.h
+++ b/cpp/lib/common/framing/AMQFrame.h
@@ -27,6 +27,7 @@
#include <AMQContentBody.h>
#include <AMQHeartbeatBody.h>
#include <AMQP_MethodVersionMap.h>
+#include <AMQP_HighestVersion.h>
#include <Buffer.h>
#ifndef _AMQFrame_
@@ -39,16 +40,17 @@ namespace qpid {
class AMQFrame : virtual public AMQDataBlock
{
static AMQP_MethodVersionMap versionMap;
-
+ qpid::framing::ProtocolVersion version;
+
u_int16_t channel;
u_int8_t type;//used if the body is decoded separately from the 'head'
AMQBody::shared_ptr body;
AMQBody::shared_ptr createMethodBody(Buffer& buffer);
public:
- AMQFrame();
- AMQFrame(u_int16_t channel, AMQBody* body);
- AMQFrame(u_int16_t channel, AMQBody::shared_ptr& body);
+ AMQFrame(qpid::framing::ProtocolVersion& _version = highestProtocolVersion);
+ AMQFrame(qpid::framing::ProtocolVersion& _version, u_int16_t channel, AMQBody* body);
+ AMQFrame(qpid::framing::ProtocolVersion& _version, u_int16_t channel, AMQBody::shared_ptr& body);
virtual ~AMQFrame();
virtual void encode(Buffer& buffer);
virtual bool decode(Buffer& buffer);