summaryrefslogtreecommitdiff
path: root/qpid/cpp/src/qpid/broker/amqp/Outgoing.h
diff options
context:
space:
mode:
authorAndrew Stitcher <astitcher@apache.org>2013-03-04 21:08:36 +0000
committerAndrew Stitcher <astitcher@apache.org>2013-03-04 21:08:36 +0000
commit8d952718247e3c96d180181da95d65b3dc7db035 (patch)
tree718d55279c93eb7c4c24e38b436c659c873d0850 /qpid/cpp/src/qpid/broker/amqp/Outgoing.h
parent7ac7cac4d371ff8498a5fd46b74278a6aa395c73 (diff)
downloadqpid-python-8d952718247e3c96d180181da95d65b3dc7db035.tar.gz
QPID-4558: Selectors for C++ broker
- Added in amqp 1.0 support that uses a filter for the selector - This change requires at least qpid-proton 0.4 (or a lot of warning messages are produced by the broker) git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1452524 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'qpid/cpp/src/qpid/broker/amqp/Outgoing.h')
-rw-r--r--qpid/cpp/src/qpid/broker/amqp/Outgoing.h5
1 files changed, 5 insertions, 0 deletions
diff --git a/qpid/cpp/src/qpid/broker/amqp/Outgoing.h b/qpid/cpp/src/qpid/broker/amqp/Outgoing.h
index a8450a48cf..7d845a1427 100644
--- a/qpid/cpp/src/qpid/broker/amqp/Outgoing.h
+++ b/qpid/cpp/src/qpid/broker/amqp/Outgoing.h
@@ -24,7 +24,9 @@
#include "qpid/broker/amqp/Message.h"
#include "qpid/broker/amqp/ManagedOutgoingLink.h"
#include "qpid/broker/Consumer.h"
+
#include <boost/shared_ptr.hpp>
+#include <boost/scoped_ptr.hpp>
#include <boost/enable_shared_from_this.hpp>
extern "C" {
#include <proton/engine.h>
@@ -37,6 +39,7 @@ class OutputControl;
namespace broker {
class Broker;
class Queue;
+class Selector;
namespace amqp {
class ManagedSession;
template <class T>
@@ -61,6 +64,7 @@ class Outgoing : public qpid::broker::Consumer, public boost::enable_shared_from
public:
Outgoing(Broker&,boost::shared_ptr<Queue> q, pn_link_t* l, ManagedSession&, qpid::sys::OutputControl& o, bool topic);
void setSubjectFilter(const std::string&);
+ void setSelectorFilter(const std::string&);
void init();
bool dispatch();
void write(const char* data, size_t size);
@@ -102,6 +106,7 @@ class Outgoing : public qpid::broker::Consumer, public boost::enable_shared_from
int outstanding;
std::vector<char> buffer;
std::string subjectFilter;
+ boost::scoped_ptr<Selector> selector;
};
}}} // namespace qpid::broker::amqp