diff options
Diffstat (limited to 'cpp/src/qpid/broker/QueuedMessage.h')
| -rw-r--r-- | cpp/src/qpid/broker/QueuedMessage.h | 21 |
1 files changed, 13 insertions, 8 deletions
diff --git a/cpp/src/qpid/broker/QueuedMessage.h b/cpp/src/qpid/broker/QueuedMessage.h index 35e48b11f3..806da8e720 100644 --- a/cpp/src/qpid/broker/QueuedMessage.h +++ b/cpp/src/qpid/broker/QueuedMessage.h @@ -7,9 +7,9 @@ * to you under the Apache License, Version 2.0 (the * "License"); you may not use this file except in compliance * with the License. You may obtain a copy of the License at - * + * * http://www.apache.org/licenses/LICENSE-2.0 - * + * * Unless required by applicable law or agreed to in writing, * software distributed under the License is distributed on an * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY @@ -32,15 +32,20 @@ struct QueuedMessage { boost::intrusive_ptr<Message> payload; framing::SequenceNumber position; + typedef enum { AVAILABLE, ACQUIRED, DELETED, REMOVED } Status; + Status status; Queue* queue; - QueuedMessage() : queue(0) {} - QueuedMessage(Queue* q, boost::intrusive_ptr<Message> msg, framing::SequenceNumber sn) : - payload(msg), position(sn), queue(q) {} - QueuedMessage(Queue* q) : queue(q) {} - + QueuedMessage(Queue* q=0, + boost::intrusive_ptr<Message> msg=0, + framing::SequenceNumber sn=0, + Status st=AVAILABLE + ) : payload(msg), position(sn), status(st), queue(q) {} }; - inline bool operator<(const QueuedMessage& a, const QueuedMessage& b) { return a.position < b.position; } + +inline bool operator<(const QueuedMessage& a, const QueuedMessage& b) { + return a.position < b.position; +} }} |
