qamqp/src/amqp_message.cpp

94 lines
1.6 KiB
C++
Raw Normal View History

#include "amqp_message.h"
#include "amqp_message_p.h"
using namespace QAMQP;
MessagePrivate::MessagePrivate()
: deliveryTag(0),
leftSize(0)
{
}
//////////////////////////////////////////////////////////////////////////
Message::Message()
: d(new MessagePrivate)
{
}
Message::Message(const Message &other)
: d(other.d)
{
}
Message::~Message()
{
}
Message &Message::operator=(const Message &other)
{
d = other.d;
return *this;
}
bool Message::isValid() const
{
return d->deliveryTag != 0 &&
!d->exchangeName.isNull() &&
!d->routingKey.isNull();
}
qlonglong Message::deliveryTag() const
{
return d->deliveryTag;
}
bool Message::isRedelivered() const
{
return d->redelivered;
}
QString Message::exchangeName() const
{
return d->exchangeName;
}
QString Message::routingKey() const
{
return d->routingKey;
}
QByteArray Message::payload() const
{
return d->payload;
}
bool Message::hasProperty(Property property) const
{
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);
}
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);
}