diff options
author | Bernard Normier <bernard@zeroc.com> | 2014-09-08 12:03:16 -0400 |
---|---|---|
committer | Bernard Normier <bernard@zeroc.com> | 2014-09-08 12:03:16 -0400 |
commit | a0f6b6fc1a619c40979f5ba00d71dc661cfc6499 (patch) | |
tree | 81b40da86417ed18a186d595c119bb7823b17fcf /cpp/src/IceBox/ServiceManagerI.cpp | |
parent | ICE-5658 - NPM support for IceJS distribution (diff) | |
download | ice-a0f6b6fc1a619c40979f5ba00d71dc661cfc6499.tar.bz2 ice-a0f6b6fc1a619c40979f5ba00d71dc661cfc6499.tar.xz ice-a0f6b6fc1a619c40979f5ba00d71dc661cfc6499.zip |
Fixed ICE-5667: Added Communicator::createAdmin in C++, Java, C# and Python
Diffstat (limited to 'cpp/src/IceBox/ServiceManagerI.cpp')
-rw-r--r-- | cpp/src/IceBox/ServiceManagerI.cpp | 20 |
1 files changed, 13 insertions, 7 deletions
diff --git a/cpp/src/IceBox/ServiceManagerI.cpp b/cpp/src/IceBox/ServiceManagerI.cpp index 433985d971a..bffc34ae55a 100644 --- a/cpp/src/IceBox/ServiceManagerI.cpp +++ b/cpp/src/IceBox/ServiceManagerI.cpp @@ -618,12 +618,18 @@ IceBox::ServiceManagerI::start(const string& service, const string& entryPoint, // // If the Logger is enabled on the IceBox communicator, we tell the service // to create a LoggerAdmin's Logger, by setting the property Ice.Admin.Logger - // + // to a non-default value + + string loggerFacetName; + if(_communicator->findAdminFacet("Logger") != 0) { - if(initData.properties->getPropertyWithDefault("Ice.Admin.Logger", "Logger") == "Logger") + loggerFacetName = initData.properties->getPropertyWithDefault("Ice.Admin.Logger", "Logger"); + + if(loggerFacetName == "Logger") { - initData.properties->setProperty("Ice.Admin.Logger", string("IceBox.Service.") + service + ".Logger"); + loggerFacetName = "IceBox.Service." + service + ".Logger"; + initData.properties->setProperty("Ice.Admin.Logger", loggerFacetName); } } @@ -634,17 +640,17 @@ IceBox::ServiceManagerI::start(const string& service, const string& entryPoint, info.communicator = initialize(info.args, initData); communicator = info.communicator; - if(_communicator->findAdminFacet("Logger") != 0) + if(_communicator->findAdminFacet("Logger")) { Ice::LoggerAdminLoggerPtr logger = Ice::LoggerAdminLoggerPtr::dynamicCast(communicator->getLogger()); - assert(logger != 0); // a plugin reset Ice.Admin.Logger to its default?? - if(logger != 0) + assert(logger); // a plugin reset Ice.Admin.Logger to its default?? + if(logger) { // // We add this admin facet to the IceBox main communicator, even though the associated logger // "works" for the service's communicator // - logger->addAdminFacet(_communicator); + _communicator->addAdminFacet(logger->getFacet(), loggerFacetName); } } |