public string GetFieldValue(DependencyProviderValidSettingName name)
        {
            if (!_fields.ContainsKey(name.ToString()))
            {
                return(null);
            }

            return(_fields[name.ToString()]);
        }
 /// <summary>
 /// Adds a fallback value in case the setting can't be found in deserialized config
 /// </summary>
 /// <param name="name">Name of the setting</param>
 /// <param name="value">Value of the setting</param>
 public void AddFallbackFieldValue(DependencyProviderValidSettingName name, string value)
 {
     if (!_fields.ContainsKey(name.ToString()))
     {
         _fields.Add(name.ToString(), value);
     }
     else if (string.IsNullOrEmpty(GetFieldValue(name)))
     {
         _fields[name.ToString()] = value;
     }
 }
        private IEnumerable <string> GetBuildStatusOrQuality(DependencyProviderValidSettingName name)
        {
            var settingValue = GetFieldValue(name);
            IEnumerable <string> expectedBuildStatusOrQuality;

            if (string.IsNullOrEmpty(settingValue))
            {
                expectedBuildStatusOrQuality = null;
            }
            else
            {
                var valuesFound = settingValue.Split(',');
                expectedBuildStatusOrQuality = valuesFound.Length > 0
                                                   ? valuesFound.Select(x => x.ToLower()).ToList()
                                                   : null;
            }

            return(expectedBuildStatusOrQuality);
        }
        /// <summary>
        /// Set a new setting value.
        /// </summary>
        /// <param name="name">Valid dependency provider settings name</param>
        public void SetSettingValue(DependencyProviderValidSettingName name, String value)
        {
            if (string.IsNullOrWhiteSpace(value))
            {
                _SettingsList.RemoveAll(x => x.Name == name);
                return;
            }

            var setting = _SettingsList.Where(x => x.Name.Equals(name)).FirstOrDefault();

            if (setting == null)
            {
                _SettingsList.Add(new DependencyProviderSetting {
                    Name = name, Value = value
                });
            }
            else
            {
                setting.Value = value;
            }
        }
        /// <summary>
        /// Gets the setting value based on the name or null if it does not exist.
        /// </summary>
        /// <param name="name">Valid dependency provider settings name</param>
        /// <returns>Value string or null</returns>
        public string GetSettingValue(DependencyProviderValidSettingName name)
        {
            var setting = _SettingsList.Where(x => x.Name.Equals(name)).FirstOrDefault();

            return((null != setting) ? setting.Value : null);
        }