summaryrefslogtreecommitdiff
path: root/cpp/src/IceGrid/ServerCache.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'cpp/src/IceGrid/ServerCache.cpp')
-rw-r--r--cpp/src/IceGrid/ServerCache.cpp15
1 files changed, 6 insertions, 9 deletions
diff --git a/cpp/src/IceGrid/ServerCache.cpp b/cpp/src/IceGrid/ServerCache.cpp
index bac1b356779..2b75ea67bd8 100644
--- a/cpp/src/IceGrid/ServerCache.cpp
+++ b/cpp/src/IceGrid/ServerCache.cpp
@@ -147,8 +147,9 @@ ServerCache::addCommunicator(const CommunicatorDescriptorPtr& comm, const Server
{
if(!q->id.empty())
{
- _adapterCache.get(q->id, true)->addReplica(getReplicaId(*q, comm, entry->getId()), entry);
+ _adapterCache.getServerAdapter(q->id, true)->set(entry, q->replicaGroupId);
}
+
for(ObjectDescriptorSeq::const_iterator r = q->objects.begin(); r != q->objects.end(); ++r)
{
const string edpts = IceGrid::getProperty(comm->properties, q->name + ".Endpoints");
@@ -164,7 +165,7 @@ ServerCache::removeCommunicator(const CommunicatorDescriptorPtr& comm, const Ser
{
if(!q->id.empty())
{
- _adapterCache.get(q->id)->removeReplica(getReplicaId(*q, comm, entry->getId()));
+ _adapterCache.getServerAdapter(q->id)->destroy();
}
for(ObjectDescriptorSeq::const_iterator r = q->objects.begin(); r != q->objects.end(); ++r)
{
@@ -315,19 +316,15 @@ ServerEntry::getProxy(int& activationTimeout, int& deactivationTimeout, string&
}
AdapterPrx
-ServerEntry::getAdapter(const string& id, const string& replicaId)
+ServerEntry::getAdapter(const string& id)
{
AdapterPrx proxy;
- ReplicatedAdapterIdentity adptId;
- adptId.id = id;
- adptId.replicaId = replicaId;
-
{
Lock sync(*this);
if(_proxy) // Synced
{
- proxy = _adapters[adptId];
+ proxy = _adapters[id];
}
}
@@ -347,7 +344,7 @@ ServerEntry::getAdapter(const string& id, const string& replicaId)
int activationTimeout, deactivationTimeout;
string node;
syncImpl(adapters, activationTimeout, deactivationTimeout, node);
- AdapterPrx adapter = adapters[adptId];
+ AdapterPrx adapter = adapters[id];
if(!adapter)
{
throw AdapterNotExistException();