New: Refresh cache for tracked queue on movies update

pull/10868/head
Bogdan 3 months ago
parent c0e5646f07
commit 743c977e5b

@ -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

Loading…
Cancel
Save