diff options
Diffstat (limited to 'cpp/src/IceGrid/ReplicaCache.cpp')
-rw-r--r-- | cpp/src/IceGrid/ReplicaCache.cpp | 13 |
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 { |