summaryrefslogtreecommitdiff
path: root/cpp/src/IceGrid/DescriptorHelper.cpp
diff options
context:
space:
mode:
authorBenoit Foucher <benoit@zeroc.com>2006-01-26 10:49:43 +0000
committerBenoit Foucher <benoit@zeroc.com>2006-01-26 10:49:43 +0000
commitfbe5156ee075662335b42efbdbb14b16ebfaf576 (patch)
tree4c473db7032d42bcd37e1ea8d24e6ddcce281aeb /cpp/src/IceGrid/DescriptorHelper.cpp
parenthttp://bugzilla.zeroc.com/bugzilla/show_bug.cgi?id=529 (diff)
downloadice-fbe5156ee075662335b42efbdbb14b16ebfaf576.tar.bz2
ice-fbe5156ee075662335b42efbdbb14b16ebfaf576.tar.xz
ice-fbe5156ee075662335b42efbdbb14b16ebfaf576.zip
Fixed a bug which would prevent to define object identity with a category
using variables.
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");
+ }
}
}