mirror of
https://github.com/Radarr/Radarr.git
synced 2024-09-11 12:02:35 +02:00
Fixed: Imported downloads not being removed when seeding goals are met
Fixes #3693
This commit is contained in:
parent
c44fa60721
commit
4928261366
@ -33,9 +33,13 @@ public DownloadProcessingService(IConfigService configService,
|
||||
_logger = logger;
|
||||
}
|
||||
|
||||
private void RemoveCompletedDownloads(List<TrackedDownload> trackedDownloads)
|
||||
private void RemoveCompletedDownloads()
|
||||
{
|
||||
foreach (var trackedDownload in trackedDownloads.Where(c => c.DownloadItem.CanBeRemoved && c.State == TrackedDownloadState.Imported))
|
||||
var trackedDownloads = _trackedDownloadService.GetTrackedDownloads()
|
||||
.Where(t => !t.DownloadItem.Removed && t.DownloadItem.CanBeRemoved && t.State == TrackedDownloadState.Imported)
|
||||
.ToList();
|
||||
|
||||
foreach (var trackedDownload in trackedDownloads)
|
||||
{
|
||||
_eventAggregator.PublishEvent(new DownloadCompletedEvent(trackedDownload));
|
||||
}
|
||||
@ -56,21 +60,10 @@ public void Execute(ProcessMonitoredDownloadsCommand message)
|
||||
if (trackedDownload.State == TrackedDownloadState.FailedPending)
|
||||
{
|
||||
_failedDownloadService.ProcessFailed(trackedDownload);
|
||||
continue;
|
||||
}
|
||||
|
||||
if (enableCompletedDownloadHandling && trackedDownload.State == TrackedDownloadState.ImportPending)
|
||||
else if (enableCompletedDownloadHandling && trackedDownload.State == TrackedDownloadState.ImportPending)
|
||||
{
|
||||
_completedDownloadService.Import(trackedDownload);
|
||||
continue;
|
||||
}
|
||||
|
||||
if (removeCompletedDownloads &&
|
||||
trackedDownload.DownloadItem.Removed &&
|
||||
trackedDownload.DownloadItem.CanBeRemoved &&
|
||||
trackedDownload.State == TrackedDownloadState.Imported)
|
||||
{
|
||||
_eventAggregator.PublishEvent(new DownloadCanBeRemovedEvent(trackedDownload));
|
||||
}
|
||||
}
|
||||
catch (Exception e)
|
||||
@ -79,6 +72,12 @@ public void Execute(ProcessMonitoredDownloadsCommand message)
|
||||
}
|
||||
}
|
||||
|
||||
// Imported downloads are no longer trackable so process them after processing trackable downloads
|
||||
if (removeCompletedDownloads)
|
||||
{
|
||||
RemoveCompletedDownloads();
|
||||
}
|
||||
|
||||
_eventAggregator.PublishEvent(new DownloadsProcessedEvent());
|
||||
}
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user