summaryrefslogtreecommitdiff
path: root/cpp/src/IceGrid/ReplicaCache.cpp
diff options
context:
space:
mode:
authorBenoit Foucher <benoit@zeroc.com>2006-07-25 17:25:58 +0000
committerBenoit Foucher <benoit@zeroc.com>2006-07-25 17:25:58 +0000
commit95779a66eb32286140dec13a1641f5723d322168 (patch)
treedd86f141a0460bfa7746bc563cde037eedd7cd84 /cpp/src/IceGrid/ReplicaCache.cpp
parenthttp://bugzilla.zeroc.com/bugzilla/show_bug.cgi?id=1189 (diff)
downloadice-95779a66eb32286140dec13a1641f5723d322168.tar.bz2
ice-95779a66eb32286140dec13a1641f5723d322168.tar.xz
ice-95779a66eb32286140dec13a1641f5723d322168.zip
More replication work.
Diffstat (limited to 'cpp/src/IceGrid/ReplicaCache.cpp')
-rw-r--r--cpp/src/IceGrid/ReplicaCache.cpp13
1 files changed, 13 insertions, 0 deletions
diff --git a/cpp/src/IceGrid/ReplicaCache.cpp b/cpp/src/IceGrid/ReplicaCache.cpp
index 91c5652ae11..248bdd1b6c4 100644
--- a/cpp/src/IceGrid/ReplicaCache.cpp
+++ b/cpp/src/IceGrid/ReplicaCache.cpp
@@ -164,6 +164,19 @@ ReplicaCache::nodeRemoved(const NodePrx& node)
}
}
+InternalRegistryPrxSeq
+ReplicaCache::getAll() const
+{
+ Lock sync(*this);
+ InternalRegistryPrxSeq replicas;
+ replicas.reserve(_entries.size());
+ for(map<string, ReplicaEntryPtr>::const_iterator p = _entries.begin(); p != _entries.end(); ++p)
+ {
+ replicas.push_back(p->second->getSession()->getProxy());
+ }
+ return replicas;
+}
+
Ice::ObjectPrx
ReplicaCache::getClientProxy() const
{