aboutsummaryrefslogtreecommitdiff
path: root/MediaBrowser.XbmcMetadata
diff options
context:
space:
mode:
authorDavid <daullmer@gmail.com>2021-03-06 14:50:27 +0100
committerDavid <daullmer@gmail.com>2021-03-06 14:50:27 +0100
commit6f898145afe013d7dfcd47fbc6adab9316e2dd63 (patch)
treee10a2fadb5b4bba723de026f76673ea2b378b788 /MediaBrowser.XbmcMetadata
parent16694b0cfcc51ba009a0aedce0d383ab010e8b99 (diff)
Use Uri.TryCreate and ImageType helper method
Diffstat (limited to 'MediaBrowser.XbmcMetadata')
-rw-r--r--MediaBrowser.XbmcMetadata/Parsers/BaseNfoParser.cs41
1 files changed, 23 insertions, 18 deletions
diff --git a/MediaBrowser.XbmcMetadata/Parsers/BaseNfoParser.cs b/MediaBrowser.XbmcMetadata/Parsers/BaseNfoParser.cs
index aa89936d0..2e222c0a4 100644
--- a/MediaBrowser.XbmcMetadata/Parsers/BaseNfoParser.cs
+++ b/MediaBrowser.XbmcMetadata/Parsers/BaseNfoParser.cs
@@ -803,25 +803,11 @@ namespace MediaBrowser.XbmcMetadata.Parsers
break;
}
- ImageType imageType = artType switch
- {
- "banner" => ImageType.Banner,
- "clearlogo" => ImageType.Logo,
- "discart" => ImageType.Disc,
- "landscape" => ImageType.Thumb,
- "clearart" => ImageType.Art,
- // unknown type (including "poster") --> primary
- _ => ImageType.Primary,
- };
-
- Uri uri;
- try
- {
- uri = new Uri(val);
- }
- catch (UriFormatException ex)
+ ImageType imageType = GetImageType(artType);
+
+ if (!Uri.TryCreate(val, UriKind.Absolute, out var uri) || uri == null)
{
- Logger.LogError(ex, "Image location {Path} specified in nfo file for {ItemName} is not a valid URL or file path.", val, item.Name);
+ Logger.LogError("Image location {Path} specified in nfo file for {ItemName} is not a valid URL or file path.", val, item.Name);
break;
}
@@ -1256,5 +1242,24 @@ namespace MediaBrowser.XbmcMetadata.Parsers
return string.IsNullOrWhiteSpace(value) ? Array.Empty<string>() : value.Split(separator, StringSplitOptions.RemoveEmptyEntries);
}
+
+ /// <summary>
+ /// Parses the ImageType from the nfo aspect property.
+ /// </summary>
+ /// <param name="aspect">The nfo aspect property.</param>
+ /// <returns>The image type.</returns>
+ private static ImageType GetImageType(string aspect)
+ {
+ return aspect switch
+ {
+ "banner" => ImageType.Banner,
+ "clearlogo" => ImageType.Logo,
+ "discart" => ImageType.Disc,
+ "landscape" => ImageType.Thumb,
+ "clearart" => ImageType.Art,
+ // unknown type (including "poster") --> primary
+ _ => ImageType.Primary,
+ };
+ }
}
}