diff options
author | Benoit Foucher <benoit@zeroc.com> | 2005-06-14 08:10:49 +0000 |
---|---|---|
committer | Benoit Foucher <benoit@zeroc.com> | 2005-06-14 08:10:49 +0000 |
commit | d5e2d2bc732ca46ac26bc8c3aefdf9c4755e44be (patch) | |
tree | 9422b67834be0be1672f50325b11e1a80e298c76 /cpp/src/IceGrid/Database.cpp | |
parent | fix for bug 257: removing finalizer in SslConnector (diff) | |
download | ice-d5e2d2bc732ca46ac26bc8c3aefdf9c4755e44be.tar.bz2 ice-d5e2d2bc732ca46ac26bc8c3aefdf9c4755e44be.tar.xz ice-d5e2d2bc732ca46ac26bc8c3aefdf9c4755e44be.zip |
Fixed bug in application update code.
Diffstat (limited to 'cpp/src/IceGrid/Database.cpp')
-rw-r--r-- | cpp/src/IceGrid/Database.cpp | 13 |
1 files changed, 10 insertions, 3 deletions
diff --git a/cpp/src/IceGrid/Database.cpp b/cpp/src/IceGrid/Database.cpp index 30d7e7be165..f33e788bdc0 100644 --- a/cpp/src/IceGrid/Database.cpp +++ b/cpp/src/IceGrid/Database.cpp @@ -243,6 +243,10 @@ Database::addApplicationDescriptor(const ApplicationDescriptorPtr& descriptor) throw ex; } + ApplicationDescriptorHelper helper(_communicator, descriptor); + helper.instantiate(); + descriptor = helper.getDescriptor(); + // // Ensure that the application servers, adapters and objects // aren't already registered. @@ -369,12 +373,15 @@ Database::syncApplicationDescriptor(const ApplicationDescriptorPtr& newDesc) ex.name = newDesc->name; throw ex; } - ApplicationDescriptorPtr origDesc = p->second; + ApplicationDescriptorHelper helper(_communicator, newDesc); + helper.instantiate(); + + // // Synchronize the application descriptor. // - syncApplicationDescriptorNoSync(origDesc, newDesc, entries); + syncApplicationDescriptorNoSync(p->second, helper.getDescriptor(), entries); } // @@ -440,7 +447,7 @@ Database::syncApplicationDescriptorNoSync(const ApplicationDescriptorPtr& origDe DeploymentException ex; ex.reason = "adapter `" + e.id + "' is already registered"; throw ex; - } + } // // Ensure that the new application objects aren't already |