Back to before AA
This commit is contained in:
@ -3,7 +3,6 @@ using Microsoft.Extensions.Configuration;
|
||||
using Microsoft.Extensions.Logging;
|
||||
using Phares.Shared;
|
||||
using ShellProgressBar;
|
||||
using System.Collections.ObjectModel;
|
||||
using System.Text;
|
||||
using View_by_Distance.Metadata.Models;
|
||||
using View_by_Distance.Rename.Models;
|
||||
@ -16,9 +15,6 @@ namespace View_by_Distance.Rename;
|
||||
public class Rename
|
||||
{
|
||||
|
||||
private record Result(string File,
|
||||
ReadOnlyDictionary<string, MetadataExtractorDirectory> KeyValuePairs);
|
||||
|
||||
private record Record(int Index,
|
||||
bool IsIgnoreExtension,
|
||||
bool IsValidImageFormatExtension,
|
||||
@ -52,12 +48,6 @@ public class Rename
|
||||
logger?.LogInformation("{RootDirectory}", propertyConfiguration.RootDirectory);
|
||||
Property.Models.Configuration.Verify(propertyConfiguration, requireExist: false);
|
||||
Verify();
|
||||
List<string> linesB = IteratedRenameFilesInDirectories(logger);
|
||||
if (linesB.Count != 0)
|
||||
{
|
||||
File.WriteAllLines($"D:/Tmp/Phares/{DateTime.Now.Ticks}.tsv", linesB);
|
||||
_ = Shared.Models.Stateless.Methods.IPath.DeleteEmptyDirectories(propertyConfiguration.RootDirectory);
|
||||
}
|
||||
List<string> lines = RenameFilesInDirectories(logger);
|
||||
if (lines.Count != 0)
|
||||
{
|
||||
@ -82,25 +72,6 @@ public class Rename
|
||||
throw new NullReferenceException(nameof(_PropertyConfiguration));
|
||||
}
|
||||
|
||||
private static Action<string> GetResultCollection(A_Metadata metadata, List<Result> results, Action tick)
|
||||
{
|
||||
tick.Invoke();
|
||||
return file => results.Add(new(file, metadata.GetMetadataCollection(file)));
|
||||
}
|
||||
|
||||
private List<string> IteratedRenameFilesInDirectories(ILogger? logger)
|
||||
{
|
||||
List<string> old = [];
|
||||
List<Result> results = [];
|
||||
string rootDirectoryFullPath = Path.GetFullPath(_PropertyConfiguration.RootDirectory);
|
||||
ParallelOptions parallelOptions = new() { MaxDegreeOfParallelism = _AppSettings.MaxDegreeOfParallelism };
|
||||
IEnumerable<string> files = Directory.EnumerateFiles(rootDirectoryFullPath, "*", SearchOption.AllDirectories);
|
||||
A_Metadata metadata = new(_PropertyConfiguration, _Configuration.ForceMetadataLastWriteTimeToCreationTime, _Configuration.PropertiesChangedForMetadata);
|
||||
ProgressBar progressBar = new(short.MaxValue, "EnumerateFiles load", new ProgressBarOptions() { ProgressCharacter = '─', ProgressBarOnBottom = true, DisableBottomPercentage = true });
|
||||
files.AsParallel().ForAll(GetResultCollection(metadata, results, () => progressBar.Tick()));
|
||||
return old;
|
||||
}
|
||||
|
||||
private List<string> RenameFilesInDirectories(ILogger? logger)
|
||||
{
|
||||
List<string> results = [];
|
||||
|
Reference in New Issue
Block a user