Exemplo n.º 1
0
        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();
        }
Exemplo n.º 2
0
 private void PersistState()
 {
     if (base.Id != Guid.Empty)
     {
         SchedulingManager schedulingManager = new SchedulingManager();
         this.CopyToTaskData(schedulingManager.GetTaskData(base.Id));
         schedulingManager.SaveChanges();
     }
 }
Exemplo n.º 3
0
        public static ScheduledTaskData GetTask()
        {
            SchedulingManager manager = SchedulingManager.GetManager();

            ScheduledTaskData task = manager.GetTaskData()
                                     .Where(i => i.Key == taskKey)
                                     .SingleOrDefault();

            return(task);
        }
Exemplo n.º 4
0
        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");
        }
Exemplo n.º 5
0
        /// <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();
     }
 }