summaryrefslogtreecommitdiff
path: root/cpp/src/IceGrid/NodeI.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'cpp/src/IceGrid/NodeI.cpp')
-rw-r--r--cpp/src/IceGrid/NodeI.cpp7
1 files changed, 5 insertions, 2 deletions
diff --git a/cpp/src/IceGrid/NodeI.cpp b/cpp/src/IceGrid/NodeI.cpp
index 119fe61a7b8..25f96133ba8 100644
--- a/cpp/src/IceGrid/NodeI.cpp
+++ b/cpp/src/IceGrid/NodeI.cpp
@@ -469,8 +469,11 @@ NodeI::keepAlive()
{
try
{
- Ice::ObjectPrx object = getCommunicator()->stringToProxy("IceGrid/Registry@IceGrid.Registry.Internal");
- RegistryPrx registry = RegistryPrx::uncheckedCast(object);
+ Ice::PropertiesPtr properties = getCommunicator()->getProperties();
+ const string instanceNameProperty = "IceGrid.InstanceName";
+ string instanceName = properties->getPropertyWithDefault(instanceNameProperty, "IceGrid");
+ Ice::ObjectPrx obj = getCommunicator()->stringToProxy(instanceName + "/Registry@IceGrid.Registry.Internal");
+ RegistryPrx registry = RegistryPrx::uncheckedCast(obj);
NodeObserverPrx observer;
setSession(registry->registerNode(_name, _proxy, _platform.getNodeInfo(), observer), observer);
checkConsistency();