summaryrefslogtreecommitdiff
path: root/cpp/src/qpid/management
diff options
context:
space:
mode:
authorAlan Conway <aconway@apache.org>2007-11-22 23:55:39 +0000
committerAlan Conway <aconway@apache.org>2007-11-22 23:55:39 +0000
commitcb070d9813e4232b4ec8409ca555b529ee5cee4b (patch)
tree7f8ed15de2c4f933db59b79b52222c70f2a2a240 /cpp/src/qpid/management
parent4d16c847bd0868ac8ff3039ce22fcdae28606aeb (diff)
downloadqpid-python-cb070d9813e4232b4ec8409ca555b529ee5cee4b.tar.gz
Added framing::BodyHolder:
- Uniform holder for all body types, replaces MethodHolder. - Uses in_place constructors to avoid avoid body copy. framing::AMQFrame: - Holds body in heap-allocated intrusive_ptr<BodyHolder> - Uses in_place constructors to avoid avoid body copy. Removed/downgraded to TODO many redundant FIXME comments. git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@597513 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'cpp/src/qpid/management')
-rw-r--r--cpp/src/qpid/management/ManagementAgent.cpp9
1 files changed, 4 insertions, 5 deletions
diff --git a/cpp/src/qpid/management/ManagementAgent.cpp b/cpp/src/qpid/management/ManagementAgent.cpp
index 6636c59bf5..7aad7e7ce1 100644
--- a/cpp/src/qpid/management/ManagementAgent.cpp
+++ b/cpp/src/qpid/management/ManagementAgent.cpp
@@ -98,15 +98,14 @@ void ManagementAgent::SendBuffer (Buffer& buf,
string routingKey)
{
intrusive_ptr<Message> msg (new Message ());
- AMQFrame method (0, MessageTransferBody(ProtocolVersion(),
- 0, exchange->getName (), 0, 0));
- AMQFrame header (0, AMQHeaderBody());
- AMQFrame content;
+ AMQFrame method (in_place<MessageTransferBody>(
+ ProtocolVersion(), 0, exchange->getName (), 0, 0));
+ AMQFrame header (in_place<AMQHeaderBody>());
+ AMQFrame content(in_place<AMQContentBody>());
QPID_LOG (debug, "ManagementAgent::SendBuffer - key="
<< routingKey << " len=" << length);
- content.setBody(AMQContentBody());
content.castBody<AMQContentBody>()->decode(buf, length);
method.setEof (false);