/// <summary> /// Set setting value /// </summary> /// <typeparam name="T">Type</typeparam> /// <param name="key">Key</param> /// <param name="value">Value</param> /// <param name="clearCache">A value indicating whether to clear cache after setting update</param> public virtual void SetSetting <T>(string key, T value, bool clearCache = true) { if (key == null) { throw new ArgumentNullException("key"); } key = key.Trim().ToLowerInvariant(); string valueStr = CommonHelper.GetCustomTypeConverter(typeof(T)).ConvertToInvariantString(value); var allSettings = GetAllSettingsCached(); var settingForCaching = allSettings.ContainsKey(key) ? allSettings[key].FirstOrDefault() : null; if (settingForCaching != null) { //update var setting = _settingRepository.Get(settingForCaching.Id); setting.Value = valueStr; } else { //insert var setting = new SettingRecord() { Name = key, Value = valueStr }; _settingRepository.Create(setting); } }
internal static void Parse(this SettingRecord _this, XmlNode node) { _this.PortalUsername = node.ChildNodes.GetTextValue(Xml.SettingRecord.PortalUsername, Xml.Attributes.Value); _this.PortalPassword = node.ChildNodes.GetTextValue(Xml.SettingRecord.PortalPassword, Xml.Attributes.Value); _this.SendCrashDetails = node.ChildNodes.GetBoolValue(Xml.SettingRecord.SendCrashDetails, Xml.Attributes.Value); _this.PluginsRepository = node.ChildNodes.GetTextValue(Xml.SettingRecord.PluginsRepository, Xml.Attributes.Value); _this.AlignVersions = node.ChildNodes.GetBoolValue(Xml.SettingRecord.AlignVersions, Xml.Attributes.Value); }
public void SetExpireMinutes(int expireSeconds) { var settingRecord = SettingRecords.SingleOrDefault(x => x.BotInstanceId == BotInstanceId); if (settingRecord == null) { settingRecord = new SettingRecord { BotInstanceId = BotInstanceId, WelcomeMessage = "??Default Welcome Message??", ExpireMinutes = expireSeconds }; SettingRecords.Add(settingRecord); } else { settingRecord.ExpireMinutes = expireSeconds; } }
public void SetWelcomeMessage(string welcomeMessage) { var settingRecord = SettingRecords.SingleOrDefault(x => x.BotInstanceId == BotInstanceId); if (settingRecord == null) { settingRecord = new SettingRecord { BotInstanceId = BotInstanceId, WelcomeMessage = welcomeMessage, ExpireMinutes = 2 }; SettingRecords.Add(settingRecord); } else { settingRecord.WelcomeMessage = welcomeMessage; } }