public bool SaveData() { if (!ValidateData()) return false; var settings = new TaskSqlSettings(); var item = new TaskSqlSetting(); //html item.Enabled = chbEnabledHtml.Checked; item.JobType = typeof(GenerateHtmlMapJob).ToString(); item.TimeInterval = txtTimeIntervalHtml.Text.TryParseInt(); item.TimeType = (TimeIntervalType)Enum.Parse(typeof(TimeIntervalType), ddlTypeHtml.SelectedValue, true); if (item.TimeType == TimeIntervalType.Days) { item.TimeHours = txtHoursHtml.Text.TryParseInt(); item.TimeMinutes = txtMinutesHtml.Text.TryParseInt(); } settings.Add(item); //xml item = new TaskSqlSetting(); item.Enabled = chbEnabledXml.Checked; item.JobType = typeof(GenerateXmlMapJob).ToString(); item.TimeInterval = txtTimeIntervalXml.Text.TryParseInt(); item.TimeType = (TimeIntervalType)Enum.Parse(typeof(TimeIntervalType), ddlTypeXml.SelectedValue, true); if (item.TimeType == TimeIntervalType.Days) { item.TimeHours = txtHoursXml.Text.TryParseInt(); item.TimeMinutes = txtMinutesXml.Text.TryParseInt(); } settings.Add(item); //yandex item = new TaskSqlSetting(); item.Enabled = chbEnabledYandex.Checked & ShowYaMarket; item.JobType = typeof(GenerateYandexMarketJob).ToString(); item.TimeInterval = txtTimeIntervalYandex.Text.TryParseInt(); item.TimeType = (TimeIntervalType)Enum.Parse(typeof(TimeIntervalType), ddlTypeYandex.SelectedValue, true); if (item.TimeType == TimeIntervalType.Days) { item.TimeHours = txtHoursYandex.Text.TryParseInt(); item.TimeMinutes = txtMinutesYandex.Text.TryParseInt(); } settings.Add(item); TaskSqlSettings.TaskSettings = settings; TaskManager.TaskManagerInstance().ManagedTask(settings); LoadData(); return true; }
public void ManagedTask(TaskSqlSettings settings) { for (int i = 0; i < settings.Count; i++) { _sched.DeleteJob(new JobKey(settings[i].JobType, TaskGroup)); } for (int i = 0; i < settings.Count; i++) { if (settings[i].Enabled) { if (string.IsNullOrEmpty(settings[i].JobType)) continue; var taskType = Type.GetType(settings[i].JobType); if (taskType == null) continue; if (_sched.CheckExists(new JobKey(settings[i].JobType, TaskGroup))) continue; var jobDetail = new JobDetailImpl(settings[i].JobType, TaskGroup, taskType); string cronExpression = GetCronString(settings[i]); if (string.IsNullOrEmpty(cronExpression)) continue; var trigger = new CronTriggerImpl(settings[i].JobType, TaskGroup, settings[i].JobType, TaskGroup, cronExpression); _sched.ScheduleJob(jobDetail, trigger); } } }
public bool SaveData() { if (!ValidateData()) { return(false); } var settings = new TaskSqlSettings(); var item = new TaskSqlSetting(); //html item.Enabled = chbEnabledHtml.Checked; item.JobType = typeof(GenerateHtmlMapJob).ToString(); item.TimeInterval = txtTimeIntervalHtml.Text.TryParseInt(); item.TimeType = (TimeIntervalType)Enum.Parse(typeof(TimeIntervalType), ddlTypeHtml.SelectedValue, true); if (item.TimeType == TimeIntervalType.Days) { item.TimeHours = txtHoursHtml.Text.TryParseInt(); item.TimeMinutes = txtMinutesHtml.Text.TryParseInt(); } settings.Add(item); //xml item = new TaskSqlSetting(); item.Enabled = chbEnabledXml.Checked; item.JobType = typeof(GenerateXmlMapJob).ToString(); item.TimeInterval = txtTimeIntervalXml.Text.TryParseInt(); item.TimeType = (TimeIntervalType)Enum.Parse(typeof(TimeIntervalType), ddlTypeXml.SelectedValue, true); if (item.TimeType == TimeIntervalType.Days) { item.TimeHours = txtHoursXml.Text.TryParseInt(); item.TimeMinutes = txtMinutesXml.Text.TryParseInt(); } settings.Add(item); //yandex item = new TaskSqlSetting(); item.Enabled = chbEnabledYandex.Checked & ShowYaMarket; item.JobType = typeof(GenerateYandexMarketJob).ToString(); item.TimeInterval = txtTimeIntervalYandex.Text.TryParseInt(); item.TimeType = (TimeIntervalType)Enum.Parse(typeof(TimeIntervalType), ddlTypeYandex.SelectedValue, true); if (item.TimeType == TimeIntervalType.Days) { item.TimeHours = txtHoursYandex.Text.TryParseInt(); item.TimeMinutes = txtMinutesYandex.Text.TryParseInt(); } settings.Add(item); //Added by Evgeni. Amount update item = new TaskSqlSetting(); item.Enabled = chbEnableAmountUpdate.Checked; item.JobType = typeof(GenerateNesProductAmountUpdateJob).ToString(); item.TimeInterval = txtTimeIntervalAmountUpdate.Text.TryParseInt(); item.TimeType = (TimeIntervalType)Enum.Parse(typeof(TimeIntervalType), ddlTypeAmountUpdate.SelectedValue, true); if (item.TimeType == TimeIntervalType.Days) { item.TimeHours = txtHoursAmountUpdate.Text.TryParseInt(); item.TimeMinutes = txtMinutesAmountUpdate.Text.TryParseInt(); } settings.Add(item); /// TaskSqlSettings.TaskSettings = settings; TaskManager.TaskManagerInstance().ManagedTask(settings); LoadData(); return(true); }