diff --git a/Tranga/Jobs/JobBoss.cs b/Tranga/Jobs/JobBoss.cs index 7817584..cd320ed 100644 --- a/Tranga/Jobs/JobBoss.cs +++ b/Tranga/Jobs/JobBoss.cs @@ -101,7 +101,7 @@ public class JobBoss : GlobalBase Chapter? chapter = null) { if (chapter is not null) - return GetJobsLike(mangaConnector?.name, chapter.Value.parentManga.internalId, chapter?.chapterNumber); + return GetJobsLike(mangaConnector?.name, chapter.Value.parentManga.internalId, chapter.Value.chapterNumber); else return GetJobsLike(mangaConnector?.name, publication?.internalId); } diff --git a/Tranga/Jobs/ProgressToken.cs b/Tranga/Jobs/ProgressToken.cs index b6b4167..e718c7d 100644 --- a/Tranga/Jobs/ProgressToken.cs +++ b/Tranga/Jobs/ProgressToken.cs @@ -26,7 +26,7 @@ public class ProgressToken private float GetProgress() { if(increments > 0 && incrementsCompleted > 0) - return (float)incrementsCompleted / (float)increments; + return incrementsCompleted / (float)increments; return 0; } diff --git a/Tranga/LibraryConnectors/LibraryManagerJsonConverter.cs b/Tranga/LibraryConnectors/LibraryManagerJsonConverter.cs index be8983f..23fbf3a 100644 --- a/Tranga/LibraryConnectors/LibraryManagerJsonConverter.cs +++ b/Tranga/LibraryConnectors/LibraryManagerJsonConverter.cs @@ -5,7 +5,7 @@ namespace Tranga.LibraryConnectors; public class LibraryManagerJsonConverter : JsonConverter { - private GlobalBase _clone; + private readonly GlobalBase _clone; internal LibraryManagerJsonConverter(GlobalBase clone) { diff --git a/Tranga/MangaConnectors/ChromiumDownloadClient.cs b/Tranga/MangaConnectors/ChromiumDownloadClient.cs index bb76009..9877a54 100644 --- a/Tranga/MangaConnectors/ChromiumDownloadClient.cs +++ b/Tranga/MangaConnectors/ChromiumDownloadClient.cs @@ -60,7 +60,7 @@ internal class ChromiumDownloadClient : DownloadClient protected override RequestResult MakeRequestInternal(string url, string? referrer = null) { - IPage page = this.browser!.NewPageAsync().Result; + IPage page = this.browser.NewPageAsync().Result; page.DefaultTimeout = 10000; IResponse response = page.GoToAsync(url, WaitUntilNavigation.DOMContentLoaded).Result; Log("Page loaded."); diff --git a/Tranga/MangaConnectors/MangaConnectorJsonConverter.cs b/Tranga/MangaConnectors/MangaConnectorJsonConverter.cs index b9f3af0..62f389b 100644 --- a/Tranga/MangaConnectors/MangaConnectorJsonConverter.cs +++ b/Tranga/MangaConnectors/MangaConnectorJsonConverter.cs @@ -6,12 +6,12 @@ namespace Tranga.MangaConnectors; public class MangaConnectorJsonConverter : JsonConverter { private GlobalBase _clone; - private HashSet connectors; + private readonly HashSet _connectors; internal MangaConnectorJsonConverter(GlobalBase clone, HashSet connectors) { this._clone = clone; - this.connectors = connectors; + this._connectors = connectors; } public override bool CanConvert(Type objectType) @@ -25,15 +25,15 @@ public class MangaConnectorJsonConverter : JsonConverter switch (jo.GetValue("name")!.Value()!) { case "MangaDex": - return this.connectors.First(c => c is MangaDex); + return this._connectors.First(c => c is MangaDex); case "Manganato": - return this.connectors.First(c => c is Manganato); + return this._connectors.First(c => c is Manganato); case "MangaKatana": - return this.connectors.First(c => c is MangaKatana); + return this._connectors.First(c => c is MangaKatana); case "Mangasee": - return this.connectors.First(c => c is Mangasee); + return this._connectors.First(c => c is Mangasee); case "Mangaworld": - return this.connectors.First(c => c is Mangaworld); + return this._connectors.First(c => c is Mangaworld); } throw new Exception(); diff --git a/Tranga/MangaConnectors/MangaDex.cs b/Tranga/MangaConnectors/MangaDex.cs index 89d7d2e..f7f05e5 100644 --- a/Tranga/MangaConnectors/MangaDex.cs +++ b/Tranga/MangaConnectors/MangaDex.cs @@ -1,5 +1,4 @@ -using System.Globalization; -using System.Net; +using System.Net; using System.Text.Json.Nodes; using System.Text.RegularExpressions; using Tranga.Jobs; @@ -67,7 +66,7 @@ public class MangaDex : MangaConnector if(MangaFromJsonObject((JsonObject) mangaNode) is { } manga) retManga.Add(manga); //Add Publication (Manga) to result } - }else continue; + }//else continue; } Log($"Retrieved {retManga.Count} publications. Term=\"{publicationTitle}\""); return retManga.ToArray(); @@ -247,7 +246,7 @@ public class MangaDex : MangaConnector { if (progressToken?.cancellationRequested ?? false) { - progressToken?.Cancel(); + progressToken.Cancel(); return HttpStatusCode.RequestTimeout; } diff --git a/Tranga/MangaConnectors/MangaKatana.cs b/Tranga/MangaConnectors/MangaKatana.cs index 70c60b2..10f301c 100644 --- a/Tranga/MangaConnectors/MangaKatana.cs +++ b/Tranga/MangaConnectors/MangaKatana.cs @@ -1,5 +1,4 @@ -using System.Globalization; -using System.Net; +using System.Net; using System.Text.RegularExpressions; using HtmlAgilityPack; using Tranga.Jobs; @@ -187,7 +186,7 @@ public class MangaKatana : MangaConnector { if (progressToken?.cancellationRequested ?? false) { - progressToken?.Cancel(); + progressToken.Cancel(); return HttpStatusCode.RequestTimeout; } diff --git a/Tranga/MangaConnectors/Manganato.cs b/Tranga/MangaConnectors/Manganato.cs index f66114a..7635fd5 100644 --- a/Tranga/MangaConnectors/Manganato.cs +++ b/Tranga/MangaConnectors/Manganato.cs @@ -1,5 +1,4 @@ -using System.Globalization; -using System.Net; +using System.Net; using System.Text.RegularExpressions; using HtmlAgilityPack; using Tranga.Jobs; @@ -179,7 +178,7 @@ public class Manganato : MangaConnector { if (progressToken?.cancellationRequested ?? false) { - progressToken?.Cancel(); + progressToken.Cancel(); return HttpStatusCode.RequestTimeout; } diff --git a/Tranga/MangaConnectors/Mangasee.cs b/Tranga/MangaConnectors/Mangasee.cs index 44010aa..33cffe9 100644 --- a/Tranga/MangaConnectors/Mangasee.cs +++ b/Tranga/MangaConnectors/Mangasee.cs @@ -2,7 +2,6 @@ using System.Text.RegularExpressions; using System.Xml.Linq; using HtmlAgilityPack; -using Newtonsoft.Json; using Tranga.Jobs; namespace Tranga.MangaConnectors; @@ -140,14 +139,14 @@ public class Mangasee : MangaConnector { if (progressToken?.cancellationRequested ?? false) { - progressToken?.Cancel(); + progressToken.Cancel(); return HttpStatusCode.RequestTimeout; } Manga chapterParentManga = chapter.parentManga; if (progressToken?.cancellationRequested ?? false) { - progressToken?.Cancel(); + progressToken.Cancel(); return HttpStatusCode.RequestTimeout; } diff --git a/Tranga/MangaConnectors/Mangaworld.cs b/Tranga/MangaConnectors/Mangaworld.cs index 8b47866..1939423 100644 --- a/Tranga/MangaConnectors/Mangaworld.cs +++ b/Tranga/MangaConnectors/Mangaworld.cs @@ -69,11 +69,8 @@ public class Mangaworld: MangaConnector private Manga ParseSinglePublicationFromHtml(HtmlDocument document, string publicationId) { - string status = ""; Dictionary altTitles = new(); Dictionary? links = null; - HashSet tags = new(); - string[] authors = Array.Empty(); string originalLanguage = ""; HtmlNode infoNode = document.DocumentNode.Descendants("div").First(d => d.HasClass("info")); @@ -90,13 +87,13 @@ public class Mangaworld: MangaConnector HtmlNode genresNode = metadata.SelectSingleNode("//span[text()='Generi: ']/.."); - tags = genresNode.SelectNodes("a").Select(node => node.InnerText).ToHashSet(); + HashSet tags = genresNode.SelectNodes("a").Select(node => node.InnerText).ToHashSet(); HtmlNode authorsNode = metadata.SelectSingleNode("//span[text()='Autore: ']/.."); - authors = new[] { authorsNode.SelectNodes("a").First().InnerText }; + string[] authors = new[] { authorsNode.SelectNodes("a").First().InnerText }; - status = metadata.SelectSingleNode("//span[text()='Stato: ']/..").SelectNodes("a").First().InnerText; + string status = metadata.SelectSingleNode("//span[text()='Stato: ']/..").SelectNodes("a").First().InnerText; string posterUrl = document.DocumentNode.SelectSingleNode("//img[@class='rounded']").GetAttributeValue("src", ""); @@ -169,7 +166,7 @@ public class Mangaworld: MangaConnector { if (progressToken?.cancellationRequested ?? false) { - progressToken?.Cancel(); + progressToken.Cancel(); return HttpStatusCode.RequestTimeout; } diff --git a/Tranga/TrangaArgs.cs b/Tranga/TrangaArgs.cs index 23be84e..86d9028 100644 --- a/Tranga/TrangaArgs.cs +++ b/Tranga/TrangaArgs.cs @@ -59,7 +59,7 @@ public partial class Tranga : GlobalBase private static void PrintHelp() { Console.WriteLine("Tranga-Help:"); - foreach (Argument argument in arguments.Values) + foreach (Argument argument in Arguments.Values) { foreach(string name in argument.names) Console.Write("{0} ", name); @@ -82,14 +82,14 @@ public partial class Tranga : GlobalBase { List argsList = args.ToList(); List ret = new(); - foreach (string name in arguments[arg].names) + foreach (string name in Arguments[arg].names) { int argIndex = argsList.IndexOf(name); if (argIndex != -1) { - if (arguments[arg].parameterCount == 0) + if (Arguments[arg].parameterCount == 0) return ret.ToArray(); - for (int parameterIndex = 1; parameterIndex <= arguments[arg].parameterCount; parameterIndex++) + for (int parameterIndex = 1; parameterIndex <= Arguments[arg].parameterCount; parameterIndex++) { if(argIndex + parameterIndex >= argsList.Count || args[argIndex + parameterIndex].Contains('-'))//End of arguments, or no parameter provided, when one is required Console.WriteLine($"No parameter provided for argument {name}. -h for help."); @@ -100,7 +100,7 @@ public partial class Tranga : GlobalBase return ret.Any() ? ret.ToArray() : null; } - private static Dictionary arguments = new() + private static readonly Dictionary Arguments = new() { { ArgEnum.DownloadLocation, new(new []{"-d", "--downloadLocation"}, 1, "Directory to which downloaded Manga are saved") }, { ArgEnum.WorkingDirectory, new(new []{"-w", "--workingDirectory"}, 1, "Directory in which application-data is saved") }, diff --git a/Tranga/TrangaSettings.cs b/Tranga/TrangaSettings.cs index 1da2d2e..ed613cc 100644 --- a/Tranga/TrangaSettings.cs +++ b/Tranga/TrangaSettings.cs @@ -46,7 +46,7 @@ public class TrangaSettings this.downloadLocation = downloadLocation!; this.workingDirectory = workingDirectory!; } - UpdateDownloadLocation(this.downloadLocation!, false); + UpdateDownloadLocation(this.downloadLocation, false); } public HashSet LoadLibraryConnectors(GlobalBase clone)