From 5b0704639667a782d31e7862957572ec5264b8cf Mon Sep 17 00:00:00 2001 From: ta264 Date: Thu, 19 Dec 2019 21:29:10 +0000 Subject: [PATCH] Fixed: Trigger fewer signalr broadcasts --- src/NzbDrone.Core/MediaCover/MediaCoverService.cs | 11 +++++++++-- src/NzbDrone.Core/Movies/RefreshMovieService.cs | 2 +- 2 files changed, 10 insertions(+), 3 deletions(-) diff --git a/src/NzbDrone.Core/MediaCover/MediaCoverService.cs b/src/NzbDrone.Core/MediaCover/MediaCoverService.cs index e49edb45f..7a322eb1d 100644 --- a/src/NzbDrone.Core/MediaCover/MediaCoverService.cs +++ b/src/NzbDrone.Core/MediaCover/MediaCoverService.cs @@ -90,6 +90,7 @@ namespace NzbDrone.Core.MediaCover private void EnsureCovers(Movie movie) { + bool updated = false; var toResize = new List>(); foreach (var cover in movie.Images) @@ -102,6 +103,7 @@ namespace NzbDrone.Core.MediaCover if (!alreadyExists) { DownloadCover(movie, cover); + updated = true; } } catch (WebException e) @@ -129,6 +131,8 @@ namespace NzbDrone.Core.MediaCover { _semaphore.Release(); } + + return updated; } private void DownloadCover(Movie movie, MediaCover cover) @@ -186,8 +190,11 @@ namespace NzbDrone.Core.MediaCover public void HandleAsync(MovieUpdatedEvent message) { - EnsureCovers(message.Movie); - _eventAggregator.PublishEvent(new MediaCoversUpdatedEvent(message.Movie)); + var updated = EnsureCovers(message.Movie); + if (updated) + { + _eventAggregator.PublishEvent(new MediaCoversUpdatedEvent(message.Movie)); + } } public void HandleAsync(MovieDeletedEvent message) diff --git a/src/NzbDrone.Core/Movies/RefreshMovieService.cs b/src/NzbDrone.Core/Movies/RefreshMovieService.cs index 19807fcc1..b5554c5ac 100644 --- a/src/NzbDrone.Core/Movies/RefreshMovieService.cs +++ b/src/NzbDrone.Core/Movies/RefreshMovieService.cs @@ -136,7 +136,7 @@ namespace NzbDrone.Core.Movies _logger.Info(ex, "Unable to communicate with Mappings Server."); } - _movieService.UpdateMovie(movie); + _movieService.UpdateMovie(new List { movie }); try {