logger for !9

xmp and json sidecar support

Alignment with Phares 8.0.118.14905 for Shared and Metadata

A_Metadata

Parameter constructors

Removed force-property-last-write-time-to-creation-time

House Cleaning
This commit is contained in:
2025-07-27 10:57:26 -07:00
parent 30d8a270f9
commit 08164a880d
47 changed files with 1038 additions and 677 deletions

View File

@ -1,4 +1,5 @@
using System.Collections.ObjectModel;
using System.Diagnostics;
namespace View_by_Distance.Shared.Models.Stateless.Methods;
@ -302,7 +303,7 @@ internal abstract partial class XDirectory
internal static (string[], List<(FilePath, string)>) GetToDoCollection(Properties.IPropertyConfiguration propertyConfiguration, bool copyDuplicates, bool ifCanUseId, ReadOnlyCollection<ReadOnlyCollection<FilePath>> filePathsCollection, ReadOnlyDictionary<byte, ReadOnlyCollection<string>> fileGroups, ReadOnlyDictionary<int, ExifDirectory>? exifDirectoriesById, Action? tick)
{
List<(FilePath, string)> results = [];
string paddedId;
string? paddedId;
string checkFile;
string directory;
FilePath filePath;
@ -353,10 +354,7 @@ internal abstract partial class XDirectory
{ }
}
if (exifDirectoriesById is null || !exifDirectoriesById.TryGetValue(filePath.Id.Value, out exifDirectory))
{
hasIgnoreKeyword = filePath.HasIgnoreKeyword;
hasDateTimeOriginal = filePath.HasDateTimeOriginal;
}
paddedId = IId.GetPaddedId(propertyConfiguration, filePath, i);
else
{
dateTime = IDate.GetDateTimeOriginal(exifDirectory);
@ -365,8 +363,8 @@ internal abstract partial class XDirectory
continue;
keywords = MetaBase.GetKeywords(exifDirectory?.ExifBaseDirectories);
hasIgnoreKeyword = propertyConfiguration.IgnoreRulesKeyWords.Any(keywords.Contains);
paddedId = IId.GetPaddedId(propertyConfiguration, filePath, hasIgnoreKeyword, hasDateTimeOriginal, i);
}
paddedId = IId.GetPaddedId(propertyConfiguration, filePath.Id.Value, filePath.ExtensionLowered, hasIgnoreKeyword, hasDateTimeOriginal, i);
paddedIdFile = Path.Combine(filePath.DirectoryFullPath, $"{paddedId}{filePath.ExtensionLowered}");
if (!File.Exists(paddedIdFile))
{
@ -384,15 +382,20 @@ internal abstract partial class XDirectory
else
{
if (filePath.Id is null)
throw new NullReferenceException(nameof(filePath.Id));
intelligentId = IId.GetIntelligentId(propertyConfiguration, filePath.Id.Value, filePath.ExtensionLowered, filePath.HasIgnoreKeyword, filePath.HasDateTimeOriginal);
{
if (Debugger.IsAttached)
continue;
else
throw new NullReferenceException(nameof(filePath.Id));
}
intelligentId = IId.GetIntelligentId(propertyConfiguration, filePath);
if (!isOffsetDeterministicHashCode)
checkFile = Path.Combine(directory, $"{intelligentId}{filePath.ExtensionLowered}");
else
{
if (filePath.DirectoryFullPath is null)
continue;
paddedId = IId.GetPaddedId(propertyConfiguration, filePath.Id.Value, filePath.ExtensionLowered, filePath.HasIgnoreKeyword, filePath.HasDateTimeOriginal, i);
paddedId = IId.GetPaddedId(propertyConfiguration, filePath, i);
paddedIdFile = Path.Combine(filePath.DirectoryFullPath, $"{paddedId}{filePath.ExtensionLowered}");
if (File.Exists(paddedIdFile))
continue;