summaryrefslogtreecommitdiff
path: root/cpp/src/IceGrid/NodeCache.cpp
diff options
context:
space:
mode:
authorBenoit Foucher <benoit@zeroc.com>2006-01-10 09:24:12 +0000
committerBenoit Foucher <benoit@zeroc.com>2006-01-10 09:24:12 +0000
commitc4bf4bc99155df8414f63daa138879d8ccacb0f2 (patch)
tree6d48fd077ff8d56095bd11db2d9c2157ce93a0ac /cpp/src/IceGrid/NodeCache.cpp
parentfile OpenSSLRuntime.ism was initially added on branch R3_0_branch. (diff)
downloadice-c4bf4bc99155df8414f63daa138879d8ccacb0f2.tar.bz2
ice-c4bf4bc99155df8414f63daa138879d8ccacb0f2.tar.xz
ice-c4bf4bc99155df8414f63daa138879d8ccacb0f2.zip
Added "always" activation mode.
Diffstat (limited to 'cpp/src/IceGrid/NodeCache.cpp')
-rw-r--r--cpp/src/IceGrid/NodeCache.cpp9
1 files changed, 9 insertions, 0 deletions
diff --git a/cpp/src/IceGrid/NodeCache.cpp b/cpp/src/IceGrid/NodeCache.cpp
index 584efdc9e19..c3022bf0c9a 100644
--- a/cpp/src/IceGrid/NodeCache.cpp
+++ b/cpp/src/IceGrid/NodeCache.cpp
@@ -159,6 +159,15 @@ NodeCache::NodeCache(int sessionTimeout) : _sessionTimeout(sessionTimeout)
{
}
+void
+NodeCache::destroy()
+{
+ for(map<string, NodeEntryPtr>::const_iterator p = _entries.begin(); p != _entries.end(); ++p)
+ {
+ p->second->setSession(0); // Break cyclic reference count.
+ }
+}
+
NodeEntryPtr
NodeCache::get(const string& name, bool create) const
{