public void config_set(ChocolateyConfiguration configuration) { var encryptValue = configuration.ConfigCommand.Name.contains("password"); var config = config_get(configuration.ConfigCommand.Name); var configValue = encryptValue ? NugetEncryptionUtility.EncryptString(configuration.ConfigCommand.ConfigValue) : configuration.ConfigCommand.ConfigValue; if (config == null) { var setting = new ConfigFileConfigSetting { Key = configuration.ConfigCommand.Name, Value = configValue, }; configFileSettings.ConfigSettings.Add(setting); _xmlService.serialize(configFileSettings, ApplicationParameters.GlobalConfigFileLocation); this.Log().Warn(() => "Added {0} = {1}".format_with(setting.Key, setting.Value)); } else { var currentValue = encryptValue && !string.IsNullOrWhiteSpace(config.Value) ? NugetEncryptionUtility.DecryptString(config.Value) : config.Value; if (configuration.ConfigCommand.ConfigValue.is_equal_to(currentValue.to_string())) { this.Log().Warn(NO_CHANGE_MESSAGE); } else { config.Value = configValue; _xmlService.serialize(configFileSettings, ApplicationParameters.GlobalConfigFileLocation); this.Log().Warn(() => "Updated {0} = {1}".format_with(config.Key, config.Value)); } } }
private static string set_config_item(string configName, ConfigFileSettings configFileSettings, string defaultValue, string description, bool forceSettingValue = false) { var config = configFileSettings.ConfigSettings.FirstOrDefault(f => f.Key.is_equal_to(configName)); if (config == null) { config = new ConfigFileConfigSetting { Key = configName, Value = defaultValue, Description = description }; configFileSettings.ConfigSettings.Add(config); } if (forceSettingValue) { config.Value = defaultValue; } config.Description = description; return(config.Value); }
private static string set_config_item(string configName, ConfigFileSettings configFileSettings, string defaultValue, string description, bool forceSettingValue = false) { var config = configFileSettings.ConfigSettings.FirstOrDefault(f => f.Key.is_equal_to(configName)); if (config == null) { config = new ConfigFileConfigSetting { Key = configName, Value = defaultValue, Description = description }; configFileSettings.ConfigSettings.Add(config); } if (forceSettingValue) { config.Value = defaultValue; } config.Description = description; return config.Value; }