public static Settings FromConfigSettings(ConfigurationSettings configSettings)
 {
     return(new Settings()
     {
         Scan = ScanSettings.FromConfigSettings(configSettings),
         HealthReport = HealthReportSettings.FromConfigSettings(configSettings),
         PatchVerification = PatchVerificationSettings.FromConfigSettings(configSettings),
         PatchInstallation = PatchInstallationSettings.FromConfigSettings(configSettings)
     });
 }
        private static void ParseConfigurationProperty(
            ConfigurationProperty prop,
            PatchVerificationSettings patchVerificationSettings)
        {
            bool enabled;

            if (bool.TryParse(prop.Value, out enabled) && enabled)
            {
                patchVerificationSettings.EnabledPatches.Add(prop.Name);
            }
        }
        public static PatchVerificationSettings FromConfigSettings(ConfigurationSettings settings)
        {
            var patchVerificationListSettings = new PatchVerificationSettings();

            if (!settings.Sections.Contains(SectionName))
            {
                return(patchVerificationListSettings);
            }

            var configSection = settings.Sections[SectionName];

            foreach (var prop in configSection.Parameters)
            {
                ParseConfigurationProperty(prop, patchVerificationListSettings);
            }

            return(patchVerificationListSettings);
        }