summaryrefslogtreecommitdiff
path: root/cpp/src/qpid/cluster/Cluster.h
diff options
context:
space:
mode:
Diffstat (limited to 'cpp/src/qpid/cluster/Cluster.h')
-rw-r--r--cpp/src/qpid/cluster/Cluster.h10
1 files changed, 6 insertions, 4 deletions
diff --git a/cpp/src/qpid/cluster/Cluster.h b/cpp/src/qpid/cluster/Cluster.h
index 031baf914a..84b5ed072c 100644
--- a/cpp/src/qpid/cluster/Cluster.h
+++ b/cpp/src/qpid/cluster/Cluster.h
@@ -22,6 +22,7 @@
#include "qpid/cluster/Cpg.h"
#include "qpid/cluster/ShadowConnectionOutputHandler.h"
+#include "qpid/HandlerChain.h"
#include "qpid/broker/Broker.h"
#include "qpid/sys/Monitor.h"
#include "qpid/sys/Runnable.h"
@@ -47,6 +48,8 @@ namespace cluster {
class Cluster : private sys::Runnable, private Cpg::Handler
{
public:
+ typedef PluginHandlerChain<framing::FrameHandler, broker::Connection> ConnectionChain;
+
/** Details of a cluster member */
struct Member {
Member(const Url& url_=Url()) : url(url_) {}
@@ -62,11 +65,11 @@ class Cluster : private sys::Runnable, private Cpg::Handler
*/
Cluster(const std::string& name, const Url& url, broker::Broker&);
+ // Add cluster handlers to broker chains.
+ void initialize(ConnectionChain&);
+
virtual ~Cluster();
- // FIXME aconway 2008-01-29:
- boost::intrusive_ptr<broker::ConnectionManager::Observer> getObserver() { return observer; }
-
/** Get the current cluster membership. */
MemberList getMembers() const;
@@ -124,7 +127,6 @@ class Cluster : private sys::Runnable, private Cpg::Handler
MemberMap members;
sys::Thread dispatcher;
boost::function<void()> callback;
- boost::intrusive_ptr<broker::ConnectionManager::Observer> observer;
Id self;
ShadowConnectionMap shadowConnectionMap;
ShadowConnectionOutputHandler shadowOut;