summaryrefslogtreecommitdiff
path: root/cpp/lib/broker/BrokerChannel.cpp
diff options
context:
space:
mode:
authorAndrew Stitcher <astitcher@apache.org>2007-02-09 02:16:03 +0000
committerAndrew Stitcher <astitcher@apache.org>2007-02-09 02:16:03 +0000
commit8cf4a0b8ebaa6075a1f083a294b1fee90bd4d196 (patch)
tree77670233364cef083ef40b9878297a64c16a160b /cpp/lib/broker/BrokerChannel.cpp
parentf197f0c88e1f5ed37a14617b1006f6579c4319e7 (diff)
downloadqpid-python-8cf4a0b8ebaa6075a1f083a294b1fee90bd4d196.tar.gz
r1104@fuschia: andrew | 2007-02-09 02:14:00 +0000
Initial implementation of Message.get delivery git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/branches/qpid.0-9@505139 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'cpp/lib/broker/BrokerChannel.cpp')
-rw-r--r--cpp/lib/broker/BrokerChannel.cpp7
1 files changed, 3 insertions, 4 deletions
diff --git a/cpp/lib/broker/BrokerChannel.cpp b/cpp/lib/broker/BrokerChannel.cpp
index e0c5eebbec..cae48273ff 100644
--- a/cpp/lib/broker/BrokerChannel.cpp
+++ b/cpp/lib/broker/BrokerChannel.cpp
@@ -204,8 +204,6 @@ void Channel::handleInlineTransfer(Message::shared_ptr msg)
}
}
-// FIXME aconway 2007-02-05: Drop exchange member, calculate from
-// message in ::complete().
void Channel::handlePublish(Message* _message){
Message::shared_ptr message(_message);
messageBuilder.initialise(message);
@@ -292,12 +290,13 @@ void Channel::recover(bool requeue){
}
}
-bool Channel::get(Queue::shared_ptr queue, bool ackExpected){
+bool Channel::get(Queue::shared_ptr queue, const string& destination, bool ackExpected){
Message::shared_ptr msg = queue->dequeue();
if(msg){
Mutex::ScopedLock locker(deliveryLock);
- u_int64_t myDeliveryTag = currentDeliveryTag++;
+ u_int64_t myDeliveryTag = getNextSendRequestId();
msg->sendGetOk(MethodContext(this, msg->getRespondTo()),
+ destination,
queue->getMessageCount() + 1, myDeliveryTag,
framesize);
if(ackExpected){