public List<Task> UpdateTask(Task task)
        {
            using (var monitorContext = new MonitorDbContext())
            {
                try
                {
                    var matchingDbTask = monitorContext.Tasks.FirstOrDefault(t => t.Name == task.Name);

                    if (matchingDbTask != null)
                    {
                        task.TaskId = matchingDbTask.TaskId;

                        HistoryHandler.UpdateTaskHistoryProperties(task, matchingDbTask);

                        monitorContext.Set<Task>().AddOrUpdate(task);
                        monitorContext.SaveChanges();
                    }
                    else
                    {
                        var dbTasks = monitorContext.Tasks;

                        if (dbTasks.Any())
                            task.TaskId = dbTasks.Max(t => t.TaskId) + 1;
                        else
                            task.TaskId = 1;

                        HistoryHandler.UpdateTaskHistoryProperties(task, null);
                        monitorContext.Tasks.Add(task);
                        monitorContext.SaveChanges();
                    }
                }
                catch (Exception ex)
                {
                    Debug.WriteLine(ex.Message);

                }

                return new List<Task> { monitorContext.Tasks.FirstOrDefault(t => t.Name == task.Name) };
            }
        }
        protected void OnTaskUpdated(ref Server vcServer, JobClass vcJob, TaskClass vcTask)
        {
            UpdateMonitoringTimeMessage(vcServer);

            if (vcTask.Stats.Status == TaskStatsClass.TaskStatusT.Waiting)
            {

                Debug.WriteLine(vcTask.Name);
                Debug.WriteLine("ExecutionTime: " + vcTask.Stats.ExecutionTime);
                Debug.WriteLine(vcTask.Stats.Status);

                var task = new Task(ref vcServer, vcJob, vcTask);
                var tasks = DbHandler.UpdateTask(task);
                VisualCronHubHandler.UpdateClients(tasks);
            }
        }