diff options
Diffstat (limited to 'MediaBrowser.Common.Implementations/ScheduledTasks')
3 files changed, 25 insertions, 26 deletions
diff --git a/MediaBrowser.Common.Implementations/ScheduledTasks/ScheduledTaskWorker.cs b/MediaBrowser.Common.Implementations/ScheduledTasks/ScheduledTaskWorker.cs index 8d727a1128..dcd3a3025e 100644 --- a/MediaBrowser.Common.Implementations/ScheduledTasks/ScheduledTaskWorker.cs +++ b/MediaBrowser.Common.Implementations/ScheduledTasks/ScheduledTaskWorker.cs @@ -106,6 +106,7 @@ namespace MediaBrowser.Common.Implementations.ScheduledTasks InitTriggerEvents(); } + private bool _readFromFile = false; /// <summary> /// The _last execution result /// </summary> @@ -122,31 +123,29 @@ namespace MediaBrowser.Common.Implementations.ScheduledTasks { get { - if (_lastExecutionResult == null) - { - var path = GetHistoryFilePath(); + var path = GetHistoryFilePath(); - lock (_lastExecutionResultSyncLock) + lock (_lastExecutionResultSyncLock) + { + if (_lastExecutionResult == null && !_readFromFile) { - if (_lastExecutionResult == null) + try + { + _lastExecutionResult = JsonSerializer.DeserializeFromFile<TaskResult>(path); + } + catch (DirectoryNotFoundException) + { + // File doesn't exist. No biggie + } + catch (FileNotFoundException) + { + // File doesn't exist. No biggie + } + catch (Exception ex) { - try - { - return JsonSerializer.DeserializeFromFile<TaskResult>(path); - } - catch (DirectoryNotFoundException) - { - // File doesn't exist. No biggie - } - catch (FileNotFoundException) - { - // File doesn't exist. No biggie - } - catch (Exception ex) - { - Logger.ErrorException("Error deserializing {0}", ex, path); - } + Logger.ErrorException("Error deserializing {0}", ex, path); } + _readFromFile = true; } } @@ -311,7 +310,7 @@ namespace MediaBrowser.Common.Implementations.ScheduledTasks trigger.Triggered -= trigger_Triggered; trigger.Triggered += trigger_Triggered; - trigger.Start(LastExecutionResult, isApplicationStartup); + trigger.Start(LastExecutionResult, Logger, Name, isApplicationStartup); } } @@ -339,7 +338,7 @@ namespace MediaBrowser.Common.Implementations.ScheduledTasks await Task.Delay(1000).ConfigureAwait(false); - trigger.Start(LastExecutionResult, false); + trigger.Start(LastExecutionResult, Logger, Name, false); } private Task _currentTask; diff --git a/MediaBrowser.Common.Implementations/ScheduledTasks/TaskManager.cs b/MediaBrowser.Common.Implementations/ScheduledTasks/TaskManager.cs index 3aab59ee12..b3a00b35f5 100644 --- a/MediaBrowser.Common.Implementations/ScheduledTasks/TaskManager.cs +++ b/MediaBrowser.Common.Implementations/ScheduledTasks/TaskManager.cs @@ -88,8 +88,6 @@ namespace MediaBrowser.Common.Implementations.ScheduledTasks _fileSystem = fileSystem; ScheduledTasks = new IScheduledTaskWorker[] { }; - - BindToSystemEvent(); } private void BindToSystemEvent() @@ -259,6 +257,8 @@ namespace MediaBrowser.Common.Implementations.ScheduledTasks myTasks.AddRange(list.Select(t => new ScheduledTaskWorker(t, ApplicationPaths, this, JsonSerializer, Logger, _fileSystem))); ScheduledTasks = myTasks.ToArray(); + + BindToSystemEvent(); } /// <summary> diff --git a/MediaBrowser.Common.Implementations/ScheduledTasks/Tasks/DeleteCacheFileTask.cs b/MediaBrowser.Common.Implementations/ScheduledTasks/Tasks/DeleteCacheFileTask.cs index b4cc5d7530..0a2b9222a0 100644 --- a/MediaBrowser.Common.Implementations/ScheduledTasks/Tasks/DeleteCacheFileTask.cs +++ b/MediaBrowser.Common.Implementations/ScheduledTasks/Tasks/DeleteCacheFileTask.cs @@ -71,7 +71,7 @@ namespace MediaBrowser.Common.Implementations.ScheduledTasks.Tasks progress.Report(90); - minDateModified = DateTime.UtcNow.AddDays(-2); + minDateModified = DateTime.UtcNow.AddDays(-1); try { |
