From a1202a875d42b0e08074355409f2dfe8ecba93f4 Mon Sep 17 00:00:00 2001 From: glax Date: Wed, 28 Jun 2023 22:43:46 +0200 Subject: [PATCH] Moved sucessstate to taskmanager --- Tranga/TaskManager.cs | 15 +++++++++++++++ Tranga/TrangaTask.cs | 5 +---- 2 files changed, 16 insertions(+), 4 deletions(-) diff --git a/Tranga/TaskManager.cs b/Tranga/TaskManager.cs index 717aa58..02b3661 100644 --- a/Tranga/TaskManager.cs +++ b/Tranga/TaskManager.cs @@ -88,6 +88,21 @@ public class TaskManager _runningTasks[timedOutTask].Cancel(); timedOutTask.state = TrangaTask.ExecutionState.Failed; } + + foreach (TrangaTask finishedTask in _allTasks + .Where(taskQuery => taskQuery.state is TrangaTask.ExecutionState.Success).ToArray()) + { + if(finishedTask is DownloadChapterTask) + { + DeleteTask(finishedTask); + finishedTask.state = TrangaTask.ExecutionState.Success; + } + else + { + finishedTask.state = TrangaTask.ExecutionState.Waiting; + this._runningTasks.Remove(finishedTask); + } + } foreach (TrangaTask failedTask in _allTasks.Where(taskQuery => taskQuery.state is TrangaTask.ExecutionState.Failed).ToArray()) diff --git a/Tranga/TrangaTask.cs b/Tranga/TrangaTask.cs index 4ba5b70..8c03b5a 100644 --- a/Tranga/TrangaTask.cs +++ b/Tranga/TrangaTask.cs @@ -100,10 +100,7 @@ public abstract class TrangaTask if ((int)statusCode >= 200 && (int)statusCode < 300) { this.lastExecuted = DateTime.Now; - if(this is DownloadChapterTask) - this.state = ExecutionState.Success; - else - this.state = ExecutionState.Waiting; + this.state = ExecutionState.Success; } else {