From 02cb12bdb8f836e399d278cb0d224cc9cc4293d8 Mon Sep 17 00:00:00 2001 From: Mark McDowall Date: Wed, 25 Jan 2012 17:02:21 -0800 Subject: [PATCH] BacklogSetting refactoring. --- .../JobTests/BacklogSearchJobTest.cs | 40 +++++++++---------- .../JobTests/RecentBacklogSearchJobTest.cs | 30 +++++++------- .../Datastore/Migrations/Migration20120123.cs | 3 +- NzbDrone.Core/Jobs/BacklogSearchJob.cs | 4 +- NzbDrone.Core/Jobs/RecentBacklogSearchJob.cs | 4 +- NzbDrone.Core/Model/BacklogSettingType.cs | 9 +++++ NzbDrone.Core/Model/BacklogStatusType.cs | 9 ----- NzbDrone.Core/NzbDrone.Core.csproj | 2 +- NzbDrone.Core/Providers/SeriesProvider.cs | 8 ++-- NzbDrone.Core/Repository/Series.cs | 2 +- NzbDrone.Web/Controllers/SeriesController.cs | 22 +++++----- NzbDrone.Web/Models/SeriesModel.cs | 4 +- .../Series/EditorTemplates/SeriesModel.cshtml | 6 +-- NzbDrone.Web/Views/Series/MassEdit.cshtml | 6 +-- NzbDrone.Web/Views/Series/SeriesItem.cshtml | 2 +- 15 files changed, 75 insertions(+), 76 deletions(-) create mode 100644 NzbDrone.Core/Model/BacklogSettingType.cs delete mode 100644 NzbDrone.Core/Model/BacklogStatusType.cs diff --git a/NzbDrone.Core.Test/JobTests/BacklogSearchJobTest.cs b/NzbDrone.Core.Test/JobTests/BacklogSearchJobTest.cs index 173f05893..ee8f0bf98 100644 --- a/NzbDrone.Core.Test/JobTests/BacklogSearchJobTest.cs +++ b/NzbDrone.Core.Test/JobTests/BacklogSearchJobTest.cs @@ -57,7 +57,7 @@ namespace NzbDrone.Core.Test.JobTests var series = Builder.CreateNew() .With(s => s.Monitored = true) - .With(s => s.BacklogStatus = BacklogStatusType.Enable) + .With(s => s.BacklogSetting = BacklogSettingType.Enable) .Build(); var episodes = Builder.CreateListOfSize(1) @@ -93,7 +93,7 @@ namespace NzbDrone.Core.Test.JobTests var series = Builder.CreateNew() .With(s => s.Monitored = true) - .With(s => s.BacklogStatus = BacklogStatusType.Enable) + .With(s => s.BacklogSetting = BacklogSettingType.Enable) .Build(); var episodes = Builder.CreateListOfSize(5) @@ -129,7 +129,7 @@ namespace NzbDrone.Core.Test.JobTests var series = Builder.CreateNew() .With(s => s.Monitored = true) - .With(s => s.BacklogStatus = BacklogStatusType.Enable) + .With(s => s.BacklogSetting = BacklogSettingType.Enable) .Build(); var episodes = Builder.CreateListOfSize(5) @@ -169,7 +169,7 @@ namespace NzbDrone.Core.Test.JobTests var series = Builder.CreateNew() .With(s => s.Monitored = true) - .With(s => s.BacklogStatus = BacklogStatusType.Enable) + .With(s => s.BacklogSetting = BacklogSettingType.Enable) .Build(); var episodes = Builder.CreateListOfSize(5) @@ -210,12 +210,12 @@ namespace NzbDrone.Core.Test.JobTests var series = Builder.CreateNew() .With(s => s.Monitored = true) - .With(s => s.BacklogStatus = BacklogStatusType.Enable) + .With(s => s.BacklogSetting = BacklogSettingType.Enable) .Build(); var series2 = Builder.CreateNew() .With(s => s.Monitored = true) - .With(s => s.BacklogStatus = BacklogStatusType.Enable) + .With(s => s.BacklogSetting = BacklogSettingType.Enable) .Build(); var episodes = Builder.CreateListOfSize(10) @@ -260,10 +260,10 @@ namespace NzbDrone.Core.Test.JobTests var series = Builder.CreateListOfSize(2) .TheFirst(1) .With(s => s.Monitored = false) - .With(s => s.BacklogStatus = BacklogStatusType.Enable) + .With(s => s.BacklogSetting = BacklogSettingType.Enable) .TheNext(1) .With(s => s.Monitored = true) - .With(s => s.BacklogStatus = BacklogStatusType.Enable) + .With(s => s.BacklogSetting = BacklogSettingType.Enable) .Build(); var episodes = Builder.CreateListOfSize(11) @@ -295,13 +295,13 @@ namespace NzbDrone.Core.Test.JobTests var series = Builder.CreateListOfSize(3) .TheFirst(1) .With(s => s.Monitored = true) - .With(s => s.BacklogStatus = BacklogStatusType.Disable) + .With(s => s.BacklogSetting = BacklogSettingType.Disable) .TheNext(1) .With(s => s.Monitored = true) - .With(s => s.BacklogStatus = BacklogStatusType.Enable) + .With(s => s.BacklogSetting = BacklogSettingType.Enable) .TheNext(1) .With(s => s.Monitored = true) - .With(s => s.BacklogStatus = BacklogStatusType.Inherit) + .With(s => s.BacklogSetting = BacklogSettingType.Inherit) .Build(); var episodes = Builder.CreateListOfSize(12) @@ -323,9 +323,9 @@ namespace NzbDrone.Core.Test.JobTests //Assert result.Should().NotBeEmpty(); - result.Should().Contain(s => s.Series.BacklogStatus == BacklogStatusType.Enable); - result.Should().NotContain(s => s.Series.BacklogStatus == BacklogStatusType.Disable); - result.Should().NotContain(s => s.Series.BacklogStatus == BacklogStatusType.Inherit); + result.Should().Contain(s => s.Series.BacklogSetting == BacklogSettingType.Enable); + result.Should().NotContain(s => s.Series.BacklogSetting == BacklogSettingType.Disable); + result.Should().NotContain(s => s.Series.BacklogSetting == BacklogSettingType.Inherit); } [Test] @@ -335,13 +335,13 @@ namespace NzbDrone.Core.Test.JobTests var series = Builder.CreateListOfSize(3) .TheFirst(1) .With(s => s.Monitored = true) - .With(s => s.BacklogStatus = BacklogStatusType.Disable) + .With(s => s.BacklogSetting = BacklogSettingType.Disable) .TheNext(1) .With(s => s.Monitored = true) - .With(s => s.BacklogStatus = BacklogStatusType.Enable) + .With(s => s.BacklogSetting = BacklogSettingType.Enable) .TheNext(1) .With(s => s.Monitored = true) - .With(s => s.BacklogStatus = BacklogStatusType.Inherit) + .With(s => s.BacklogSetting = BacklogSettingType.Inherit) .Build(); var episodes = Builder.CreateListOfSize(12) @@ -363,9 +363,9 @@ namespace NzbDrone.Core.Test.JobTests //Assert result.Should().NotBeEmpty(); - result.Should().Contain(s => s.Series.BacklogStatus == BacklogStatusType.Enable); - result.Should().NotContain(s => s.Series.BacklogStatus == BacklogStatusType.Disable); - result.Should().Contain(s => s.Series.BacklogStatus == BacklogStatusType.Inherit); + result.Should().Contain(s => s.Series.BacklogSetting == BacklogSettingType.Enable); + result.Should().NotContain(s => s.Series.BacklogSetting == BacklogSettingType.Disable); + result.Should().Contain(s => s.Series.BacklogSetting == BacklogSettingType.Inherit); } } } diff --git a/NzbDrone.Core.Test/JobTests/RecentBacklogSearchJobTest.cs b/NzbDrone.Core.Test/JobTests/RecentBacklogSearchJobTest.cs index 61da40eac..31e9c6d19 100644 --- a/NzbDrone.Core.Test/JobTests/RecentBacklogSearchJobTest.cs +++ b/NzbDrone.Core.Test/JobTests/RecentBacklogSearchJobTest.cs @@ -55,7 +55,7 @@ namespace NzbDrone.Core.Test.JobTests var series = Builder.CreateNew() .With(s => s.Monitored = true) - .With(s => s.BacklogStatus = BacklogStatusType.Enable) + .With(s => s.BacklogSetting = BacklogSettingType.Enable) .Build(); //Setup @@ -104,10 +104,10 @@ namespace NzbDrone.Core.Test.JobTests var series = Builder.CreateListOfSize(2) .TheFirst(1) .With(s => s.Monitored = false) - .With(s => s.BacklogStatus = BacklogStatusType.Enable) + .With(s => s.BacklogSetting = BacklogSettingType.Enable) .TheNext(1) .With(s => s.Monitored = true) - .With(s => s.BacklogStatus = BacklogStatusType.Enable) + .With(s => s.BacklogSetting = BacklogSettingType.Enable) .Build(); var episodes = Builder.CreateListOfSize(11) @@ -139,13 +139,13 @@ namespace NzbDrone.Core.Test.JobTests var series = Builder.CreateListOfSize(3) .TheFirst(1) .With(s => s.Monitored = true) - .With(s => s.BacklogStatus = BacklogStatusType.Disable) + .With(s => s.BacklogSetting = BacklogSettingType.Disable) .TheNext(1) .With(s => s.Monitored = true) - .With(s => s.BacklogStatus = BacklogStatusType.Enable) + .With(s => s.BacklogSetting = BacklogSettingType.Enable) .TheNext(1) .With(s => s.Monitored = true) - .With(s => s.BacklogStatus = BacklogStatusType.Inherit) + .With(s => s.BacklogSetting = BacklogSettingType.Inherit) .Build(); var episodes = Builder.CreateListOfSize(12) @@ -167,9 +167,9 @@ namespace NzbDrone.Core.Test.JobTests //Assert result.Should().NotBeEmpty(); - result.Should().Contain(s => s.Series.BacklogStatus == BacklogStatusType.Enable); - result.Should().NotContain(s => s.Series.BacklogStatus == BacklogStatusType.Disable); - result.Should().NotContain(s => s.Series.BacklogStatus == BacklogStatusType.Inherit); + result.Should().Contain(s => s.Series.BacklogSetting == BacklogSettingType.Enable); + result.Should().NotContain(s => s.Series.BacklogSetting == BacklogSettingType.Disable); + result.Should().NotContain(s => s.Series.BacklogSetting == BacklogSettingType.Inherit); } [Test] @@ -179,13 +179,13 @@ namespace NzbDrone.Core.Test.JobTests var series = Builder.CreateListOfSize(3) .TheFirst(1) .With(s => s.Monitored = true) - .With(s => s.BacklogStatus = BacklogStatusType.Disable) + .With(s => s.BacklogSetting = BacklogSettingType.Disable) .TheNext(1) .With(s => s.Monitored = true) - .With(s => s.BacklogStatus = BacklogStatusType.Enable) + .With(s => s.BacklogSetting = BacklogSettingType.Enable) .TheNext(1) .With(s => s.Monitored = true) - .With(s => s.BacklogStatus = BacklogStatusType.Inherit) + .With(s => s.BacklogSetting = BacklogSettingType.Inherit) .Build(); var episodes = Builder.CreateListOfSize(12) @@ -207,9 +207,9 @@ namespace NzbDrone.Core.Test.JobTests //Assert result.Should().NotBeEmpty(); - result.Should().Contain(s => s.Series.BacklogStatus == BacklogStatusType.Enable); - result.Should().NotContain(s => s.Series.BacklogStatus == BacklogStatusType.Disable); - result.Should().Contain(s => s.Series.BacklogStatus == BacklogStatusType.Inherit); + result.Should().Contain(s => s.Series.BacklogSetting == BacklogSettingType.Enable); + result.Should().NotContain(s => s.Series.BacklogSetting == BacklogSettingType.Disable); + result.Should().Contain(s => s.Series.BacklogSetting == BacklogSettingType.Inherit); } } diff --git a/NzbDrone.Core/Datastore/Migrations/Migration20120123.cs b/NzbDrone.Core/Datastore/Migrations/Migration20120123.cs index de038c726..13cf157ed 100644 --- a/NzbDrone.Core/Datastore/Migrations/Migration20120123.cs +++ b/NzbDrone.Core/Datastore/Migrations/Migration20120123.cs @@ -8,8 +8,7 @@ namespace NzbDrone.Core.Datastore.Migrations { protected override void MainDbUpgrade() { - Database.AddColumn("Series", "BacklogStatus", DbType.Int32, ColumnProperty.Null); - Database.ExecuteNonQuery("UPDATE Series SET BacklogStatus = 2"); + Database.AddColumn("Series", "BacklogSetting", DbType.Int32, ColumnProperty.Null); } } } \ No newline at end of file diff --git a/NzbDrone.Core/Jobs/BacklogSearchJob.cs b/NzbDrone.Core/Jobs/BacklogSearchJob.cs index 1029ab4e2..a12c40307 100644 --- a/NzbDrone.Core/Jobs/BacklogSearchJob.cs +++ b/NzbDrone.Core/Jobs/BacklogSearchJob.cs @@ -92,7 +92,7 @@ namespace NzbDrone.Core.Jobs { Logger.Trace("Backlog searching is not enabled, only running for explicitly enabled series."); return _episodeProvider.EpisodesWithoutFiles(true).Where(e => - e.Series.BacklogStatus == BacklogStatusType.Enable && + e.Series.BacklogSetting == BacklogSettingType.Enable && e.Series.Monitored ).ToList(); } @@ -101,7 +101,7 @@ namespace NzbDrone.Core.Jobs { Logger.Trace("Backlog searching is enabled, skipping explicity disabled series."); return _episodeProvider.EpisodesWithoutFiles(true).Where(e => - e.Series.BacklogStatus != BacklogStatusType.Disable && + e.Series.BacklogSetting != BacklogSettingType.Disable && e.Series.Monitored ).ToList(); } diff --git a/NzbDrone.Core/Jobs/RecentBacklogSearchJob.cs b/NzbDrone.Core/Jobs/RecentBacklogSearchJob.cs index 7714ce0c4..58f606508 100644 --- a/NzbDrone.Core/Jobs/RecentBacklogSearchJob.cs +++ b/NzbDrone.Core/Jobs/RecentBacklogSearchJob.cs @@ -54,7 +54,7 @@ namespace NzbDrone.Core.Jobs Logger.Trace("Backlog searching is not enabled, only running for explicitly enabled series."); return _episodeProvider.EpisodesWithoutFiles(true).Where(e => e.AirDate >= DateTime.Today.AddDays(-30) && - e.Series.BacklogStatus == BacklogStatusType.Enable && + e.Series.BacklogSetting == BacklogSettingType.Enable && e.Series.Monitored ).ToList(); } @@ -64,7 +64,7 @@ namespace NzbDrone.Core.Jobs Logger.Trace("Backlog searching is enabled, skipping explicity disabled series."); return _episodeProvider.EpisodesWithoutFiles(true).Where(e => e.AirDate >= DateTime.Today.AddDays(-30) && - e.Series.BacklogStatus != BacklogStatusType.Disable && + e.Series.BacklogSetting != BacklogSettingType.Disable && e.Series.Monitored ).ToList(); } diff --git a/NzbDrone.Core/Model/BacklogSettingType.cs b/NzbDrone.Core/Model/BacklogSettingType.cs new file mode 100644 index 000000000..f7089a0f2 --- /dev/null +++ b/NzbDrone.Core/Model/BacklogSettingType.cs @@ -0,0 +1,9 @@ +namespace NzbDrone.Core.Model +{ + public enum BacklogSettingType + { + Inherit = 0, + Enable = 1, + Disable = 2 + } +} diff --git a/NzbDrone.Core/Model/BacklogStatusType.cs b/NzbDrone.Core/Model/BacklogStatusType.cs deleted file mode 100644 index 3755333f8..000000000 --- a/NzbDrone.Core/Model/BacklogStatusType.cs +++ /dev/null @@ -1,9 +0,0 @@ -namespace NzbDrone.Core.Model -{ - public enum BacklogStatusType - { - Disable = 0, - Enable = 1, - Inherit = 2 - } -} diff --git a/NzbDrone.Core/NzbDrone.Core.csproj b/NzbDrone.Core/NzbDrone.Core.csproj index 8d18c6047..60ab76876 100644 --- a/NzbDrone.Core/NzbDrone.Core.csproj +++ b/NzbDrone.Core/NzbDrone.Core.csproj @@ -229,7 +229,7 @@ - + diff --git a/NzbDrone.Core/Providers/SeriesProvider.cs b/NzbDrone.Core/Providers/SeriesProvider.cs index 0a63dc0b8..d2ac506e3 100644 --- a/NzbDrone.Core/Providers/SeriesProvider.cs +++ b/NzbDrone.Core/Providers/SeriesProvider.cs @@ -46,7 +46,7 @@ namespace NzbDrone.Core.Providers { var series = _database .Fetch(@"SELECT Series.SeriesId, Series.Title, Series.CleanTitle, Series.Status, Series.Overview, Series.AirsDayOfWeek,Series.AirTimes, - Series.Language, Series.Path, Series.Monitored, Series.QualityProfileId, Series.SeasonFolder, Series.BacklogStatus, + Series.Language, Series.Path, Series.Monitored, Series.QualityProfileId, Series.SeasonFolder, Series.BacklogSetting, SUM(CASE WHEN Ignored = 0 AND Airdate <= @0 THEN 1 ELSE 0 END) AS EpisodeCount, SUM(CASE WHEN Episodes.Ignored = 0 AND Episodes.EpisodeFileId > 0 AND Episodes.AirDate <= @0 THEN 1 ELSE 0 END) as EpisodeFileCount, MAX(Episodes.SeasonNumber) as SeasonCount, MIN(CASE WHEN AirDate < @0 OR Ignored = 1 THEN NULL ELSE AirDate END) as NextAiring, @@ -56,7 +56,7 @@ namespace NzbDrone.Core.Providers LEFT JOIN Episodes ON Series.SeriesId = Episodes.SeriesId WHERE Series.LastInfoSync IS NOT NULL GROUP BY Series.SeriesId, Series.Title, Series.CleanTitle, Series.Status, Series.Overview, Series.AirsDayOfWeek,Series.AirTimes, - Series.Language, Series.Path, Series.Monitored, Series.QualityProfileId, Series.SeasonFolder, Series.BacklogStatus, + Series.Language, Series.Path, Series.Monitored, Series.QualityProfileId, Series.SeasonFolder, Series.BacklogSetting, QualityProfiles.QualityProfileId, QualityProfiles.Name, QualityProfiles.Cutoff, QualityProfiles.SonicAllowed", DateTime.Today); return series; @@ -120,7 +120,7 @@ namespace NzbDrone.Core.Providers repoSeries.QualityProfileId = _configProvider.DefaultQualityProfile; repoSeries.SeasonFolder = _configProvider.UseSeasonFolder; - repoSeries.BacklogStatus = BacklogStatusType.Inherit; + repoSeries.BacklogSetting = BacklogSettingType.Inherit; _database.Insert(repoSeries); } @@ -212,7 +212,7 @@ namespace NzbDrone.Core.Providers series.QualityProfileId = edited.QualityProfileId; series.Monitored = edited.Monitored; series.SeasonFolder = edited.SeasonFolder; - series.BacklogStatus = edited.BacklogStatus; + series.BacklogSetting = edited.BacklogSetting; series.Path = edited.Path; } diff --git a/NzbDrone.Core/Repository/Series.cs b/NzbDrone.Core/Repository/Series.cs index df9cc5839..82f8ebfd7 100644 --- a/NzbDrone.Core/Repository/Series.cs +++ b/NzbDrone.Core/Repository/Series.cs @@ -44,7 +44,7 @@ namespace NzbDrone.Core.Repository public bool IsDaily { get; set; } - public BacklogStatusType BacklogStatus { get; set; } + public BacklogSettingType BacklogSetting { get; set; } /// /// Gets or sets a value indicating whether this is hidden. diff --git a/NzbDrone.Web/Controllers/SeriesController.cs b/NzbDrone.Web/Controllers/SeriesController.cs index 881cd423b..7821f92dc 100644 --- a/NzbDrone.Web/Controllers/SeriesController.cs +++ b/NzbDrone.Web/Controllers/SeriesController.cs @@ -51,12 +51,12 @@ namespace NzbDrone.Web.Controllers var backlogStatusTypes = new List>(); - foreach (BacklogStatusType backlogStatusType in Enum.GetValues(typeof(BacklogStatusType))) + foreach (BacklogSettingType backlogStatusType in Enum.GetValues(typeof(BacklogSettingType))) { backlogStatusTypes.Add(new KeyValuePair((int)backlogStatusType, backlogStatusType.ToString())); } - ViewData["BacklogStatusSelectList"] = new SelectList(backlogStatusTypes, "Key", "Value"); + ViewData["BacklogSettingSelectList"] = new SelectList(backlogStatusTypes, "Key", "Value"); return View(); } @@ -70,14 +70,14 @@ namespace NzbDrone.Web.Controllers [AcceptVerbs(HttpVerbs.Post)] [GridAction] - public ActionResult _SaveAjaxSeriesEditing(int id, string path, bool monitored, bool seasonFolder, int qualityProfileId, int backlogStatus) + public ActionResult _SaveAjaxSeriesEditing(int id, string path, bool monitored, bool seasonFolder, int qualityProfileId, int backlogSetting) { var oldSeries = _seriesProvider.GetSeries(id); oldSeries.Monitored = monitored; oldSeries.SeasonFolder = seasonFolder; oldSeries.QualityProfileId = qualityProfileId; oldSeries.Path = path; - oldSeries.BacklogStatus = (BacklogStatusType)backlogStatus; + oldSeries.BacklogSetting = (BacklogSettingType)backlogSetting; _seriesProvider.UpdateSeries(oldSeries); @@ -179,18 +179,18 @@ namespace NzbDrone.Web.Controllers }, "Key", "Value" ); - var backlogStatusTypes = new List>(); + var backlogSettingTypes = new List>(); - foreach (BacklogStatusType backlogStatusType in Enum.GetValues(typeof(BacklogStatusType))) + foreach (BacklogSettingType backlogSettingType in Enum.GetValues(typeof(BacklogSettingType))) { - backlogStatusTypes.Add(new KeyValuePair((int)backlogStatusType, backlogStatusType.ToString())); + backlogSettingTypes.Add(new KeyValuePair((int)backlogSettingType, backlogSettingType.ToString())); } - ViewData["BacklogStatusTypes"] = backlogStatusTypes; + ViewData["BacklogSettingTypes"] = backlogSettingTypes; - var masterBacklogList = backlogStatusTypes.ToList(); + var masterBacklogList = backlogSettingTypes.ToList(); masterBacklogList.Insert(0, new KeyValuePair(-10, "Unchanged")); - ViewData["MasterBacklogStatusSelectList"] = new SelectList(masterBacklogList, "Key", "Value"); + ViewData["MasterBacklogSettingSelectList"] = new SelectList(masterBacklogList, "Key", "Value"); var series = _seriesProvider.GetAllSeries().OrderBy(o => SortHelper.SkipArticles(o.Title)); @@ -221,7 +221,7 @@ namespace NzbDrone.Web.Controllers QualityProfileId = s.QualityProfileId, QualityProfileName = s.QualityProfile.Name, SeasonFolder = s.SeasonFolder, - BacklogStatus = (int)s.BacklogStatus, + BacklogSetting = (int)s.BacklogSetting, Status = s.Status, SeasonsCount = s.SeasonCount, EpisodeCount = s.EpisodeCount, diff --git a/NzbDrone.Web/Models/SeriesModel.cs b/NzbDrone.Web/Models/SeriesModel.cs index d1b8d5e05..33e42943c 100644 --- a/NzbDrone.Web/Models/SeriesModel.cs +++ b/NzbDrone.Web/Models/SeriesModel.cs @@ -44,8 +44,8 @@ namespace NzbDrone.Web.Models [Description("Should NzbDrone download episodes for this series?")] public bool Monitored { get; set; } - [DisplayName("Backlog Status")] + [DisplayName("Backlog Setting")] [Description("Should NzbDrone download past missing episodes?")] - public int BacklogStatus { get; set; } + public int BacklogSetting { get; set; } } } \ No newline at end of file diff --git a/NzbDrone.Web/Views/Series/EditorTemplates/SeriesModel.cshtml b/NzbDrone.Web/Views/Series/EditorTemplates/SeriesModel.cshtml index 22c0342ca..fe0b7fa74 100644 --- a/NzbDrone.Web/Views/Series/EditorTemplates/SeriesModel.cshtml +++ b/NzbDrone.Web/Views/Series/EditorTemplates/SeriesModel.cshtml @@ -30,9 +30,9 @@ @Html.DescriptionFor(m => m.Path) @Html.TextBoxFor(m => m.Path, new { @class = "inputClass" }) -