summaryrefslogtreecommitdiff
path: root/cpp/src/qpid/broker/TopicExchange.h
diff options
context:
space:
mode:
Diffstat (limited to 'cpp/src/qpid/broker/TopicExchange.h')
-rw-r--r--cpp/src/qpid/broker/TopicExchange.h11
1 files changed, 7 insertions, 4 deletions
diff --git a/cpp/src/qpid/broker/TopicExchange.h b/cpp/src/qpid/broker/TopicExchange.h
index e00731af3a..2220e0112b 100644
--- a/cpp/src/qpid/broker/TopicExchange.h
+++ b/cpp/src/qpid/broker/TopicExchange.h
@@ -76,16 +76,19 @@ class TopicExchange : public virtual Exchange{
BindingMap bindings;
qpid::sys::Mutex lock;
+ bool isBound(Queue::shared_ptr queue, TopicPattern& pattern);
public:
static const std::string typeName;
TopicExchange(const string& name);
+ TopicExchange(const string& _name, bool _durable,
+ const qpid::framing::FieldTable& _args);
- virtual std::string getType(){ return typeName; }
-
- virtual void bind(Queue::shared_ptr queue, const string& routingKey, const qpid::framing::FieldTable* args);
+ virtual std::string getType() const { return typeName; }
+
+ virtual bool bind(Queue::shared_ptr queue, const string& routingKey, const qpid::framing::FieldTable* args);
- virtual void unbind(Queue::shared_ptr queue, const string& routingKey, const qpid::framing::FieldTable* args);
+ virtual bool unbind(Queue::shared_ptr queue, const string& routingKey, const qpid::framing::FieldTable* args);
virtual void route(Deliverable& msg, const string& routingKey, const qpid::framing::FieldTable* args);