diff options
author | Alan Conway <aconway@apache.org> | 2007-11-22 23:55:39 +0000 |
---|---|---|
committer | Alan Conway <aconway@apache.org> | 2007-11-22 23:55:39 +0000 |
commit | cb070d9813e4232b4ec8409ca555b529ee5cee4b (patch) | |
tree | 7f8ed15de2c4f933db59b79b52222c70f2a2a240 /cpp/src/tests/MessageBuilderTest.cpp | |
parent | 4d16c847bd0868ac8ff3039ce22fcdae28606aeb (diff) | |
download | qpid-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/tests/MessageBuilderTest.cpp')
-rw-r--r-- | cpp/src/tests/MessageBuilderTest.cpp | 29 |
1 files changed, 16 insertions, 13 deletions
diff --git a/cpp/src/tests/MessageBuilderTest.cpp b/cpp/src/tests/MessageBuilderTest.cpp index 8598f45d80..023aefc3fa 100644 --- a/cpp/src/tests/MessageBuilderTest.cpp +++ b/cpp/src/tests/MessageBuilderTest.cpp @@ -100,8 +100,9 @@ class MessageBuilderTest : public CppUnit::TestCase std::string exchange("builder-exchange"); std::string key("builder-exchange"); - AMQFrame method(0, MessageTransferBody(ProtocolVersion(), 0, exchange, 0, 0)); - AMQFrame header(0, AMQHeaderBody()); + AMQFrame method(in_place<MessageTransferBody>( + ProtocolVersion(), 0, exchange, 0, 0)); + AMQFrame header(in_place<AMQHeaderBody>()); header.castBody<AMQHeaderBody>()->get<MessageProperties>(true)->setContentLength(0); header.castBody<AMQHeaderBody>()->get<DeliveryProperties>(true)->setRoutingKey(key); @@ -123,9 +124,9 @@ class MessageBuilderTest : public CppUnit::TestCase std::string exchange("builder-exchange"); std::string key("builder-exchange"); - AMQFrame method(0, MessageTransferBody(ProtocolVersion(), 0, exchange, 0, 0)); - AMQFrame header(0, AMQHeaderBody()); - AMQFrame content(0, AMQContentBody(data)); + AMQFrame method(in_place<MessageTransferBody>(ProtocolVersion(), 0, exchange, 0, 0)); + AMQFrame header(in_place<AMQHeaderBody>()); + AMQFrame content(in_place<AMQContentBody>(data)); method.setEof(false); header.setBof(false); header.setEof(false); @@ -156,10 +157,11 @@ class MessageBuilderTest : public CppUnit::TestCase std::string exchange("builder-exchange"); std::string key("builder-exchange"); - AMQFrame method(0, MessageTransferBody(ProtocolVersion(), 0, exchange, 0, 0)); - AMQFrame header(0, AMQHeaderBody()); - AMQFrame content1(0, AMQContentBody(data1)); - AMQFrame content2(0, AMQContentBody(data2)); + AMQFrame method(in_place<MessageTransferBody>( + ProtocolVersion(), 0, exchange, 0, 0)); + AMQFrame header(in_place<AMQHeaderBody>()); + AMQFrame content1(in_place<AMQContentBody>(data1)); + AMQFrame content2(in_place<AMQContentBody>(data2)); method.setEof(false); header.setBof(false); header.setEof(false); @@ -191,10 +193,11 @@ class MessageBuilderTest : public CppUnit::TestCase std::string exchange("builder-exchange"); std::string key("builder-exchange"); - AMQFrame method(0, MessageTransferBody(ProtocolVersion(), 0, exchange, 0, 0)); - AMQFrame header(0, AMQHeaderBody()); - AMQFrame content1(0, AMQContentBody(data1)); - AMQFrame content2(0, AMQContentBody(data2)); + AMQFrame method(in_place<MessageTransferBody>( + ProtocolVersion(), 0, exchange, 0, 0)); + AMQFrame header(in_place<AMQHeaderBody>()); + AMQFrame content1(in_place<AMQContentBody>(data1)); + AMQFrame content2(in_place<AMQContentBody>(data2)); header.castBody<AMQHeaderBody>()->get<MessageProperties>(true)->setContentLength(data1.size() + data2.size()); header.castBody<AMQHeaderBody>()->get<DeliveryProperties>(true)->setRoutingKey(key); |