summaryrefslogtreecommitdiff
path: root/cpp/src/IceGrid/RegistryI.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'cpp/src/IceGrid/RegistryI.cpp')
-rw-r--r--cpp/src/IceGrid/RegistryI.cpp20
1 files changed, 16 insertions, 4 deletions
diff --git a/cpp/src/IceGrid/RegistryI.cpp b/cpp/src/IceGrid/RegistryI.cpp
index 6bfd2bad9c6..f4790311f6b 100644
--- a/cpp/src/IceGrid/RegistryI.cpp
+++ b/cpp/src/IceGrid/RegistryI.cpp
@@ -671,7 +671,10 @@ RegistryI::createSession(const string& user, const string& password, const Curre
SessionIPtr session = _clientSessionFactory->createSessionServant(user, 0);
session->setServantLocator(_sessionServantLocator);
SessionPrx proxy = SessionPrx::uncheckedCast(_sessionServantLocator->add(session, current.con));
- _reaper->add(new SessionReapable(current.adapter, session, proxy->ice_getIdentity()), _sessionTimeout);
+ if(_sessionTimeout > 0)
+ {
+ _reaper->add(new SessionReapable(current.adapter, session, proxy->ice_getIdentity()), _sessionTimeout);
+ }
return proxy;
}
@@ -724,7 +727,10 @@ RegistryI::createAdminSession(const string& user, const string& password, const
session->setAdmin(AdminPrx::uncheckedCast(admin));
session->setServantLocator(_sessionServantLocator);
AdminSessionPrx proxy = AdminSessionPrx::uncheckedCast(_sessionServantLocator->add(session, current.con));
- _reaper->add(new SessionReapable(current.adapter, session, proxy->ice_getIdentity()), _sessionTimeout);
+ if(_sessionTimeout > 0)
+ {
+ _reaper->add(new SessionReapable(current.adapter, session, proxy->ice_getIdentity()), _sessionTimeout);
+ }
return proxy;
}
@@ -784,7 +790,10 @@ RegistryI::createSessionFromSecureConnection(const Current& current)
SessionIPtr session = _clientSessionFactory->createSessionServant(userDN, 0);
session->setServantLocator(_sessionServantLocator);
SessionPrx proxy = SessionPrx::uncheckedCast(_sessionServantLocator->add(session, current.con));
- _reaper->add(new SessionReapable(current.adapter, session, proxy->ice_getIdentity()), _sessionTimeout);
+ if(_sessionTimeout > 0)
+ {
+ _reaper->add(new SessionReapable(current.adapter, session, proxy->ice_getIdentity()), _sessionTimeout);
+ }
return proxy;
}
@@ -835,7 +844,10 @@ RegistryI::createAdminSessionFromSecureConnection(const Current& current)
session->setAdmin(AdminPrx::uncheckedCast(admin));
session->setServantLocator(_sessionServantLocator);
AdminSessionPrx proxy = AdminSessionPrx::uncheckedCast(_sessionServantLocator->add(session, current.con));
- _reaper->add(new SessionReapable(current.adapter, session, proxy->ice_getIdentity()), _sessionTimeout);
+ if(_sessionTimeout > 0)
+ {
+ _reaper->add(new SessionReapable(current.adapter, session, proxy->ice_getIdentity()), _sessionTimeout);
+ }
return proxy;
}