public TaskScheduleModel CreateContinuousSchedule(TaskScheduleRequestModel model) { var schedule = new TaskScheduleContinuousModel { TaskId = model.TaskId, IdlePeriod = 15, IdlePeriodType = "minutes", }; var idleSchedule = model.Schedules .FirstOrDefault(x => x.Type.Equals("idle", StringComparison.OrdinalIgnoreCase)); if (idleSchedule == null || idleSchedule.Periods == null) { return(schedule); } var periods = idleSchedule.Periods.ToArray(); if (!periods.Any()) { return(schedule); } var periodType = idleSchedule.PeriodType; if (string.IsNullOrWhiteSpace(periodType)) { return(schedule); } var periodTypes = new[] { "seconds", "minutes", "hours", "days" }; if (!periodTypes.Contains(periodType, StringComparer.OrdinalIgnoreCase)) { return(schedule); } schedule.IdlePeriod = periods.First(); schedule.IdlePeriodType = periodType; return(schedule); }
public TaskScheduleModel CreateDefaultModel(ExecutionTypeElement element) { var model = new TaskScheduleContinuousModel { TaskId = element.Id, IdlePeriod = 15, IdlePeriodType = "minutes", }; foreach (var subModel in element.ExecutionList) { model.AddScheduleItem(new TaskScheduleItemModel { TaskId = subModel.Id, Order = subModel.Order, }); } return(model); }