1
0
mirror of https://github.com/Radarr/Radarr.git synced 2026-03-05 13:21:25 -05:00

New: Refresh cache for tracked queue on movies update

This commit is contained in:
Bogdan
2025-01-31 21:55:45 +02:00
parent c0e5646f07
commit 743c977e5b

View File

@@ -29,6 +29,8 @@ namespace NzbDrone.Core.Download.TrackedDownloads
public class TrackedDownloadService : ITrackedDownloadService,
IHandle<MovieAddedEvent>,
IHandle<MovieEditedEvent>,
IHandle<MoviesBulkEditedEvent>,
IHandle<MoviesDeletedEvent>
{
private readonly IParsingService _parsingService;
@@ -272,6 +274,38 @@ namespace NzbDrone.Core.Download.TrackedDownloads
}
}
public void Handle(MovieEditedEvent message)
{
var cachedItems = _cache.Values
.Where(t =>
t.RemoteMovie?.Movie != null &&
(t.RemoteMovie.Movie.Id == message.Movie?.Id || t.RemoteMovie.Movie.TmdbId == message.Movie?.TmdbId))
.ToList();
if (cachedItems.Any())
{
cachedItems.ForEach(UpdateCachedItem);
_eventAggregator.PublishEvent(new TrackedDownloadRefreshedEvent(GetTrackedDownloads()));
}
}
public void Handle(MoviesBulkEditedEvent message)
{
var cachedItems = _cache.Values
.Where(t =>
t.RemoteMovie?.Movie != null &&
message.Movies.Any(m => m.Id == t.RemoteMovie.Movie.Id || m.TmdbId == t.RemoteMovie.Movie.TmdbId))
.ToList();
if (cachedItems.Any())
{
cachedItems.ForEach(UpdateCachedItem);
_eventAggregator.PublishEvent(new TrackedDownloadRefreshedEvent(GetTrackedDownloads()));
}
}
public void Handle(MoviesDeletedEvent message)
{
var cachedItems = _cache.Values