public static void ScheduleTask(DateTime executeTime) { SchedulingManager schedulingManager = SchedulingManager.GetManager(); var existingTask = schedulingManager.GetTaskData().FirstOrDefault(x => x.Key == HashtagSearchScheduledTask.TaskKey); if (existingTask == null && usgConfig.RunHashtagSearch && !usgConfig.UserKey.IsNullOrWhitespace()) { // Create a new scheduled task HashtagSearchScheduledTask newTask = new HashtagSearchScheduledTask() { ExecuteTime = executeTime }; schedulingManager.AddTask(newTask); } else if (usgConfig.RunHashtagSearch && !usgConfig.UserKey.IsNullOrWhitespace()) { // Updates the existing scheduled task existingTask.ExecuteTime = executeTime; } else { //Delete the task schedulingManager.DeleteItem(existingTask); } SchedulingManager.RescheduleNextRun(); schedulingManager.SaveChanges(); }
private void PersistState() { if (base.Id != Guid.Empty) { SchedulingManager schedulingManager = new SchedulingManager(); this.CopyToTaskData(schedulingManager.GetTaskData(base.Id)); schedulingManager.SaveChanges(); } }
public static ScheduledTaskData GetTask() { SchedulingManager manager = SchedulingManager.GetManager(); ScheduledTaskData task = manager.GetTaskData() .Where(i => i.Key == taskKey) .SingleOrDefault(); return(task); }
public ScheduledTaskStatusModel() { SchedulingManager schedulingManager = SchedulingManager.GetManager(); var now = DateTime.Now; this.AllTasks = schedulingManager.GetTaskData(); this.FutureTasks = this.AllTasks.Where(x => x.ExecuteTime >= now); this.FailedTasks = this.AllTasks.Where(x => x.ExecuteTime < now); this.CronJobs = this.AllTasks.Where(x => x.TypeOfSchedule == "crontab"); }
/// <summary> /// CreateTask /// </summary> public static void CreateTask() { SchedulingManager manager = SchedulingManager.GetManager(); string title = "RenewContentTask"; var tasks = manager.GetTaskData().Where(i => i.Title == title); foreach (var task in tasks) { manager.DeleteTaskData(task); } RenewContentTask newTask = new RenewContentTask() { Title = title, ExecuteTime = DateTime.UtcNow.AddMinutes(1), }; manager.AddTask(newTask); manager.SaveChanges(); }
private void PersistState() { if (base.Id != Guid.Empty) { SchedulingManager schedulingManager = new SchedulingManager(); this.CopyToTaskData(schedulingManager.GetTaskData(base.Id)); schedulingManager.SaveChanges(); } }