mirror of
https://github.com/Radarr/Radarr
synced 2025-02-22 14:21:14 +00:00
New: Refresh cache for tracked queue on movie add
This commit is contained in:
parent
c8b409ed0b
commit
8a5c0ffd18
1 changed files with 22 additions and 4 deletions
|
@ -28,6 +28,7 @@ public interface ITrackedDownloadService
|
||||||
}
|
}
|
||||||
|
|
||||||
public class TrackedDownloadService : ITrackedDownloadService,
|
public class TrackedDownloadService : ITrackedDownloadService,
|
||||||
|
IHandle<MovieAddedEvent>,
|
||||||
IHandle<MoviesDeletedEvent>
|
IHandle<MoviesDeletedEvent>
|
||||||
{
|
{
|
||||||
private readonly IParsingService _parsingService;
|
private readonly IParsingService _parsingService;
|
||||||
|
@ -250,12 +251,29 @@ private void LogItemChange(TrackedDownload trackedDownload, DownloadClientItem e
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public void Handle(MovieAddedEvent message)
|
||||||
|
{
|
||||||
|
var cachedItems = _cache.Values
|
||||||
|
.Where(t =>
|
||||||
|
t.RemoteMovie?.Movie == null ||
|
||||||
|
message.Movie?.TmdbId == t.RemoteMovie.Movie.TmdbId)
|
||||||
|
.ToList();
|
||||||
|
|
||||||
|
if (cachedItems.Any())
|
||||||
|
{
|
||||||
|
cachedItems.ForEach(UpdateCachedItem);
|
||||||
|
|
||||||
|
_eventAggregator.PublishEvent(new TrackedDownloadRefreshedEvent(GetTrackedDownloads()));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
public void Handle(MoviesDeletedEvent message)
|
public void Handle(MoviesDeletedEvent message)
|
||||||
{
|
{
|
||||||
var cachedItems = _cache.Values.Where(t =>
|
var cachedItems = _cache.Values
|
||||||
t.RemoteMovie?.Movie != null &&
|
.Where(t =>
|
||||||
message.Movies.Any(m => m.Id == t.RemoteMovie.Movie.Id))
|
t.RemoteMovie?.Movie != null &&
|
||||||
.ToList();
|
message.Movies.Any(m => m.Id == t.RemoteMovie.Movie.Id || m.TmdbId == t.RemoteMovie.Movie.TmdbId))
|
||||||
|
.ToList();
|
||||||
|
|
||||||
if (cachedItems.Any())
|
if (cachedItems.Any())
|
||||||
{
|
{
|
||||||
|
|
Loading…
Reference in a new issue