Removed
VerifyPersonContainersDisplayDirectoryAllFiles, SaveOne, SaveParents, GetRelations, CleanDisplayDirectoryAllFilesAndWriteTicksGed
This commit is contained in:
@ -5,7 +5,7 @@ namespace View_by_Distance.Shared.Models.Stateless.Methods;
|
||||
internal abstract class PersonContainer
|
||||
{
|
||||
|
||||
private static string[] GetFiles(string personDisplayDirectory, bool isDefaultName)
|
||||
private static List<string> GetFiles(string personDisplayDirectory, bool isDefaultName)
|
||||
{
|
||||
List<string> results = new();
|
||||
string[] files;
|
||||
@ -58,12 +58,12 @@ internal abstract class PersonContainer
|
||||
results.Add(file);
|
||||
}
|
||||
}
|
||||
return results.ToArray();
|
||||
return results;
|
||||
}
|
||||
|
||||
private static string[] GetFiles(string facesFileNameExtension, string personDisplayDirectory, bool isDefaultName)
|
||||
private static List<string> GetFiles(string facesFileNameExtension, string personDisplayDirectory, bool isDefaultName)
|
||||
{
|
||||
string[] results;
|
||||
List<string> results;
|
||||
int? id;
|
||||
string checkFile;
|
||||
int? wholePercentages;
|
||||
@ -96,11 +96,13 @@ internal abstract class PersonContainer
|
||||
{
|
||||
List<Models.PersonContainer> results = new();
|
||||
long personKey;
|
||||
string[] files;
|
||||
const int zero = 0;
|
||||
Models.Person person;
|
||||
string personKeyDirectory;
|
||||
Models.PersonContainer personContainer;
|
||||
Models.PersonBirthday[] orderedPersonBirthdays;
|
||||
string[] personDisplayDirectoryAllFiles = GetFiles(facesFileNameExtension, personDisplayDirectory, isDefaultName);
|
||||
List<string> personDisplayDirectoryAllFiles = GetFiles(facesFileNameExtension, personDisplayDirectory, isDefaultName);
|
||||
foreach ((string personKeyFormatted, Models.PersonBirthday personBirthday) in collection)
|
||||
{
|
||||
orderedPersonBirthdays = (from l in collection where !l.PersonKeyFormatted.Contains(numberSign) orderby l.PersonBirthday.Value.Ticks descending select l.PersonBirthday).ToArray();
|
||||
@ -112,8 +114,13 @@ internal abstract class PersonContainer
|
||||
continue;
|
||||
personKey = orderedPersonBirthdays[zero].Value.Ticks;
|
||||
}
|
||||
person = IPerson.GetPerson(mappingDefaultName, personCharacters, personDisplayDirectoryName, personDisplayDirectoryAllFiles, personKey);
|
||||
personContainer = new(approximateYears, orderedPersonBirthdays, personDisplayDirectoryAllFiles, personDisplayDirectoryName, personKey, person, personDirectory);
|
||||
personKeyDirectory = Path.Combine(personDisplayDirectory, personKeyFormatted);
|
||||
files = Directory.GetFiles(personKeyDirectory, "*", SearchOption.AllDirectories);
|
||||
if (!files.Any())
|
||||
continue;
|
||||
personDisplayDirectoryAllFiles.AddRange(files.Where(l => l.EndsWith(".rel")));
|
||||
person = IPerson.GetPerson(mappingDefaultName, personCharacters, personDisplayDirectoryName, personDisplayDirectoryAllFiles.ToArray(), personKey);
|
||||
personContainer = new(approximateYears, orderedPersonBirthdays, personDisplayDirectoryAllFiles.ToArray(), personDisplayDirectoryName, personKey, person, personDirectory);
|
||||
results.Add(personContainer);
|
||||
}
|
||||
return results;
|
||||
@ -161,7 +168,7 @@ internal abstract class PersonContainer
|
||||
string[] personKeyDirectories;
|
||||
string? personDisplayDirectoryName;
|
||||
Models.PersonContainer personContainer;
|
||||
string[] personDisplayDirectoryAllFiles;
|
||||
List<string> personDisplayDirectoryAllFiles;
|
||||
List<Models.PersonContainer> personContainers;
|
||||
List<(string, Models.PersonBirthday)> collection;
|
||||
foreach (string personDisplayDirectory in personDisplayDirectories)
|
||||
@ -182,7 +189,7 @@ internal abstract class PersonContainer
|
||||
}
|
||||
if (changes.Any(l => l is not null))
|
||||
continue;
|
||||
if (collection.Any())
|
||||
if (collection.Count > 0)
|
||||
{
|
||||
personContainers = GetPersonContainersCollections(mappingDefaultName, facesFileNameExtension, personCharacters, personDirectory, numberSign, personDisplayDirectory, personDisplayDirectoryName, isDefaultName, approximateYears, collection);
|
||||
results.AddRange(personContainers);
|
||||
@ -190,7 +197,7 @@ internal abstract class PersonContainer
|
||||
else
|
||||
{
|
||||
personDisplayDirectoryAllFiles = GetFiles(facesFileNameExtension, personDisplayDirectory, isDefaultName);
|
||||
personContainer = new(approximateYears, personDisplayDirectoryAllFiles, personDisplayDirectoryName, personDirectory);
|
||||
personContainer = new(approximateYears, personDisplayDirectoryAllFiles.ToArray(), personDisplayDirectoryName, personDirectory);
|
||||
results.Add(personContainer);
|
||||
}
|
||||
}
|
||||
@ -247,20 +254,22 @@ internal abstract class PersonContainer
|
||||
private static List<Models.PersonContainer> GetPersonContainersGroups(string mappingDefaultName, string personBirthdayFormat, string facesFileNameExtension, char[] personCharacters, string[] groupDirectories)
|
||||
{
|
||||
List<Models.PersonContainer> results;
|
||||
const int zero = 0;
|
||||
List<string?> changes;
|
||||
string groupDirectoryName;
|
||||
List<string?> allChanges = new();
|
||||
List<Models.PersonContainer> collection;
|
||||
List<Models.PersonContainer> personContainers = new();
|
||||
foreach (string groupDirectory in groupDirectories)
|
||||
for (int i = 0; i < personCharacters.Length; i++)
|
||||
{
|
||||
groupDirectoryName = Path.GetFileName(groupDirectory);
|
||||
if (!personCharacters.Contains(groupDirectoryName[zero]))
|
||||
continue;
|
||||
(changes, collection) = GetPersonContainersInnerGroups(mappingDefaultName, personBirthdayFormat, facesFileNameExtension, personCharacters, groupDirectory, groupDirectoryName);
|
||||
allChanges.AddRange(changes);
|
||||
personContainers.AddRange(collection);
|
||||
foreach (string groupDirectory in groupDirectories)
|
||||
{
|
||||
groupDirectoryName = Path.GetFileName(groupDirectory);
|
||||
if (personCharacters[i] != groupDirectoryName.First())
|
||||
continue;
|
||||
(changes, collection) = GetPersonContainersInnerGroups(mappingDefaultName, personBirthdayFormat, facesFileNameExtension, personCharacters, groupDirectory, groupDirectoryName);
|
||||
allChanges.AddRange(changes);
|
||||
personContainers.AddRange(collection);
|
||||
}
|
||||
}
|
||||
if (allChanges.Any(l => l is not null))
|
||||
throw new NotImplementedException($"A directory was changed restart to look for more! {string.Join(Environment.NewLine, (from l in allChanges where l is not null select l).ToArray())}");
|
||||
@ -313,7 +322,7 @@ internal abstract class PersonContainer
|
||||
long personKey;
|
||||
foreach (Models.PersonContainer personContainer in personContainers)
|
||||
{
|
||||
if (personContainer.Person is null || personContainer.Key is null || personContainer.Birthdays is null || !personContainer.Birthdays.Any())
|
||||
if (personContainer.Person is null || personContainer.Key is null || personContainer.Birthdays is null || personContainer.Birthdays.Length == 0)
|
||||
continue;
|
||||
foreach (Models.PersonBirthday personBirthday in personContainer.Birthdays)
|
||||
{
|
||||
@ -332,7 +341,7 @@ internal abstract class PersonContainer
|
||||
string personKeyFormatted;
|
||||
foreach (Models.PersonContainer personContainer in personContainers)
|
||||
{
|
||||
if (personContainer.Key is null || personContainer.Birthdays is null || personContainer.Person is null || personContainer.PersonDirectory is null || !personContainer.Birthdays.Any())
|
||||
if (personContainer.Key is null || personContainer.Birthdays is null || personContainer.Person is null || personContainer.PersonDirectory is null || personContainer.Birthdays.Length == 0)
|
||||
continue;
|
||||
personKeyFormatted = IPersonBirthday.GetFormatted(personBirthdayFormat, personContainer.Key.Value);
|
||||
personFullName = PersonName.GetFullName(personContainer.Person.Name);
|
||||
|
Reference in New Issue
Block a user