diff options
author | Gordon Sim <gsim@apache.org> | 2009-01-22 22:53:50 +0000 |
---|---|---|
committer | Gordon Sim <gsim@apache.org> | 2009-01-22 22:53:50 +0000 |
commit | d7ce27f7cc96894f149e5c20c03b306b80636727 (patch) | |
tree | 22caa566993da19f9e211f69fdca64c13f1f04e6 /cpp/src/qpid/cluster/ClusterMap.h | |
parent | 74481dd2b6b97374bd4f260ca89d9103ce6383ed (diff) | |
download | qpid-python-d7ce27f7cc96894f149e5c20c03b306b80636727.tar.gz |
QPID-1567: More changes to make clustering and federation work together
* replicate outgoing link traffic to all nodes
* coordinate amongst nodes so that only one node actually maintains active links
with the others able to take over if that node fails
git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@736841 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'cpp/src/qpid/cluster/ClusterMap.h')
-rw-r--r-- | cpp/src/qpid/cluster/ClusterMap.h | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/cpp/src/qpid/cluster/ClusterMap.h b/cpp/src/qpid/cluster/ClusterMap.h index 5c1981269f..507fee9a72 100644 --- a/cpp/src/qpid/cluster/ClusterMap.h +++ b/cpp/src/qpid/cluster/ClusterMap.h @@ -76,6 +76,7 @@ class ClusterMap { size_t aliveCount() const { return alive.size(); } size_t memberCount() const { return members.size(); } std::vector<Url> memberUrls() const; + Set getAlive() const; bool dumpRequest(const MemberId& id, const std::string& url); /** Return non-empty Url if accepted */ @@ -84,6 +85,10 @@ class ClusterMap { /**@return true If this is a new member */ bool ready(const MemberId& id, const Url&); + /** + * Utility method to return intersection of two member sets + */ + static Set intersection(const Set& a, const Set& b); private: Url getUrl(const Map& map, const MemberId& id); |