Moved Regex for baseUrl to Globalbase
This commit is contained in:
parent
660f6a1648
commit
7a14583d6a
@ -1,4 +1,5 @@
|
|||||||
using System.Globalization;
|
using System.Globalization;
|
||||||
|
using System.Text.RegularExpressions;
|
||||||
using Logging;
|
using Logging;
|
||||||
using Newtonsoft.Json;
|
using Newtonsoft.Json;
|
||||||
using Tranga.LibraryConnectors;
|
using Tranga.LibraryConnectors;
|
||||||
@ -14,6 +15,7 @@ public abstract class GlobalBase
|
|||||||
protected HashSet<LibraryConnector> libraryConnectors { get; init; }
|
protected HashSet<LibraryConnector> libraryConnectors { get; init; }
|
||||||
protected List<Manga> cachedPublications { get; init; }
|
protected List<Manga> cachedPublications { get; init; }
|
||||||
protected static readonly NumberFormatInfo numberFormatDecimalPoint = new (){ NumberDecimalSeparator = "." };
|
protected static readonly NumberFormatInfo numberFormatDecimalPoint = new (){ NumberDecimalSeparator = "." };
|
||||||
|
protected static readonly Regex baseUrlRex = new(@"https?:\/\/[0-9A-z\.]*");
|
||||||
|
|
||||||
protected GlobalBase(GlobalBase clone)
|
protected GlobalBase(GlobalBase clone)
|
||||||
{
|
{
|
||||||
|
@ -22,10 +22,9 @@ public abstract class LibraryConnector : GlobalBase
|
|||||||
protected LibraryConnector(GlobalBase clone, string baseUrl, string auth, LibraryType libraryType) : base(clone)
|
protected LibraryConnector(GlobalBase clone, string baseUrl, string auth, LibraryType libraryType) : base(clone)
|
||||||
{
|
{
|
||||||
Log($"Creating libraryConnector {Enum.GetName(libraryType)}");
|
Log($"Creating libraryConnector {Enum.GetName(libraryType)}");
|
||||||
Regex urlRex = new(@"https?:\/\/[0-9A-z\.]*");
|
if (!baseUrlRex.IsMatch(baseUrl))
|
||||||
if (!urlRex.IsMatch(baseUrl))
|
|
||||||
throw new ArgumentException("Base url does not match pattern");
|
throw new ArgumentException("Base url does not match pattern");
|
||||||
this.baseUrl = urlRex.Match(baseUrl).Value;
|
this.baseUrl = baseUrlRex.Match(baseUrl).Value;
|
||||||
this.auth = auth;
|
this.auth = auth;
|
||||||
this.libraryType = libraryType;
|
this.libraryType = libraryType;
|
||||||
}
|
}
|
||||||
|
@ -13,7 +13,9 @@ public class Gotify : NotificationConnector
|
|||||||
[JsonConstructor]
|
[JsonConstructor]
|
||||||
public Gotify(GlobalBase clone, string endpoint, string appToken) : base(clone, NotificationConnectorType.Gotify)
|
public Gotify(GlobalBase clone, string endpoint, string appToken) : base(clone, NotificationConnectorType.Gotify)
|
||||||
{
|
{
|
||||||
this.endpoint = endpoint;
|
if (!baseUrlRex.IsMatch(endpoint))
|
||||||
|
throw new ArgumentException("endpoint does not match pattern");
|
||||||
|
this.endpoint = baseUrlRex.Match(endpoint).Value;;
|
||||||
this.appToken = appToken;
|
this.appToken = appToken;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user