summaryrefslogtreecommitdiff
path: root/qpid/cpp/src/qpid/broker/amqp_0_10/MessageTransfer.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'qpid/cpp/src/qpid/broker/amqp_0_10/MessageTransfer.cpp')
-rw-r--r--qpid/cpp/src/qpid/broker/amqp_0_10/MessageTransfer.cpp9
1 files changed, 7 insertions, 2 deletions
diff --git a/qpid/cpp/src/qpid/broker/amqp_0_10/MessageTransfer.cpp b/qpid/cpp/src/qpid/broker/amqp_0_10/MessageTransfer.cpp
index e3a967796b..8055b3fe1a 100644
--- a/qpid/cpp/src/qpid/broker/amqp_0_10/MessageTransfer.cpp
+++ b/qpid/cpp/src/qpid/broker/amqp_0_10/MessageTransfer.cpp
@@ -52,6 +52,11 @@ uint64_t MessageTransfer::getContentSize() const
return frames.getContentSize();
}
+uint64_t MessageTransfer::getMessageSize() const
+{
+ return getRequiredCredit();
+}
+
std::string MessageTransfer::getAnnotationAsString(const std::string& key) const
{
const qpid::framing::MessageProperties* mp = getProperties<qpid::framing::MessageProperties>();
@@ -180,7 +185,7 @@ class SendHeader
copy.castBody<AMQHeaderBody>()->get<MessageProperties>(true);
for (qpid::types::Variant::Map::const_iterator i = annotations.begin();
i != annotations.end(); ++i) {
- props->getApplicationHeaders().setString(i->first, i->second.asString());
+ props->getApplicationHeaders().set(i->first, qpid::amqp_0_10::translate(i->second));
}
}
if (redelivered || ttl || timestamp) {
@@ -397,7 +402,7 @@ boost::intrusive_ptr<PersistableMessage> MessageTransfer::merge(const std::map<s
boost::intrusive_ptr<MessageTransfer> clone(new MessageTransfer(this->frames));
qpid::framing::MessageProperties* mp = clone->frames.getHeaders()->get<qpid::framing::MessageProperties>(true);
for (qpid::types::Variant::Map::const_iterator i = annotations.begin(); i != annotations.end(); ++i) {
- mp->getApplicationHeaders().setString(i->first, i->second);
+ mp->getApplicationHeaders().set(i->first, qpid::amqp_0_10::translate(i->second));
}
return clone;
}