This commit is contained in:
2023-11-11 23:08:32 -07:00
parent 0a940b4cee
commit 669762bdc9
20 changed files with 108 additions and 118 deletions

View File

@ -19,15 +19,15 @@ internal abstract class Container
else
containerMaximumDateTime = (from l in items select l.ImageFileHolder.LastWriteTime).Max();
if (containerMinimumDateTime is null || containerMaximumDateTime is null)
results = Array.Empty<DateTime>();
results = [];
else
results = new DateTime[] { containerMinimumDateTime.Value, containerMaximumDateTime.Value };
results = [containerMinimumDateTime.Value, containerMaximumDateTime.Value];
return results;
}
internal static Models.Item[] GetFilterItems(Properties.IPropertyConfiguration propertyConfiguration, Models.Container container)
{
List<Models.Item> results = new();
List<Models.Item> results = [];
foreach (Models.Item item in container.Items)
{
if (item.ImageFileHolder is not null
@ -68,7 +68,7 @@ internal abstract class Container
string pathDirectoryName = Path.GetFileName(Path.GetDirectoryName(filePair.Path) ?? filePair.Path);
string? alternateFile = alternateFilesCollectionDirectory is null ? null : Path.Combine(alternateFilesCollectionDirectory, pathDirectoryName, $"{Path.GetFileName(filePair.Path)}.tsv");
if (!File.Exists(alternateFile))
results = Array.Empty<string>();
results = [];
else
results = File.ReadAllLines(alternateFile);
return results;
@ -79,24 +79,24 @@ internal abstract class Container
string[] results;
Models.Property? result;
if (filePair.Match is null)
(result, results) = (null, Array.Empty<string>());
(result, results) = (null, []);
else
{
string json = File.ReadAllText(filePair.Match);
if (string.IsNullOrEmpty(json))
(result, results) = (null, Array.Empty<string>());
(result, results) = (null, []);
else
{
result = JsonSerializer.Deserialize(json, PropertyGenerationContext.Default.Property);
if (result is null)
results = Array.Empty<string>();
results = [];
else
{
results = alternateFilesCollectionDirectory is null ? Array.Empty<string>() : GetAlternateFileLines(alternateFilesCollectionDirectory, filePair);
results = alternateFilesCollectionDirectory is null ? [] : GetAlternateFileLines(alternateFilesCollectionDirectory, filePair);
if (results.Any(l => l.Contains('!')))
{
if (result.Keywords is null)
result = Models.Property.GetProperty(result, new string[] { "!" });
result = Models.Property.GetProperty(result, ["!"]);
else
result = Models.Property.GetProperty(result, result.Keywords.Concat(new string[] { "!" }).ToArray());
}
@ -139,7 +139,7 @@ internal abstract class Container
private static List<FilePair> GetFilePairs(Properties.IPropertyConfiguration propertyConfiguration, string aPropertySingletonDirectory, string filesCollectionDirectory, string extension, List<Models.FilePair> filePairs)
{
List<FilePair> results = new();
List<FilePair> results = [];
int maxDegreeOfParallelism = Environment.ProcessorCount;
string? alternateResultAllInOne = !propertyConfiguration.ResultAllInOne.Contains(' ') ? null : propertyConfiguration.ResultAllInOne.Replace(' ', '-');
string? alternateFilesCollectionDirectory = alternateResultAllInOne is null ? null : Path.Combine(Path.GetDirectoryName(filesCollectionDirectory) ?? filesCollectionDirectory, alternateResultAllInOne);
@ -151,13 +151,13 @@ internal abstract class Container
private static (int, Models.Container[]) GetContainers(Properties.IPropertyConfiguration propertyConfiguration, string aPropertySingletonDirectory, string filesCollectionDirectory, List<string[]> filesCollection, string directorySearchFilter)
{
List<Models.Container> results = new();
List<Models.Container> results = [];
string? directory;
List<Models.Item>? items;
Models.Container container;
const string extension = ".json";
List<string> directories = new();
Dictionary<string, List<Models.Item>> directoryToItems = new();
List<string> directories = [];
Dictionary<string, List<Models.Item>> directoryToItems = [];
foreach (string[] files in filesCollection)
{
if (files.Length == 0)
@ -169,7 +169,7 @@ internal abstract class Container
directories.Add(directory);
if (!directoryToItems.TryGetValue(directory, out items))
{
directoryToItems.Add(directory, new());
directoryToItems.Add(directory, []);
if (!directoryToItems.TryGetValue(directory, out items))
throw new Exception();
}
@ -182,7 +182,7 @@ internal abstract class Container
continue;
if (!directoryToItems.TryGetValue(filePair.Directory, out items))
{
directoryToItems.Add(filePair.Directory, new());
directoryToItems.Add(filePair.Directory, []);
if (!directoryToItems.TryGetValue(filePair.Directory, out items))
throw new Exception();
}
@ -221,7 +221,7 @@ internal abstract class Container
internal static List<int> GetFilteredDistinctIds(Properties.IPropertyConfiguration propertyConfiguration, Models.Container[] containers)
{
List<int> results = new();
List<int> results = [];
Models.Item[] filteredItems;
foreach (Models.Container container in containers)
{
@ -244,8 +244,8 @@ internal abstract class Container
internal static ReadOnlyCollection<Models.Item> GetItems(Properties.IPropertyConfiguration propertyConfiguration, ReadOnlyCollection<Models.Container> containers, bool distinctItems, bool filterItems)
{
List<Models.Item> results = new();
List<int> distinct = new();
List<Models.Item> results = [];
List<int> distinct = [];
IEnumerable<Models.Item> filteredItems;
foreach (Models.Container container in containers)
{