diff options
author | Benoit Foucher <benoit@zeroc.com> | 2005-10-20 06:54:48 +0000 |
---|---|---|
committer | Benoit Foucher <benoit@zeroc.com> | 2005-10-20 06:54:48 +0000 |
commit | f1b9887224219f99c93e3a8a2b562e0840b4924a (patch) | |
tree | ee66f9e2dcac347866c755af4dda423162c187b8 /cpp/src/IceGrid/ServerI.cpp | |
parent | added missing property IceStorm.TopicManager.AdapterId. (diff) | |
download | ice-f1b9887224219f99c93e3a8a2b562e0840b4924a.tar.bz2 ice-f1b9887224219f99c93e3a8a2b562e0840b4924a.tar.xz ice-f1b9887224219f99c93e3a8a2b562e0840b4924a.zip |
Fixed bug 527.
Diffstat (limited to 'cpp/src/IceGrid/ServerI.cpp')
-rw-r--r-- | cpp/src/IceGrid/ServerI.cpp | 15 |
1 files changed, 14 insertions, 1 deletions
diff --git a/cpp/src/IceGrid/ServerI.cpp b/cpp/src/IceGrid/ServerI.cpp index b95bffebd7c..0a2ec24a8fa 100644 --- a/cpp/src/IceGrid/ServerI.cpp +++ b/cpp/src/IceGrid/ServerI.cpp @@ -1114,6 +1114,19 @@ ServerI::updateImpl(const string& app, const ServerDescriptorPtr& descriptor, bo updateDbEnv(_serverDir, *q); knownDbEnvs.push_back(q->name); } + if(iceBox) + { + ServiceInstanceDescriptorSeq::const_iterator s; + for(s = iceBox->services.begin(); s != iceBox->services.end(); ++s) + { + CommunicatorDescriptorPtr svc = s->descriptor; + for(DbEnvDescriptorSeq::const_iterator q = svc->dbEnvs.begin(); q != svc->dbEnvs.end(); ++q) + { + updateDbEnv(_serverDir, *q); + knownDbEnvs.push_back(q->name); + } + } + } // // Remove old database environments. @@ -1153,7 +1166,7 @@ ServerI::updateImpl(const string& app, const ServerDescriptorPtr& descriptor, bo ServiceInstanceDescriptorSeq::const_iterator s; for(s = iceBox->services.begin(); s != iceBox->services.end(); ++s) { - ServiceDescriptorPtr svc = ServiceDescriptorPtr::dynamicCast(s->descriptor); + CommunicatorDescriptorPtr svc = s->descriptor; for(AdapterDescriptorSeq::const_iterator t = svc->adapters.begin(); t != svc->adapters.end(); ++t) { if(!t->id.empty()) |