summaryrefslogtreecommitdiff
path: root/qpid/cpp/broker/src/Message.cpp
diff options
context:
space:
mode:
authorGordon Sim <gsim@apache.org>2006-10-11 08:24:42 +0000
committerGordon Sim <gsim@apache.org>2006-10-11 08:24:42 +0000
commitdeff1e751c9d0c1baec2d0b7a9e5b88d5668a861 (patch)
treeaa158805ed0f59256228e10e23da780a2057fe10 /qpid/cpp/broker/src/Message.cpp
parent2da7f5de1cd0fe638538d11e953bb458852da345 (diff)
downloadqpid-python-deff1e751c9d0c1baec2d0b7a9e5b88d5668a861.tar.gz
Implementation of basic_get.
git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk@462729 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'qpid/cpp/broker/src/Message.cpp')
-rw-r--r--qpid/cpp/broker/src/Message.cpp16
1 files changed, 15 insertions, 1 deletions
diff --git a/qpid/cpp/broker/src/Message.cpp b/qpid/cpp/broker/src/Message.cpp
index a44eeaab59..b0e5d16b77 100644
--- a/qpid/cpp/broker/src/Message.cpp
+++ b/qpid/cpp/broker/src/Message.cpp
@@ -59,10 +59,24 @@ void Message::redeliver(){
}
void Message::deliver(OutputHandler* out, int channel,
- string& consumerTag, u_int64_t deliveryTag,
+ const string& consumerTag, u_int64_t deliveryTag,
u_int32_t framesize){
out->send(new AMQFrame(channel, new BasicDeliverBody(consumerTag, deliveryTag, redelivered, exchange, routingKey)));
+ sendContent(out, channel, framesize);
+}
+
+void Message::sendGetOk(OutputHandler* out,
+ int channel,
+ u_int32_t messageCount,
+ u_int64_t deliveryTag,
+ u_int32_t framesize){
+
+ out->send(new AMQFrame(channel, new BasicGetOkBody(deliveryTag, redelivered, exchange, routingKey, messageCount)));
+ sendContent(out, channel, framesize);
+}
+
+void Message::sendContent(OutputHandler* out, int channel, u_int32_t framesize){
AMQBody::shared_ptr headerBody = static_pointer_cast<AMQBody, AMQHeaderBody>(header);
out->send(new AMQFrame(channel, headerBody));
for(content_iterator i = content.begin(); i != content.end(); i++){