/// <summary> /// /// </summary> /// <typeparam name="T"></typeparam> /// <param name="recurringJobManager"></param> /// <param name="settingsManager"></param> /// <param name="enablerSetting"></param> /// <param name="cronSetting"></param> /// <param name="methodCall"></param> /// <param name="jobId"></param> /// <param name="queue"></param> public static void WatchJobSetting <T>(this IRecurringJobManager recurringJobManager, ISettingsManager settingsManager, SettingDescriptor enablerSetting, SettingDescriptor cronSetting, Expression <Func <T, Task> > methodCall, string jobId, TimeZoneInfo timeZoneInfo, string queue) { if (recurringJobManager == null) { throw new ArgumentNullException(nameof(recurringJobManager)); } if (settingsManager == null) { throw new ArgumentNullException(nameof(settingsManager)); } var settingCronJob = new SettingCronJobBuilder(new SettingCronJob()) .SetEnablerSetting(enablerSetting) .SetCronSetting(cronSetting) .SetJobId(jobId) .SetQueueName(queue) .SetTimeZoneInfo(timeZoneInfo) .ToJob(methodCall) .Build(); WatchJobSettingAsync(recurringJobManager, settingsManager, settingCronJob).GetAwaiter().GetResult(); }
/// <summary> /// Initializes a new instance of the <see cref="SettingItemViewModel"/> class. /// </summary> /// <param name="settingDescriptor">The setting descriptor.</param> /// <param name="setting"></param> public SettingItemViewModel(SettingDescriptor settingDescriptor, SettingInfo setting) { _setting = setting; this.SettingDescriptor = settingDescriptor; // Find out editor string editorName = Editor; if (string.IsNullOrWhiteSpace(editorName)) { editorName = settingDescriptor.SettingItem.SettingType.FullName; } this.TypeEditor = TypeEditors.TypeEditorCache.CreateTypeEditor(editorName); this.TypeEditor.Initialize(this.EditorParameter); try { this.TypeEditor.Value = settingDescriptor.SettingItem.Value; } catch (System.Exception) { Logger.Instance.LogFormat(LogType.Warning, this, Properties.Resources.SettingItemViewModelSetSettingError, settingDescriptor.SettingItem.Name, settingDescriptor.Identifier); this.TypeEditor.Value = settingDescriptor.SettingItem.DefaultValue; } }
internal void Add(SettingDescriptor descriptor, SettingInfo setting) { string categoryText = GetCategoryText(setting.Category); CategoryViewModel cvm = CategoryItems.Find(c => c.Category == categoryText); if (cvm == null) { cvm = new CategoryViewModel(); cvm.Category = categoryText; CategoryItems.Add(cvm); } cvm.SettingItems.Add(new SettingItemViewModel(descriptor, setting)); }
object ConvertValue(string storedValue, SettingDescriptor setting) { return(ConvertValue(storedValue, setting.UnderlyingType)); }
object GetDefaultValue(SettingDescriptor setting) { return(setting.DefaultValue ?? ConvertValue(null, setting)); }
internal static string GetKey <T>(SettingDescriptor setting) { var settingsType = typeof(T); return(string.Format("{0}.{1}", settingsType.FullName, setting.Property.Name)); }
public SettingCronJobBuilder SetCronSetting(SettingDescriptor settingDescriptor) { _settingCronJob.CronSetting = settingDescriptor; return(this); }
public SettingCronJobBuilder SetEnablerSetting(SettingDescriptor settingDescriptor) { _settingCronJob.EnableSetting = settingDescriptor; return(this); }