summaryrefslogtreecommitdiff
path: root/cpp/src/IceGrid/DescriptorHelper.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'cpp/src/IceGrid/DescriptorHelper.cpp')
-rw-r--r--cpp/src/IceGrid/DescriptorHelper.cpp14
1 files changed, 10 insertions, 4 deletions
diff --git a/cpp/src/IceGrid/DescriptorHelper.cpp b/cpp/src/IceGrid/DescriptorHelper.cpp
index f4c6393c583..d7fda548301 100644
--- a/cpp/src/IceGrid/DescriptorHelper.cpp
+++ b/cpp/src/IceGrid/DescriptorHelper.cpp
@@ -647,8 +647,11 @@ CommunicatorHelper::instantiateImpl(const CommunicatorDescriptorPtr& instance, c
{
ObjectDescriptor obj;
obj.type = resolve(q->type, "object type");
- obj.id.name = resolve(q->id.name, "object identity name", false);
- obj.id.category = resolve(q->id.category, "object identity category");
+ obj.id = Ice::stringToIdentity(resolve(Ice::identityToString(q->id), "object identity", false));
+ if(obj.id.name.empty())
+ {
+ resolve.exception("invalid object identity `" + Ice::identityToString(q->id) + "': name empty");
+ }
adapter.objects.push_back(obj);
}
instance->adapters.push_back(adapter);
@@ -1989,8 +1992,11 @@ ApplicationHelper::instantiate(const Resolver& resolve) const
for(ObjectDescriptorSeq::iterator q = r->objects.begin(); q != r->objects.end(); ++q)
{
q->type = resolve(q->type, "object type");
- q->id.name = resolve(q->id.name, "object identity name", false);
- q->id.category = resolve(q->id.category, "object identity category");
+ q->id = Ice::stringToIdentity(resolve(Ice::identityToString(q->id), "object identity", false));
+ if(q->id.name.empty())
+ {
+ resolve.exception("invalid object identity `" + Ice::identityToString(q->id) + "': name empty");
+ }
}
}