From bf21ebc246d9a77091cfad0dd1c2d3a9463db87f Mon Sep 17 00:00:00 2001 From: Matt Broadstone Date: Thu, 19 Jun 2014 10:00:52 -0400 Subject: [PATCH] refactor Message message now provides an "isValid" property, data is implicitly shared now --- src/amqp_message.cpp | 7 +++++++ src/amqp_message.h | 6 ++++-- 2 files changed, 11 insertions(+), 2 deletions(-) diff --git a/src/amqp_message.cpp b/src/amqp_message.cpp index 4b0380e..5b8f628 100644 --- a/src/amqp_message.cpp +++ b/src/amqp_message.cpp @@ -30,6 +30,13 @@ Message &Message::operator=(const Message &other) return *this; } +bool Message::isValid() const +{ + return d->deliveryTag != 0 && + !d->exchangeName.isNull() && + !d->routingKey.isNull(); +} + qlonglong Message::deliveryTag() const { return d->deliveryTag; diff --git a/src/amqp_message.h b/src/amqp_message.h index a315f36..eb89ed0 100644 --- a/src/amqp_message.h +++ b/src/amqp_message.h @@ -3,7 +3,7 @@ #include #include -#include +#include #include "amqp_frame.h" #include "amqp_global.h" @@ -20,6 +20,8 @@ public: Message &operator=(const Message &other); ~Message(); + bool isValid() const; + qlonglong deliveryTag() const; bool redelivered() const; QString exchangeName() const; @@ -29,7 +31,7 @@ public: Frame::TableField headers() const; private: - QExplicitlySharedDataPointer d; + QSharedDataPointer d; friend class QueuePrivate; friend class Queue;