Example #1
0
 private void InvokeTaskUpdated(Task task)
 {
     if (taskUpdated != null)
     {
         taskUpdated.Invoke(task);
     }
 }
Example #2
0
 public void SelectTask(Guid id)
 {
     if (_tasks.All(memberVm => memberVm.Id != id))
     {
         return;
     }
     {
         SelectedTask = _tasks.SingleOrDefault(memberVm => memberVm.Id == id);
         TaskUpdated?.Invoke(this, null);
     }
 }
Example #3
0
        public async Task UpdateTask(TaskViewModel taskViewModel)
        {
            var result = await Update(taskViewModel.ToUpdateTaskCommand());

            Console.WriteLine(JsonSerializer.Serialize(result));

            if (result != null)
            {
                var updatedList = (await GetAllTasks()).Payload;

                if (updatedList != null)
                {
                    _tasks = updatedList;
                    TaskUpdated?.Invoke(this, null);
                    return;
                }
                UpdateTaskFailed?.Invoke(this, "The save was successful, but we can no longer get an updated list of members from the server.");
            }

            UpdateTaskFailed?.Invoke(this, "Unable to save changes.");
        }
Example #4
0
        public void Start()
        {
            _stoped = false;
            TrackTask trackTask = null;

            while (!_stoped)
            {
                trackTask = _taskProvider.GetPlannedTask();

                if (trackTask != null)
                {
                    //if we have enough resources to execute task
                    if (_runningTasks.Count() < _tasksMaximum || trackTask.Track.ServiceUser.Subscripe.Priority != Priority.Low)
                    {
                        _taskProvider.UpdateTaskStatus(trackTask.Id, TrackTaskStatus.Started);
                        TaskUpdated?.Invoke(this, trackTask);
                        //Async execute task
                        var executingTask = trackTask;
                        var task          = _taskFactory.StartNew(async() =>
                        {
                            //Execute task
                            var status = await _taskExecutor.ExecuteTask(executingTask);
                            _taskProvider.UpdateTaskStatus(executingTask.Id, status);
                            _taskProvider.UpdateTargetContent(executingTask.Id, executingTask.Track.TargetContent);
                            //User must knows about his track
                            _userNotifier.NotifyUser(executingTask);
                            TaskUpdated?.Invoke(this, executingTask);
                        });
                        _runningTasks.Add(task);
                        task.ContinueWith((t) =>
                        {
                            _runningTasks.Remove(t);
                        });
                    }
                }
            }
        }
Example #5
0
 public void Clear()
 {
     _tasks.Clear();
     OnUpdateTask?.Invoke();
 }
Example #6
0
 public void CallbackTaskList()
 {
     TaskUpdated?.Invoke(this, null);
 }
Example #7
0
 public async void LoadTasks()
 {
     _tasks = (await GetAllTasks()).Payload;
     TaskUpdated?.Invoke(this, null);
 }
Example #8
0
 public void SelectNullTask()
 {
     SelectedTask = null;
     TaskUpdated?.Invoke(this, null);
 }