From d64e902fa0b3534c1bbdc213b1ad96e178365606 Mon Sep 17 00:00:00 2001 From: Mark McDowall Date: Thu, 12 Sep 2013 20:50:12 -0700 Subject: [PATCH] Removed SeasonService, fixed an issue with episode monitored status --- .../TvTests/RefreshEpisodeServiceFixture.cs | Bin 6758 -> 6867 bytes .../IndexerSearch/SeriesSearchService.cs | 13 +++++-------- NzbDrone.Core/NzbDrone.Core.csproj | 3 +-- NzbDrone.Core/Tv/RefreshEpisodeService.cs | 7 ++----- NzbDrone.Core/Tv/RefreshSeriesService.cs | 11 +++++++++-- NzbDrone.Core/Tv/SeasonService.cs | Bin 4482 -> 0 bytes NzbDrone.Core/Tv/SeriesService.cs | 5 ----- 7 files changed, 17 insertions(+), 22 deletions(-) delete mode 100644 NzbDrone.Core/Tv/SeasonService.cs diff --git a/NzbDrone.Core.Test/TvTests/RefreshEpisodeServiceFixture.cs b/NzbDrone.Core.Test/TvTests/RefreshEpisodeServiceFixture.cs index a88d832eac9103b30f7371e042f752c0b2409914..a3cd0b10a189ac5b43d080b752031cf465f5207b 100644 GIT binary patch delta 523 zcmaE6a@lmlFJ_*y#3F^_)S}GPVg=htEIO_VKmg(E1*aw!=jQ>%74lNc6?`&_OKc!Q zb{d-2yj;9oAhj@1lv+|+ln2$iS&`*8^X9c2uNWuq6}UNBo=;@54h!Gp^MXo~U3nf( zUdy4e`97~N)8@Sb&MY9_ zUtE${Qd%6JmR~gaE~joivdb0RQ%i!uz5qK7<|q(NoM&+B&~r>l(EtSi#P15#P=>c( zX>L+#5ioQNbrgJIjs$Yk5_5`E6>2eq2;|_@g3RLl6i{G;oa_qaO@1IOq7G&2x#btR zCMIWSq$=3jDWvKl8(mUVnmYNNh|=U<{x}YpQIqRMb=e@kob1P~G+ACuaxy=stBQYK ZPNj2xUP)qR9u~7~6+nhsJndf2QI$N+xTOM@FBtln}m%RH_M4{Wd;EEu4ugg diff --git a/NzbDrone.Core/IndexerSearch/SeriesSearchService.cs b/NzbDrone.Core/IndexerSearch/SeriesSearchService.cs index 1d2e85ab1..c073096d6 100644 --- a/NzbDrone.Core/IndexerSearch/SeriesSearchService.cs +++ b/NzbDrone.Core/IndexerSearch/SeriesSearchService.cs @@ -9,17 +9,17 @@ namespace NzbDrone.Core.IndexerSearch { public class SeriesSearchService : IExecute { - private readonly ISeasonService _seasonService; + private readonly ISeriesService _seriesService; private readonly ISearchForNzb _nzbSearchService; private readonly IDownloadApprovedReports _downloadApprovedReports; private readonly Logger _logger; - public SeriesSearchService(ISeasonService seasonService, + public SeriesSearchService(ISeriesService seriesService, ISearchForNzb nzbSearchService, IDownloadApprovedReports downloadApprovedReports, Logger logger) { - _seasonService = seasonService; + _seriesService = seriesService; _nzbSearchService = nzbSearchService; _downloadApprovedReports = downloadApprovedReports; _logger = logger; @@ -27,14 +27,11 @@ namespace NzbDrone.Core.IndexerSearch public void Execute(SeriesSearchCommand message) { - var seasons = _seasonService.GetSeasonsBySeries(message.SeriesId) - .Where(s => s.SeasonNumber > 0) - .OrderBy(s => s.SeasonNumber) - .ToList(); + var series = _seriesService.GetSeries(message.SeriesId); var downloadedCount = 0; - foreach (var season in seasons) + foreach (var season in series.Seasons) { var decisions = _nzbSearchService.SeasonSearch(message.SeriesId, season.SeasonNumber); downloadedCount += _downloadApprovedReports.DownloadApproved(decisions).Count; diff --git a/NzbDrone.Core/NzbDrone.Core.csproj b/NzbDrone.Core/NzbDrone.Core.csproj index 2ef60e047..197d06090 100644 --- a/NzbDrone.Core/NzbDrone.Core.csproj +++ b/NzbDrone.Core/NzbDrone.Core.csproj @@ -419,7 +419,6 @@ - @@ -596,4 +595,4 @@ --> - + \ No newline at end of file diff --git a/NzbDrone.Core/Tv/RefreshEpisodeService.cs b/NzbDrone.Core/Tv/RefreshEpisodeService.cs index e5d63d3ad..3ad4ff209 100644 --- a/NzbDrone.Core/Tv/RefreshEpisodeService.cs +++ b/NzbDrone.Core/Tv/RefreshEpisodeService.cs @@ -15,15 +15,12 @@ namespace NzbDrone.Core.Tv public class RefreshEpisodeService : IRefreshEpisodeService { private readonly IEpisodeService _episodeService; - private readonly ISeasonService _seasonService; private readonly IMessageAggregator _messageAggregator; private readonly Logger _logger; - public RefreshEpisodeService(IEpisodeService episodeService, - ISeasonService seasonService, IMessageAggregator messageAggregator, Logger logger) + public RefreshEpisodeService(IEpisodeService episodeService, IMessageAggregator messageAggregator, Logger logger) { _episodeService = episodeService; - _seasonService = seasonService; _messageAggregator = messageAggregator; _logger = logger; } @@ -35,7 +32,7 @@ namespace NzbDrone.Core.Tv var failCount = 0; var existingEpisodes = _episodeService.GetEpisodeBySeries(series.Id); - var seasons = _seasonService.GetSeasonsBySeries(series.Id); + var seasons = series.Seasons; var updateList = new List(); var newList = new List(); diff --git a/NzbDrone.Core/Tv/RefreshSeriesService.cs b/NzbDrone.Core/Tv/RefreshSeriesService.cs index a84d60f86..1a8556374 100644 --- a/NzbDrone.Core/Tv/RefreshSeriesService.cs +++ b/NzbDrone.Core/Tv/RefreshSeriesService.cs @@ -79,8 +79,15 @@ namespace NzbDrone.Core.Tv foreach (var season in seriesInfo.Seasons) { var existingSeason = series.Seasons.SingleOrDefault(s => s.SeasonNumber == season.SeasonNumber); - - if (existingSeason != null) + + //Todo: Should this should use the previous season's monitored state? + if (existingSeason == null) + { + _logger.Trace("New season ({0}) for series: [{1}] {2}, setting monitored to true", season.SeasonNumber, series.TvdbId, series.Title); + season.Monitored = true; + } + + else { season.Monitored = existingSeason.Monitored; } diff --git a/NzbDrone.Core/Tv/SeasonService.cs b/NzbDrone.Core/Tv/SeasonService.cs deleted file mode 100644 index 9b576fbbb2b0852c0b61ee24aa9451d0e130039d..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 4482 zcmeH_%WA_g5JkH-_#bAOK=B9kwP*t&5VEMd4~jE20!K0$+2EG^dnHS?otRR(EQ~gK zaOckT88;+V33*2rPuYvEDlDwjin28-G_tr)lctyKwz_neG*RM&REq*(_iEcdkGpEu0Zh zf7~3GE`+Z+`z-ztn-!HHf{Q+I_gmxI$W~YcgW{-F)qU$uAd1N*Aqoiaq6#JmW&h+IZ<_n98l_;3r+GgvN1!wEm{Kg$V^GqXwbz9e`$;gHuq z`!&$@mq_?eQ~EKdLE9KLkL!N8IQL=f*CUU?;_#RQlD6JP>NfC(@GCcp%k025#W KOyIu|NRuyrf7lTK diff --git a/NzbDrone.Core/Tv/SeriesService.cs b/NzbDrone.Core/Tv/SeriesService.cs index 0693fd4e0..95daaa417 100644 --- a/NzbDrone.Core/Tv/SeriesService.cs +++ b/NzbDrone.Core/Tv/SeriesService.cs @@ -119,11 +119,6 @@ namespace NzbDrone.Core.Tv public Series UpdateSeries(Series series) { - foreach (var season in series.Seasons) - { - _episodeService.SetEpisodeMonitoredBySeason(series.Id, season.SeasonNumber, season.Monitored); - } - return _seriesRepository.Update(series); }