2014-05-29 00:25:28 +08:00
|
|
|
#include "amqp_message.h"
|
2014-06-06 03:34:08 +08:00
|
|
|
#include "amqp_message_p.h"
|
2014-05-29 00:25:28 +08:00
|
|
|
|
|
|
|
|
using namespace QAMQP;
|
2014-06-06 03:34:08 +08:00
|
|
|
MessagePrivate::MessagePrivate()
|
|
|
|
|
: deliveryTag(0),
|
|
|
|
|
leftSize(0)
|
|
|
|
|
{
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
//////////////////////////////////////////////////////////////////////////
|
2014-05-29 00:25:28 +08:00
|
|
|
|
|
|
|
|
Message::Message()
|
2014-06-06 03:34:08 +08:00
|
|
|
: d(new MessagePrivate)
|
|
|
|
|
{
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
Message::Message(const Message &other)
|
|
|
|
|
: d(other.d)
|
2014-05-29 00:25:28 +08:00
|
|
|
{
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
Message::~Message()
|
|
|
|
|
{
|
2014-06-06 03:34:08 +08:00
|
|
|
}
|
|
|
|
|
|
|
|
|
|
Message &Message::operator=(const Message &other)
|
|
|
|
|
{
|
|
|
|
|
d = other.d;
|
|
|
|
|
return *this;
|
|
|
|
|
}
|
|
|
|
|
|
2014-06-19 22:00:52 +08:00
|
|
|
bool Message::isValid() const
|
|
|
|
|
{
|
|
|
|
|
return d->deliveryTag != 0 &&
|
|
|
|
|
!d->exchangeName.isNull() &&
|
|
|
|
|
!d->routingKey.isNull();
|
|
|
|
|
}
|
|
|
|
|
|
2014-06-06 03:34:08 +08:00
|
|
|
qlonglong Message::deliveryTag() const
|
|
|
|
|
{
|
|
|
|
|
return d->deliveryTag;
|
|
|
|
|
}
|
|
|
|
|
|
2014-07-22 04:25:21 +08:00
|
|
|
bool Message::isRedelivered() const
|
2014-06-06 03:34:08 +08:00
|
|
|
{
|
|
|
|
|
return d->redelivered;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
QString Message::exchangeName() const
|
|
|
|
|
{
|
|
|
|
|
return d->exchangeName;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
QString Message::routingKey() const
|
|
|
|
|
{
|
|
|
|
|
return d->routingKey;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
QByteArray Message::payload() const
|
|
|
|
|
{
|
|
|
|
|
return d->payload;
|
|
|
|
|
}
|
|
|
|
|
|
2014-07-22 03:17:04 +08:00
|
|
|
bool Message::hasProperty(Property property) const
|
2014-06-06 03:34:08 +08:00
|
|
|
{
|
2014-07-22 03:17:04 +08:00
|
|
|
return d->properties.contains(property);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
void Message::setProperty(Property property, const QVariant &value)
|
|
|
|
|
{
|
|
|
|
|
d->properties.insert(property, value);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
QVariant Message::property(Property property, const QVariant &defaultValue) const
|
|
|
|
|
{
|
|
|
|
|
return d->properties.value(property, defaultValue);
|
2014-05-29 00:25:28 +08:00
|
|
|
}
|
2014-07-22 04:25:21 +08:00
|
|
|
|
|
|
|
|
bool Message::hasHeader(const QString &header) const
|
|
|
|
|
{
|
|
|
|
|
return d->headers.contains(header);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
void Message::setHeader(const QString &header, const QVariant &value)
|
|
|
|
|
{
|
|
|
|
|
d->headers.insert(header, value);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
QVariant Message::header(const QString &header, const QVariant &defaultValue) const
|
|
|
|
|
{
|
|
|
|
|
return d->headers.value(header, defaultValue);
|
|
|
|
|
}
|