From 6534341fd5efff80cd41f14048924d66ee860a4c Mon Sep 17 00:00:00 2001 From: Glax Date: Mon, 16 Dec 2024 17:45:58 +0100 Subject: [PATCH] Library Connector Constructors --- API/Schema/LibraryConnectors/Kavita.cs | 20 +++++++++++++++----- API/Schema/LibraryConnectors/Komga.cs | 19 ++++++++++++++----- 2 files changed, 29 insertions(+), 10 deletions(-) diff --git a/API/Schema/LibraryConnectors/Kavita.cs b/API/Schema/LibraryConnectors/Kavita.cs index 4c6b595..51461c4 100644 --- a/API/Schema/LibraryConnectors/Kavita.cs +++ b/API/Schema/LibraryConnectors/Kavita.cs @@ -3,9 +3,19 @@ using System.Text.Json.Nodes; namespace API.Schema.LibraryConnectors; -public class Kavita(string baseUrl, string auth) - : LibraryConnector(TokenGen.CreateToken(typeof(Kavita), 64), LibraryType.Kavita, baseUrl, auth) +public class Kavita : LibraryConnector { + + public Kavita(string baseUrl, string auth) : base(TokenGen.CreateToken(typeof(Kavita), 64), LibraryType.Kavita, baseUrl, auth) + { + } + + public Kavita(string baseUrl, string username, string password) : + this(baseUrl, GetToken(baseUrl, username, password)) + { + } + + private static string GetToken(string baseUrl, string username, string password) { HttpClient client = new() @@ -43,13 +53,13 @@ public class Kavita(string baseUrl, string auth) protected override void UpdateLibraryInternal() { foreach (KavitaLibrary lib in GetLibraries()) - NetClient.MakePost($"{baseUrl}/api/Library/scan?libraryId={lib.id}", "Bearer", auth); + NetClient.MakePost($"{BaseUrl}/api/Library/scan?libraryId={lib.id}", "Bearer", Auth); } internal override bool Test() { foreach (KavitaLibrary lib in GetLibraries()) - if (NetClient.MakePost($"{baseUrl}/api/Library/scan?libraryId={lib.id}", "Bearer", auth)) + if (NetClient.MakePost($"{BaseUrl}/api/Library/scan?libraryId={lib.id}", "Bearer", Auth)) return true; return false; } @@ -60,7 +70,7 @@ public class Kavita(string baseUrl, string auth) /// Array of KavitaLibrary private IEnumerable GetLibraries() { - Stream data = NetClient.MakeRequest($"{baseUrl}/api/Library/libraries", "Bearer", auth); + Stream data = NetClient.MakeRequest($"{BaseUrl}/api/Library/libraries", "Bearer", Auth); if (data == Stream.Null) { return Array.Empty(); diff --git a/API/Schema/LibraryConnectors/Komga.cs b/API/Schema/LibraryConnectors/Komga.cs index 4098d74..36bc7ef 100644 --- a/API/Schema/LibraryConnectors/Komga.cs +++ b/API/Schema/LibraryConnectors/Komga.cs @@ -3,19 +3,28 @@ using System.Text.Json.Nodes; namespace API.Schema.LibraryConnectors; -public class Komga(string baseUrl, string auth) - : LibraryConnector(TokenGen.CreateToken(typeof(Komga), 64), LibraryType.Komga, baseUrl, auth) +public class Komga : LibraryConnector { + public Komga(string baseUrl, string auth) : base(TokenGen.CreateToken(typeof(Komga), 64), LibraryType.Komga, + baseUrl, auth) + { + } + + public Komga(string baseUrl, string username, string password) + : this(baseUrl, Convert.ToBase64String(System.Text.Encoding.ASCII.GetBytes($"{username}:{password}"))) + { + } + protected override void UpdateLibraryInternal() { foreach (KomgaLibrary lib in GetLibraries()) - NetClient.MakePost($"{baseUrl}/api/v1/libraries/{lib.id}/scan", "Basic", auth); + NetClient.MakePost($"{BaseUrl}/api/v1/libraries/{lib.id}/scan", "Basic", Auth); } internal override bool Test() { foreach (KomgaLibrary lib in GetLibraries()) - if (NetClient.MakePost($"{baseUrl}/api/v1/libraries/{lib.id}/scan", "Basic", auth)) + if (NetClient.MakePost($"{BaseUrl}/api/v1/libraries/{lib.id}/scan", "Basic", Auth)) return true; return false; } @@ -26,7 +35,7 @@ public class Komga(string baseUrl, string auth) /// Array of KomgaLibraries private IEnumerable GetLibraries() { - Stream data = NetClient.MakeRequest($"{baseUrl}/api/v1/libraries", "Basic", auth); + Stream data = NetClient.MakeRequest($"{BaseUrl}/api/v1/libraries", "Basic", Auth); if (data == Stream.Null) { return Array.Empty();