diff options
author | Bernard Normier <bernard@zeroc.com> | 2006-07-20 20:17:51 +0000 |
---|---|---|
committer | Bernard Normier <bernard@zeroc.com> | 2006-07-20 20:17:51 +0000 |
commit | 55363a13e1c750b39db419c5312217b9256f1fec (patch) | |
tree | 76aa0e305ccd7a3db64e7e03703f74e2dadb0c34 /cpp/src/IceGrid/DescriptorBuilder.cpp | |
parent | file Communicator.cpp was initially added on branch R3_1_branch. (diff) | |
download | ice-55363a13e1c750b39db419c5312217b9256f1fec.tar.bz2 ice-55363a13e1c750b39db419c5312217b9256f1fec.tar.xz ice-55363a13e1c750b39db419c5312217b9256f1fec.zip |
Merge from R3_1_branch
Diffstat (limited to 'cpp/src/IceGrid/DescriptorBuilder.cpp')
-rw-r--r-- | cpp/src/IceGrid/DescriptorBuilder.cpp | 36 |
1 files changed, 12 insertions, 24 deletions
diff --git a/cpp/src/IceGrid/DescriptorBuilder.cpp b/cpp/src/IceGrid/DescriptorBuilder.cpp index bc3dcc14a25..5d4aed4c74d 100644 --- a/cpp/src/IceGrid/DescriptorBuilder.cpp +++ b/cpp/src/IceGrid/DescriptorBuilder.cpp @@ -827,33 +827,21 @@ IceBoxDescriptorBuilder::addAdapter(const XmlAttributesHelper& attrs) { throw "<adapter> element can't be a child of an <icebox> element"; } - - AdapterDescriptor& desc = _descriptor->adapters.back(); - assert(desc.name == "IceBox.ServiceManager"); - desc.id = attrs("id", desc.id); - desc.replicaGroupId = attrs("replica-group", desc.replicaGroupId); - desc.registerProcess = attrs.asBool("register-process", desc.registerProcess); - if(desc.id == "" && attrs.contains("wait-for-activation")) - { - throw "the attribute `wait-for-activation' can only be set if the adapter has an non empty id"; - } - else - { - desc.waitForActivation = attrs.asBool("wait-for-activation", desc.waitForActivation); - } - if(attrs.contains("endpoints")) + PropertyDescriptorSeq::iterator p = _hiddenProperties.begin(); + while(p != _hiddenProperties.end()) { - PropertyDescriptorSeq::iterator p; - for(p = _descriptor->propertySet.properties.begin(); p != _descriptor->propertySet.properties.end(); ++p) - { - if(p->name == "IceBox.ServiceManager.Endpoints") - { - p->value = attrs("endpoints"); - break; - } - } + if(p->name == "IceBox.ServiceManager.Endpoints" || p->name == "IceBox.ServiceManager.RegisterProcess") + { + p = _hiddenProperties.erase(p); + } + else + { + ++p; + } } + + ServerDescriptorBuilder::addAdapter(attrs); } void |