const std::shared_ptr<Config_FeatureMessage> aMsg =
std::dynamic_pointer_cast<Config_FeatureMessage>(theMessage);
if (aMsg) {
+
// process the plugin info, load plugin
if (myPlugins.find(aMsg->id()) == myPlugins.end()) {
myPlugins[aMsg->id()] = std::pair<std::string, std::string>(
const std::shared_ptr<Config_AttributeMessage> aMsgAttr =
std::dynamic_pointer_cast<Config_AttributeMessage>(theMessage);
if (aMsgAttr) {
+
if (!aMsgAttr->isObligatory()) {
validators()->registerNotObligatory(aMsgAttr->featureId(), aMsgAttr->attributeId());
}
if(aMsgAttr->isConcealment()) {
validators()->registerConcealment(aMsgAttr->featureId(), aMsgAttr->attributeId());
}
- if (!aMsgAttr->caseId().empty()) {
- validators()->registerCase(aMsgAttr->featureId(), aMsgAttr->attributeId(),
- aMsgAttr->switchId(), aMsgAttr->caseId());
+ const std::list<std::pair<std::string, std::string> >& aCases = aMsgAttr->getCases();
+ if (!aCases.empty()) {
+ validators()->registerCase(aMsgAttr->featureId(), aMsgAttr->attributeId(), aCases);
}
}
}