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.cpp126
1 files changed, 66 insertions, 60 deletions
diff --git a/cpp/src/IceGrid/ServerCache.cpp b/cpp/src/IceGrid/ServerCache.cpp
index 14030eea69b..fefd0ed7ebe 100644
--- a/cpp/src/IceGrid/ServerCache.cpp
+++ b/cpp/src/IceGrid/ServerCache.cpp
@@ -833,41 +833,44 @@ ServerEntry::allocated(const SessionIPtr& session)
_load->sessionId = session->getId();
}
- Glacier2::SessionControlPrx ctl = session->getSessionControl();
- if(ctl)
+ if(session->useFilters())
{
- ServerHelperPtr helper = createHelper(desc);
- multiset<string> adapterIds;
- multiset<Ice::Identity> identities;
- helper->getIds(adapterIds, identities);
- try
+ Glacier2::SessionControlPrx ctl = session->getSessionControl();
+ if(ctl)
{
- //
- // SunCC won't accept the following:
- //
- // ctl->adapterIds()->add(Ice::StringSeq(adapterIds.begin(), adapterIds.end()));
- // ctl->identities()->add(Ice::IdentitySeq(identities.begin(), identities.end()));
- //
- Ice::StringSeq adapterIdSeq;
- for(multiset<string>::iterator p = adapterIds.begin(); p != adapterIds.end(); ++p)
+ ServerHelperPtr helper = createHelper(desc);
+ multiset<string> adapterIds;
+ multiset<Ice::Identity> identities;
+ helper->getIds(adapterIds, identities);
+ try
{
- adapterIdSeq.push_back(*p);
- }
- Ice::IdentitySeq identitySeq;
- for(multiset<Ice::Identity>::iterator q = identities.begin(); q != identities.end(); ++q)
- {
- identitySeq.push_back(*q);
+ //
+ // SunCC won't accept the following:
+ //
+ // ctl->adapterIds()->add(Ice::StringSeq(adapterIds.begin(), adapterIds.end()));
+ // ctl->identities()->add(Ice::IdentitySeq(identities.begin(), identities.end()));
+ //
+ Ice::StringSeq adapterIdSeq;
+ for(multiset<string>::iterator p = adapterIds.begin(); p != adapterIds.end(); ++p)
+ {
+ adapterIdSeq.push_back(*p);
+ }
+ Ice::IdentitySeq identitySeq;
+ for(multiset<Ice::Identity>::iterator q = identities.begin(); q != identities.end(); ++q)
+ {
+ identitySeq.push_back(*q);
+ }
+ ctl->adapterIds()->add(adapterIdSeq);
+ ctl->identities()->add(identitySeq);
}
- ctl->adapterIds()->add(adapterIdSeq);
- ctl->identities()->add(identitySeq);
- }
- catch(const Ice::LocalException& ex)
- {
- if(traceLevels && traceLevels->server > 0)
+ catch(const Ice::LocalException& ex)
{
- Ice::Trace out(traceLevels->logger, traceLevels->serverCat);
- out << "couldn't add Glacier2 filters for server `" << _id << "' allocated by `" << session->getId();
- out << ":\n" << ex;
+ if(traceLevels && traceLevels->server > 0)
+ {
+ Ice::Trace out(traceLevels->logger, traceLevels->serverCat);
+ out << "couldn't add Glacier2 filters for server `" << _id << "' allocated by `"
+ << session->getId() << ":\n" << ex;
+ }
}
}
}
@@ -920,41 +923,44 @@ ServerEntry::released(const SessionIPtr& session)
TraceLevelsPtr traceLevels = _cache.getTraceLevels();
- Glacier2::SessionControlPrx ctl = session->getSessionControl();
- if(ctl)
+ if(session->useFilters())
{
- ServerHelperPtr helper = createHelper(desc);
- multiset<string> adapterIds;
- multiset<Ice::Identity> identities;
- helper->getIds(adapterIds, identities);
- try
+ Glacier2::SessionControlPrx ctl = session->getSessionControl();
+ if(ctl)
{
- //
- // SunCC won't accept the following:
- //
- // ctl->adapterIds()->remove(Ice::StringSeq(adapterIds.begin(), adapterIds.end()));
- // ctl->identities()->remove(Ice::IdentitySeq(identities.begin(), identities.end()));
- //
- Ice::StringSeq adapterIdSeq;
- for(multiset<string>::iterator p = adapterIds.begin(); p != adapterIds.end(); ++p)
+ ServerHelperPtr helper = createHelper(desc);
+ multiset<string> adapterIds;
+ multiset<Ice::Identity> identities;
+ helper->getIds(adapterIds, identities);
+ try
{
- adapterIdSeq.push_back(*p);
- }
- Ice::IdentitySeq identitySeq;
- for(multiset<Ice::Identity>::iterator q = identities.begin(); q != identities.end(); ++q)
- {
- identitySeq.push_back(*q);
+ //
+ // SunCC won't accept the following:
+ //
+ // ctl->adapterIds()->remove(Ice::StringSeq(adapterIds.begin(), adapterIds.end()));
+ // ctl->identities()->remove(Ice::IdentitySeq(identities.begin(), identities.end()));
+ //
+ Ice::StringSeq adapterIdSeq;
+ for(multiset<string>::iterator p = adapterIds.begin(); p != adapterIds.end(); ++p)
+ {
+ adapterIdSeq.push_back(*p);
+ }
+ Ice::IdentitySeq identitySeq;
+ for(multiset<Ice::Identity>::iterator q = identities.begin(); q != identities.end(); ++q)
+ {
+ identitySeq.push_back(*q);
+ }
+ ctl->adapterIds()->remove(adapterIdSeq);
+ ctl->identities()->remove(identitySeq);
}
- ctl->adapterIds()->remove(adapterIdSeq);
- ctl->identities()->remove(identitySeq);
- }
- catch(const Ice::LocalException& ex)
- {
- if(traceLevels && traceLevels->server > 0)
+ catch(const Ice::LocalException& ex)
{
- Ice::Trace out(traceLevels->logger, traceLevels->serverCat);
- out << "couldn't remove Glacier2 filters for server `" << _id << "' allocated by `";
- out << session->getId() << ":\n" << ex;
+ if(traceLevels && traceLevels->server > 0)
+ {
+ Ice::Trace out(traceLevels->logger, traceLevels->serverCat);
+ out << "couldn't remove Glacier2 filters for server `" << _id << "' allocated by `";
+ out << session->getId() << ":\n" << ex;
+ }
}
}
}