From a26163b64651f4924d8707b87bb7d2b5dc06fb42 Mon Sep 17 00:00:00 2001 From: Qstick Date: Tue, 20 Dec 2022 17:27:41 -0600 Subject: [PATCH] Cleanup Trakt implementation --- .../Trakt/List/TraktListRequestGenerator.cs | 2 +- .../ImportLists/Trakt/Popular/TraktPopularParser.cs | 6 +++--- .../Trakt/Popular/TraktPopularRequestGenerator.cs | 2 +- .../ImportLists/Trakt/TraktImportBase.cs | 3 ++- src/NzbDrone.Core/ImportLists/Trakt/TraktParser.cs | 12 ++++++------ .../Trakt/User/TraktUserRequestGenerator.cs | 2 +- 6 files changed, 14 insertions(+), 13 deletions(-) diff --git a/src/NzbDrone.Core/ImportLists/Trakt/List/TraktListRequestGenerator.cs b/src/NzbDrone.Core/ImportLists/Trakt/List/TraktListRequestGenerator.cs index da666cc3f..1f96c224a 100644 --- a/src/NzbDrone.Core/ImportLists/Trakt/List/TraktListRequestGenerator.cs +++ b/src/NzbDrone.Core/ImportLists/Trakt/List/TraktListRequestGenerator.cs @@ -28,7 +28,7 @@ namespace NzbDrone.Core.ImportLists.Trakt.List link += $"/users/{Settings.Username.Trim()}/lists/{Settings.Listname.ToUrlSlug()}/items/shows?limit={Settings.Limit}"; - var request = new ImportListRequest($"{link}", HttpAccept.Json); + var request = new ImportListRequest(link, HttpAccept.Json); request.HttpRequest.Headers.Add("trakt-api-version", "2"); request.HttpRequest.Headers.Add("trakt-api-key", ClientId); diff --git a/src/NzbDrone.Core/ImportLists/Trakt/Popular/TraktPopularParser.cs b/src/NzbDrone.Core/ImportLists/Trakt/Popular/TraktPopularParser.cs index e25d39b53..006e1f7ef 100644 --- a/src/NzbDrone.Core/ImportLists/Trakt/Popular/TraktPopularParser.cs +++ b/src/NzbDrone.Core/ImportLists/Trakt/Popular/TraktPopularParser.cs @@ -1,6 +1,6 @@ using System.Collections.Generic; -using Newtonsoft.Json; using NzbDrone.Common.Extensions; +using NzbDrone.Common.Serializer; using NzbDrone.Core.Parser.Model; namespace NzbDrone.Core.ImportLists.Trakt.Popular @@ -30,11 +30,11 @@ namespace NzbDrone.Core.ImportLists.Trakt.Popular if (_settings.TraktListType == (int)TraktPopularListType.Popular) { - jsonResponse = JsonConvert.DeserializeObject>(_importResponse.Content); + jsonResponse = STJson.Deserialize>(_importResponse.Content); } else { - jsonResponse = JsonConvert.DeserializeObject>(_importResponse.Content).SelectList(c => c.Show); + jsonResponse = STJson.Deserialize>(_importResponse.Content).SelectList(c => c.Show); } // no movies were return diff --git a/src/NzbDrone.Core/ImportLists/Trakt/Popular/TraktPopularRequestGenerator.cs b/src/NzbDrone.Core/ImportLists/Trakt/Popular/TraktPopularRequestGenerator.cs index 86f0f9661..80d19cb04 100644 --- a/src/NzbDrone.Core/ImportLists/Trakt/Popular/TraktPopularRequestGenerator.cs +++ b/src/NzbDrone.Core/ImportLists/Trakt/Popular/TraktPopularRequestGenerator.cs @@ -67,7 +67,7 @@ namespace NzbDrone.Core.ImportLists.Trakt.Popular var filtersAndLimit = $"?years={Settings.Years}&genres={Settings.Genres?.ToLower()}&ratings={Settings.Rating}&limit={Settings.Limit}{Settings.TraktAdditionalParameters}"; link += filtersAndLimit; - var request = new ImportListRequest($"{link}", HttpAccept.Json); + var request = new ImportListRequest(link, HttpAccept.Json); request.HttpRequest.Headers.Add("trakt-api-version", "2"); request.HttpRequest.Headers.Add("trakt-api-key", ClientId); diff --git a/src/NzbDrone.Core/ImportLists/Trakt/TraktImportBase.cs b/src/NzbDrone.Core/ImportLists/Trakt/TraktImportBase.cs index da8330c7a..79922f3f4 100644 --- a/src/NzbDrone.Core/ImportLists/Trakt/TraktImportBase.cs +++ b/src/NzbDrone.Core/ImportLists/Trakt/TraktImportBase.cs @@ -45,6 +45,7 @@ namespace NzbDrone.Core.ImportLists.Trakt } var generator = GetRequestGenerator(); + return FetchItems(g => g.GetListItems(), true); } @@ -132,7 +133,7 @@ namespace NzbDrone.Core.ImportLists.Trakt var token = response.Resource; Settings.AccessToken = token.AccessToken; Settings.Expires = DateTime.UtcNow.AddSeconds(token.ExpiresIn); - Settings.RefreshToken = token.RefreshToken != null ? token.RefreshToken : Settings.RefreshToken; + Settings.RefreshToken = token.RefreshToken ?? Settings.RefreshToken; if (Definition.Id > 0) { diff --git a/src/NzbDrone.Core/ImportLists/Trakt/TraktParser.cs b/src/NzbDrone.Core/ImportLists/Trakt/TraktParser.cs index 9a51ae377..cd0bb73c0 100644 --- a/src/NzbDrone.Core/ImportLists/Trakt/TraktParser.cs +++ b/src/NzbDrone.Core/ImportLists/Trakt/TraktParser.cs @@ -1,7 +1,7 @@ using System.Collections.Generic; using System.Net; -using Newtonsoft.Json; using NzbDrone.Common.Extensions; +using NzbDrone.Common.Serializer; using NzbDrone.Core.ImportLists.Exceptions; using NzbDrone.Core.Parser.Model; @@ -26,20 +26,20 @@ namespace NzbDrone.Core.ImportLists.Trakt return series; } - var jsonResponse = JsonConvert.DeserializeObject>(_importResponse.Content); + var jsonResponse = STJson.Deserialize>(_importResponse.Content); - // no movies were return + // no series were return if (jsonResponse == null) { return series; } - foreach (var movie in jsonResponse) + foreach (var show in jsonResponse) { series.AddIfNotNull(new ImportListItemInfo() { - Title = movie.Show.Title, - TvdbId = movie.Show.Ids.Tvdb.GetValueOrDefault() + Title = show.Show.Title, + TvdbId = show.Show.Ids.Tvdb.GetValueOrDefault() }); } diff --git a/src/NzbDrone.Core/ImportLists/Trakt/User/TraktUserRequestGenerator.cs b/src/NzbDrone.Core/ImportLists/Trakt/User/TraktUserRequestGenerator.cs index 6bdb0b6f2..53f75dc7b 100644 --- a/src/NzbDrone.Core/ImportLists/Trakt/User/TraktUserRequestGenerator.cs +++ b/src/NzbDrone.Core/ImportLists/Trakt/User/TraktUserRequestGenerator.cs @@ -41,7 +41,7 @@ namespace NzbDrone.Core.ImportLists.Trakt.User break; } - var request = new ImportListRequest($"{link}", HttpAccept.Json); + var request = new ImportListRequest(link, HttpAccept.Json); request.HttpRequest.Headers.Add("trakt-api-version", "2"); request.HttpRequest.Headers.Add("trakt-api-key", ClientId);