Ejemplo n.º 1
0
        internal MatchDomainFmStructure EnforceFmStructure(string id, LL.MDE.DataModels.XML.Tag fmStructure)
        {
            MatchDomainFmStructure match = new MatchDomainFmStructure();

            // Contructing fmStructure
            LL.MDE.DataModels.XML.Tag fmStructureRoot = null;
            fmStructureRoot = (LL.MDE.DataModels.XML.Tag)editor.CreateNewObjectInField(fmStructure, "childTags");

            // Contructing fmStructureRoot
            editor.AddOrSetInField(fmStructureRoot, "tagname", "FM-STRUCTURE-ROOT");
            LL.MDE.DataModels.XML.Tag fmStructureElementRef = null;
            fmStructureElementRef = (LL.MDE.DataModels.XML.Tag)editor.CreateNewObjectInField(fmStructureRoot, "childTags");

            // Contructing fmStructureElementRef
            editor.AddOrSetInField(fmStructureElementRef, "tagname", "FM-STRUCTURE-ELEMENT-REF");
            LL.MDE.DataModels.XML.Attribute idRef = null;
            idRef = (LL.MDE.DataModels.XML.Attribute)editor.CreateNewObjectInField(fmStructureElementRef, "attributes");

            // Contructing idRef
            editor.AddOrSetInField(idRef, "name", "ID-REF");
            editor.AddOrSetInField(idRef, "value", id);

            // Return newly binded variables
            match.fmStructure           = fmStructure;
            match.fmStructureRoot       = fmStructureRoot;
            match.fmStructureElementRef = fmStructureElementRef;
            match.idRef = idRef;
            return(match);
        }
Ejemplo n.º 2
0
        internal void Enforce(ISet <CheckResultCreateStructureRootLink> result, LL.MDE.DataModels.XML.Tag fmStructure)
        {
            foreach (CheckResultCreateStructureRootLink match in result)
            {
                // Extracting variables binded in source domains
                LL.MDE.DataModels.XML.Attribute structureElementRef = match.matchDomainStructureElementRef.structureElementRef;
                string id = match.matchDomainStructureElementRef.id;

                // Enforcing each enforced domain
                MatchDomainFmStructure targetMatchDomainFmStructure = EnforceFmStructure(id, fmStructure);

                // Retrieving variables binded in the enforced domains
                LL.MDE.DataModels.XML.Tag       fmStructureRoot       = targetMatchDomainFmStructure.fmStructureRoot;
                LL.MDE.DataModels.XML.Tag       fmStructureElementRef = targetMatchDomainFmStructure.fmStructureElementRef;
                LL.MDE.DataModels.XML.Attribute idRef = targetMatchDomainFmStructure.idRef;
            }
        }