mirror of
https://github.com/collinbarrett/FilterLists.git
synced 2026-03-11 09:04:27 +00:00
feat(archival): ✨ support getting file extension from non-absolute URIs
This commit is contained in:
parent
68b6b297f6
commit
350334ddde
2 changed files with 22 additions and 12 deletions
|
|
@ -0,0 +1,20 @@
|
|||
using System;
|
||||
using System.IO;
|
||||
|
||||
namespace FilterLists.Archival.Domain.Extensions
|
||||
{
|
||||
public static class UriExtension
|
||||
{
|
||||
private static readonly Uri DummyBaseUri = new Uri("http://localhost");
|
||||
|
||||
public static string GetFileExtension(this Uri uri)
|
||||
{
|
||||
if (!uri.IsAbsoluteUri)
|
||||
{
|
||||
uri = new Uri(DummyBaseUri, uri);
|
||||
}
|
||||
|
||||
return Path.GetExtension(uri.LocalPath);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
@ -1,7 +1,6 @@
|
|||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.IO;
|
||||
using System.Linq;
|
||||
using FilterLists.Archival.Domain.Extensions;
|
||||
using FilterLists.Archival.Domain.SeedWork;
|
||||
|
||||
namespace FilterLists.Archival.Domain.Lists
|
||||
|
|
@ -56,16 +55,7 @@ private ListFileExtension(string value)
|
|||
|
||||
public static ListFileExtension FromUri(Uri uri)
|
||||
{
|
||||
_ = uri ?? throw new ArgumentNullException(nameof(uri));
|
||||
|
||||
if (!uri.IsAbsoluteUri)
|
||||
{
|
||||
// TODO: implement
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
|
||||
var extension = Path.GetExtension(Uri.UnescapeDataString(uri.Segments.Last()));
|
||||
return new ListFileExtension(extension);
|
||||
return new ListFileExtension(uri.GetFileExtension());
|
||||
}
|
||||
|
||||
protected override IEnumerable<object> GetEqualityComponents()
|
||||
|
|
|
|||
Loading…
Reference in a new issue