using System.Configuration; namespace Kreta.Core.FeatureToggle.Configuration { [ConfigurationCollection(typeof(SimpleFeatureConfiguration))] public class SimpleFeatureConfigurationCollection : ConfigurationElementCollection { protected override string ElementName => nameof(SimpleFeature); protected override ConfigurationElement CreateNewElement() => new SimpleFeatureConfiguration(); protected override object GetElementKey(ConfigurationElement element) => ((SimpleFeatureConfiguration)element).Name; public override ConfigurationElementCollectionType CollectionType => ConfigurationElementCollectionType.BasicMapAlternate; } public class ExtendedSendMobileNotification : ConfigurationElement { [ConfigurationProperty(nameof(CustomCronExpression))] public string CustomCronExpression => base[nameof(CustomCronExpression)].ToString(); [ConfigurationProperty(nameof(SendItervalInMinute))] public string SendItervalInMinute => base[nameof(SendItervalInMinute)].ToString(); [ConfigurationProperty(nameof(RunningIntervalStartHour))] public string RunningIntervalStartHour => base[nameof(RunningIntervalStartHour)].ToString(); [ConfigurationProperty(nameof(RunningIntervalEndHour))] public string RunningIntervalEndHour => base[nameof(RunningIntervalEndHour)].ToString(); } }