RelativePropertyCollectionFile

aMetadataCollectionDirectory
Work with video
FilePath.IsIgnore
Removed IId IsIgnore
Keywords
RootAmazon
SaveAmazon
PhysicalFileProvider Message
Bump
HarFilesDirectory
This commit is contained in:
2024-01-21 19:11:59 -07:00
parent 684ba1f0df
commit d1557e1d85
40 changed files with 748 additions and 160 deletions

View File

@ -1,3 +1,4 @@
using System.Collections.ObjectModel;
using View_by_Distance.Shared.Models;
namespace View_by_Distance.Metadata.Models.Stateless.Methods;
@ -5,7 +6,7 @@ namespace View_by_Distance.Metadata.Models.Stateless.Methods;
internal static class Base
{
internal static string GetMaker(ExifDirectoryBase[]? exifBaseDirectories)
internal static string? GetMaker(ExifDirectoryBase[]? exifBaseDirectories)
{
string? result = null;
if (exifBaseDirectories is not null)
@ -23,12 +24,10 @@ internal static class Base
}
}
}
if (string.IsNullOrEmpty(result))
result = "Unknown";
return result;
}
internal static string GetModel(ExifDirectoryBase[]? exifBaseDirectories)
internal static string? GetModel(ExifDirectoryBase[]? exifBaseDirectories)
{
string? result = null;
if (exifBaseDirectories is not null)
@ -46,9 +45,24 @@ internal static class Base
}
}
}
if (string.IsNullOrEmpty(result))
result = "Unknown";
return result;
}
internal static ReadOnlyCollection<string> GetKeywords(ExifDirectoryBase[]? exifBaseDirectories)
{
List<string> results = [];
if (exifBaseDirectories is not null)
{
string value;
foreach (ExifDirectoryBase exifDirectoryBase in exifBaseDirectories)
{
value = exifDirectoryBase?.WinKeywords is null ? string.Empty : exifDirectoryBase.WinKeywords.ToString().Trim();
if (string.IsNullOrEmpty(value))
continue;
results.Add(value);
}
}
return new(results);
}
}

View File

@ -1,4 +1,5 @@
using MetadataExtractor;
using System.Collections.ObjectModel;
using View_by_Distance.Shared.Models;
namespace View_by_Distance.Metadata.Models.Stateless.Methods;
@ -19,16 +20,21 @@ public interface IMetadata
static ExifDirectory GetExifDirectory(FilePath filePath, DeterministicHashCode deterministicHashCode) =>
Exif.GetExifDirectory(filePath, deterministicHashCode);
string TestStatic_GetMaker(ExifDirectory? exifDirectory) =>
string? TestStatic_GetMaker(ExifDirectory? exifDirectory) =>
GetMaker(exifDirectory);
static string GetMaker(ExifDirectory? exifDirectory) =>
static string? GetMaker(ExifDirectory? exifDirectory) =>
Base.GetMaker(exifDirectory?.ExifBaseDirectories);
string TestStatic_GetModel(ExifDirectory? exifDirectory) =>
string? TestStatic_GetModel(ExifDirectory? exifDirectory) =>
GetModel(exifDirectory);
static string GetModel(ExifDirectory? exifDirectory) =>
static string? GetModel(ExifDirectory? exifDirectory) =>
Base.GetModel(exifDirectory?.ExifBaseDirectories);
ReadOnlyCollection<string> TestStatic_GetKeywords(ExifDirectory? exifDirectory) =>
GetKeywords(exifDirectory);
static ReadOnlyCollection<string> GetKeywords(ExifDirectory? exifDirectory) =>
Base.GetKeywords(exifDirectory?.ExifBaseDirectories);
string? TestStatic_GetOutputResolution(ExifDirectory? exifDirectory) =>
GetOutputResolution(exifDirectory);
static string? GetOutputResolution(ExifDirectory? exifDirectory) =>