Esempio n. 1
0
        private ConfigItem <string[]> getValues(string nodeName, bool hasParent)
        {
            var item   = new ConfigItem <string[]>(new string[] {});
            var values = new List <string>();
            var nodes  = _xml.SelectNodes(nodeName);

            if (nodes.Count == 0)
            {
                return(item);
            }
            foreach (XmlNode node in nodes)
            {
                values.Add(node.InnerText);
            }
            item.SetValue(values.ToArray());
            var mainNode = nodeName;

            if (hasParent)
            {
                mainNode = getParentNode(nodeName);
            }
            if (shouldMerge(mainNode))
            {
                item.SetShouldMerge();
            }
            if (shouldExcludeFromConfig(mainNode))
            {
                item.Exclude();
            }
            return(item);
        }
Esempio n. 2
0
        private ConfigItem <KeyValuePair <string, string>[]> getVersionedSetting(string xpath)
        {
            var item  = new ConfigItem <KeyValuePair <string, string>[]>(new KeyValuePair <string, string>[] {});
            var nodes = _xml.SelectNodes(xpath);

            if (nodes.Count == 0)
            {
                return(item);
            }
            item.SetValue(readVersionedNodes(nodes));
            if (shouldMerge(xpath))
            {
                item.SetShouldMerge();
            }
            if (shouldExcludeFromConfig(xpath))
            {
                item.Exclude();
            }
            return(item);
        }