summaryrefslogtreecommitdiff
path: root/cpp/src/qpid/messaging/MessageImpl.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'cpp/src/qpid/messaging/MessageImpl.cpp')
-rw-r--r--cpp/src/qpid/messaging/MessageImpl.cpp13
1 files changed, 13 insertions, 0 deletions
diff --git a/cpp/src/qpid/messaging/MessageImpl.cpp b/cpp/src/qpid/messaging/MessageImpl.cpp
index 402a93e753..5df9218e03 100644
--- a/cpp/src/qpid/messaging/MessageImpl.cpp
+++ b/cpp/src/qpid/messaging/MessageImpl.cpp
@@ -126,6 +126,15 @@ void MessageImpl::encode(Codec& codec)
}
}
+void MessageImpl::getEncodedContent(Codec& codec, std::string& out) const
+{
+ if (content.getType() != VAR_VOID) {
+ codec.encode(content, out);
+ } else {
+ out = bytes;
+ }
+}
+
void MessageImpl::decode(Codec& codec)
{
codec.decode(bytes, content);
@@ -188,5 +197,9 @@ MessageImpl& MessageImplAccess::get(Message& msg)
{
return *msg.impl;
}
+const MessageImpl& MessageImplAccess::get(const Message& msg)
+{
+ return *msg.impl;
+}
}} // namespace qpid::messaging