PersonDirectory
This commit is contained in:
		| @ -834,7 +834,7 @@ public class MapLogic : Shared.Models.Methods.IMapLogic | ||||
|                     throw new NotSupportedException(); | ||||
|                 if (!_PersonKeyToPersonContainer.TryGetValue(personKey, out personContainer)) | ||||
|                     continue; | ||||
|                 if (personContainer.Char is null || !_Configuration.PersonCharacters.Contains(personContainer.Char.Value)) | ||||
|                 if (personContainer.PersonDirectory is null || !_Configuration.PersonCharacters.Contains(personContainer.PersonDirectory.Char)) | ||||
|                     continue; | ||||
|                 if (i == 1) | ||||
|                 { | ||||
| @ -844,7 +844,7 @@ public class MapLogic : Shared.Models.Methods.IMapLogic | ||||
|                 } | ||||
|                 else if (i == 2) | ||||
|                 { | ||||
|                     directory = Path.Combine(a2PeopleSingletonDirectory, personContainer.Char.Value.ToString(), personContainer.DisplayDirectoryName, personKeyToCount[personKey].ToString("0000")); | ||||
|                     directory = Path.Combine(a2PeopleSingletonDirectory, personContainer.PersonDirectory.Char.ToString(), personContainer.DisplayDirectoryName, personKeyToCount[personKey].ToString("0000")); | ||||
|                     if (results.Contains(directory)) | ||||
|                         continue; | ||||
|                     results.Add(directory); | ||||
| @ -917,13 +917,13 @@ public class MapLogic : Shared.Models.Methods.IMapLogic | ||||
|                 continue; | ||||
|             if (!_PersonKeyToPersonContainer.TryGetValue(personKey, out personContainer)) | ||||
|                 continue; | ||||
|             if (personContainer.Char is null || !_Configuration.PersonCharacters.Contains(personContainer.Char.Value)) | ||||
|             if (personContainer.PersonDirectory is null || !_Configuration.PersonCharacters.Contains(personContainer.PersonDirectory.Char)) | ||||
|                 continue; | ||||
|             if (personContainer.DisplayDirectoryAllFiles.Any(l => l.EndsWith(faceFileName))) | ||||
|                 continue; | ||||
|             if (!File.Exists(faceFile)) | ||||
|                 continue; | ||||
|             directory = Path.Combine(a2PeopleSingletonDirectory, personContainer.Char.Value.ToString(), personContainer.DisplayDirectoryName); | ||||
|             directory = Path.Combine(a2PeopleSingletonDirectory, personContainer.PersonDirectory.Char.ToString(), personContainer.DisplayDirectoryName); | ||||
|             if (!Directory.Exists(directory)) | ||||
|                 continue; | ||||
|             fileName = Path.Combine(directory, faceFileName); | ||||
|  | ||||
| @ -32,7 +32,7 @@ internal abstract class MapLogic | ||||
|                 continue; | ||||
|             personBirthday = IPersonBirthday.GetPersonBirthday(personKey); | ||||
|             person = IPerson.GetPerson(configuration.MappingDefaultName, configuration.PersonCharacters.ToArray(), configuration.MappingDefaultName, personKey, personBirthday); | ||||
|             personContainer = new(approximateYears, person, new PersonBirthday[] { personBirthday }, personDisplayDirectoryAllFiles, configuration.MappingDefaultName, personKey); | ||||
|             personContainer = new(approximateYears, new PersonBirthday[] { personBirthday }, personDisplayDirectoryAllFiles, configuration.MappingDefaultName, personKey, person); | ||||
|             results.Add(personContainer); | ||||
|         } | ||||
|         return results; | ||||
| @ -511,7 +511,7 @@ internal abstract class MapLogic | ||||
|                 if (!personKeyToPersonContainerCollection.ContainsKey(personKey)) | ||||
|                     personContainer = new(approximateYears, personBirthday, displayDirectoryName, personKey); | ||||
|                 else | ||||
|                     personContainer = new(approximateYears, personBirthday, personKeyToPersonContainerCollection[personKey][zero].Char, displayDirectoryName, personKey); | ||||
|                     personContainer = new(approximateYears, personBirthday, personKeyToPersonContainerCollection[personKey][zero].PersonDirectory, displayDirectoryName, personKey); | ||||
|                 personKeyToPersonContainer.Add(personKey, personContainer); | ||||
|             } | ||||
|         } | ||||
|  | ||||
| @ -7,45 +7,45 @@ public class PersonContainer : Properties.IPersonContainer | ||||
| { | ||||
|  | ||||
|     public int? ApproximateYears { init; get; } | ||||
|     public Person? Person { init; get; } | ||||
|     public PersonBirthday[]? Birthdays { init; get; } | ||||
|     public string[] DisplayDirectoryAllFiles { init; get; } | ||||
|     public string DisplayDirectoryName { init; get; } | ||||
|     public long? Key { init; get; } | ||||
|     public bool? KeyIsMaxBirthday { init; get; } | ||||
|     public char? Char { init; get; } | ||||
|     public Person? Person { init; get; } | ||||
|     public PersonDirectory? PersonDirectory { init; get; } | ||||
|  | ||||
|     [JsonConstructor] | ||||
|     public PersonContainer(int? approximateYears, char? @char, Person? person, PersonBirthday[]? birthdays, string[] displayDirectoryAllFiles, string displayDirectoryName, long? key) | ||||
|     public PersonContainer(int? approximateYears, PersonBirthday[]? birthdays, string[] displayDirectoryAllFiles, string displayDirectoryName, long? key, Person? person, PersonDirectory? personDirectory) | ||||
|     { | ||||
|         ApproximateYears = approximateYears; | ||||
|         Char = @char; | ||||
|         Person = person; | ||||
|         Birthdays = birthdays; | ||||
|         DisplayDirectoryAllFiles = displayDirectoryAllFiles; | ||||
|         DisplayDirectoryName = displayDirectoryName; | ||||
|         Key = key; | ||||
|         Person = person; | ||||
|         PersonDirectory = personDirectory; | ||||
|         KeyIsMaxBirthday = birthdays is null || key is null ? null : key.Value == birthdays.First().Value.Ticks; | ||||
|     } | ||||
|  | ||||
|     public PersonContainer(string mappingDefaultName, char[] personCharacters, PersonBirthday birthday, string displayDirectoryName) : | ||||
|         this(Stateless.Methods.IAge.GetApproximateYears(personCharacters, displayDirectoryName), null, Stateless.Methods.IPerson.GetPerson(mappingDefaultName, personCharacters, displayDirectoryName, birthday.Value.Ticks, birthday), new PersonBirthday[] { birthday }, Array.Empty<string>(), displayDirectoryName, birthday.Value.Ticks) | ||||
|         this(Stateless.Methods.IAge.GetApproximateYears(personCharacters, displayDirectoryName), new PersonBirthday[] { birthday }, Array.Empty<string>(), displayDirectoryName, birthday.Value.Ticks, Stateless.Methods.IPerson.GetPerson(mappingDefaultName, personCharacters, displayDirectoryName, birthday.Value.Ticks, birthday), null) | ||||
|     { } | ||||
|  | ||||
|     public PersonContainer(int? approximateYears, PersonBirthday birthdays, string displayDirectoryName, long key) : | ||||
|         this(approximateYears, null, null, new PersonBirthday[] { birthdays }, Array.Empty<string>(), displayDirectoryName, key) | ||||
|         this(approximateYears, new PersonBirthday[] { birthdays }, Array.Empty<string>(), displayDirectoryName, key, null, null) | ||||
|     { } | ||||
|  | ||||
|     public PersonContainer(int? approximateYears, PersonBirthday birthdays, char? @char, string displayDirectoryName, long key) : | ||||
|         this(approximateYears, @char, null, new PersonBirthday[] { birthdays }, Array.Empty<string>(), displayDirectoryName, key) | ||||
|     public PersonContainer(int? approximateYears, PersonBirthday birthdays, PersonDirectory? personDirectory, string displayDirectoryName, long key) : | ||||
|         this(approximateYears, new PersonBirthday[] { birthdays }, Array.Empty<string>(), displayDirectoryName, key, null, personDirectory) | ||||
|     { } | ||||
|  | ||||
|     public PersonContainer(int? approximateYears, char @char, string[] displayDirectoryAllFiles, string displayDirectoryName) : | ||||
|         this(approximateYears, @char, null, null, displayDirectoryAllFiles, displayDirectoryName, null) | ||||
|     public PersonContainer(int? approximateYears, string[] displayDirectoryAllFiles, string displayDirectoryName, PersonDirectory? personDirectory) : | ||||
|         this(approximateYears, null, displayDirectoryAllFiles, displayDirectoryName, null, null, personDirectory) | ||||
|     { } | ||||
|  | ||||
|     public PersonContainer(int? approximateYears, Person? person, PersonBirthday[]? birthdays, string[] displayDirectoryAllFiles, string displayDirectoryName, long? key) : | ||||
|         this(approximateYears, null, person, birthdays, displayDirectoryAllFiles, displayDirectoryName, key) | ||||
|     public PersonContainer(int? approximateYears, PersonBirthday[]? birthdays, string[] displayDirectoryAllFiles, string displayDirectoryName, long? key, Person? person) : | ||||
|         this(approximateYears, birthdays, displayDirectoryAllFiles, displayDirectoryName, key, person, null) | ||||
|     { } | ||||
|  | ||||
|     public override string ToString() | ||||
|  | ||||
							
								
								
									
										14
									
								
								Shared/Models/PersonDirectory.cs
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										14
									
								
								Shared/Models/PersonDirectory.cs
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,14 @@ | ||||
| using System.Text.Json; | ||||
|  | ||||
| namespace View_by_Distance.Shared.Models; | ||||
|  | ||||
| public record PersonDirectory(char Char, string Name, char Status, char Sex, char First) | ||||
| { | ||||
|  | ||||
|     public override string ToString() | ||||
|     { | ||||
|         string result = JsonSerializer.Serialize(this, new JsonSerializerOptions() { WriteIndented = true }); | ||||
|         return result; | ||||
|     } | ||||
|  | ||||
| } | ||||
| @ -4,11 +4,12 @@ public interface IPersonContainer | ||||
| { | ||||
|  | ||||
|     public int? ApproximateYears { init; get; } | ||||
|     public Person? Person { init; get; } | ||||
|     public PersonBirthday[]? Birthdays { init; get; } | ||||
|     public string[] DisplayDirectoryAllFiles { init; get; } | ||||
|     public string DisplayDirectoryName { init; get; } | ||||
|     public long? Key { init; get; } | ||||
|     public bool? KeyIsMaxBirthday { init; get; } | ||||
|     public Person? Person { init; get; } | ||||
|     public PersonDirectory? PersonDirectory { init; get; } | ||||
|  | ||||
| } | ||||
| @ -251,7 +251,7 @@ internal abstract class GenealogicalDataCommunication | ||||
|             birth = birth.Value.AddHours(hours); | ||||
|             if (age < 1) | ||||
|                 birth = null; | ||||
|             if (death is null && (!alive || (age > 110 && !IPersonBirthday.IsCounterPersonBirthday(new(birth.Value))))) | ||||
|             if (birth is not null && death is null && (!alive || (age > 110 && !IPersonBirthday.IsCounterPersonBirthday(new(birth.Value))))) | ||||
|                 death = birth; | ||||
|         } | ||||
|         death ??= !genealogicalDataCommunicationLines.Death.Any(l => l == "1 DEAT Y") ? null : birth; | ||||
|  | ||||
| @ -90,27 +90,14 @@ internal abstract class PersonContainer | ||||
|         return results; | ||||
|     } | ||||
|  | ||||
|     private static List<Models.PersonContainer> GetPersonContainersCollections(string mappingDefaultName, string personBirthdayFormat, string facesFileNameExtension, char[] personCharacters, Dictionary<string, List<string>> individuals, char @char, string innerGroupDirectory, char numberSign, string personDisplayDirectory, string personDisplayDirectoryName, bool isDefaultName, int? approximateYears, List<(string PersonKeyFormatted, Models.PersonBirthday PersonBirthday)> collection) | ||||
|     private static List<Models.PersonContainer> GetPersonContainersCollections(string mappingDefaultName, string facesFileNameExtension, char[] personCharacters, PersonDirectory personDirectory, char numberSign, string personDisplayDirectory, string personDisplayDirectoryName, bool isDefaultName, int? approximateYears, List<(string PersonKeyFormatted, Models.PersonBirthday PersonBirthday)> collection) | ||||
|     { | ||||
|         List<Models.PersonContainer> results = new(); | ||||
|         char sex; | ||||
|         bool first; | ||||
|         bool? male; | ||||
|         bool? alive; | ||||
|         long personKey; | ||||
|         string[] matches; | ||||
|         string? directory; | ||||
|         string[] segments; | ||||
|         bool verify = true; | ||||
|         const int zero = 0; | ||||
|         Models.Person person; | ||||
|         string innerGroupDirectoryName; | ||||
|         const char exclamationPoint = '!'; | ||||
|         List<string>? individualsLines = null; | ||||
|         Models.PersonContainer personContainer; | ||||
|         Models.PersonBirthday[] orderedPersonBirthdays; | ||||
|         Models.GenealogicalDataCommunication genealogicalDataCommunication; | ||||
|         GenealogicalDataCommunicationLines? genealogicalDataCommunicationLines; | ||||
|         string[] personDisplayDirectoryAllFiles = GetFiles(facesFileNameExtension, personDisplayDirectory, isDefaultName); | ||||
|         foreach ((string personKeyFormatted, Models.PersonBirthday personBirthday) in collection) | ||||
|         { | ||||
| @ -124,64 +111,8 @@ internal abstract class PersonContainer | ||||
|                 personKey = orderedPersonBirthdays[zero].Value.Ticks; | ||||
|             } | ||||
|             person = IPerson.GetPerson(mappingDefaultName, personCharacters, personDisplayDirectoryName, personDisplayDirectoryAllFiles, personKey); | ||||
|             personContainer = new(approximateYears, @char, person, orderedPersonBirthdays, personDisplayDirectoryAllFiles, personDisplayDirectoryName, personKey); | ||||
|             personContainer = new(approximateYears, orderedPersonBirthdays, personDisplayDirectoryAllFiles, personDisplayDirectoryName, personKey, person, personDirectory); | ||||
|             results.Add(personContainer); | ||||
|             if (personKeyFormatted != IPersonBirthday.GetFormatted(personBirthdayFormat, personKey)) | ||||
|                 continue; | ||||
|             _ = individuals.TryGetValue(personKeyFormatted, out individualsLines); | ||||
|             isDefaultName = IPerson.IsDefaultName(mappingDefaultName, personDisplayDirectoryName); | ||||
|             matches = (from l in personDisplayDirectoryAllFiles where l.Contains(personKeyFormatted) select l).ToArray(); | ||||
|             if (!matches.Any()) | ||||
|                 continue; | ||||
|             directory = Path.GetDirectoryName(matches[zero]); | ||||
|             if (directory is null) | ||||
|                 continue; | ||||
|             if (@char == exclamationPoint) | ||||
|                 (sex, alive, male, first) = ('U', null, null, true); | ||||
|             else | ||||
|             { | ||||
|                 innerGroupDirectoryName = Path.GetFileName(innerGroupDirectory); | ||||
|                 segments = innerGroupDirectoryName.Split('-'); | ||||
|                 if (segments.Length != 3) | ||||
|                     continue; | ||||
|                 alive = segments[zero] switch | ||||
|                 { | ||||
|                     "Alive" => true, | ||||
|                     "Dead" => false, | ||||
|                     "Unknown" => null, | ||||
|                     _ => throw new NotImplementedException() | ||||
|                 }; | ||||
|                 sex = segments[1] switch | ||||
|                 { | ||||
|                     "Male" => 'M', | ||||
|                     "Female" => 'F', | ||||
|                     "Unknown" => 'U', | ||||
|                     _ => throw new NotImplementedException() | ||||
|                 }; | ||||
|                 male = segments[1] switch | ||||
|                 { | ||||
|                     "Male" => true, | ||||
|                     "Female" => false, | ||||
|                     "Unknown" => null, | ||||
|                     _ => throw new NotImplementedException() | ||||
|                 }; | ||||
|                 first = segments[2] switch | ||||
|                 { | ||||
|                     "Yes" => true, | ||||
|                     "No" => false, | ||||
|                     "Unknown" => true, | ||||
|                     _ => throw new NotImplementedException() | ||||
|                 }; | ||||
|             } | ||||
|             if (alive is null) | ||||
|                 continue; | ||||
|             genealogicalDataCommunicationLines = individualsLines is null ? null : GenealogicalDataCommunication.GetGenealogicalDataCommunicationLines(personBirthday, individualsLines); | ||||
|             if (genealogicalDataCommunicationLines is null) | ||||
|                 continue; | ||||
|             genealogicalDataCommunication = GenealogicalDataCommunication.GetGenealogicalDataCommunication(genealogicalDataCommunicationLines); | ||||
|             if (genealogicalDataCommunication.Sex != sex) | ||||
|                 continue; | ||||
|             GenealogicalDataCommunication.WriteFile(personKeyFormatted, person.Name, individualsLines, isDefaultName, directory, genealogicalDataCommunication, verify, first); | ||||
|         } | ||||
|         return results; | ||||
|     } | ||||
| @ -217,7 +148,48 @@ internal abstract class PersonContainer | ||||
|         return result; | ||||
|     } | ||||
|  | ||||
|     private static List<Models.PersonContainer> GetPersonContainersGroup(string mappingDefaultName, string personBirthdayFormat, string facesFileNameExtension, char[] personCharacters, Dictionary<string, List<string>> individuals, char @char, string innerGroupDirectory, string[] personDisplayDirectories) | ||||
|     private static void MaybeGenealogicalDataCommunicationWriteFile(string mappingDefaultName, string personBirthdayFormat, Dictionary<string, List<string>> individuals, PersonDirectory personDirectory, string personDisplayDirectoryName, bool isDefaultName, List<Models.PersonContainer> personContainers) | ||||
|     { | ||||
|         bool? first; | ||||
|         bool? male; | ||||
|         string[] matches; | ||||
|         string? directory; | ||||
|         bool verify = true; | ||||
|         const int zero = 0; | ||||
|         string personKeyFormatted; | ||||
|         List<string>? individualsLines = null; | ||||
|         Models.GenealogicalDataCommunication genealogicalDataCommunication; | ||||
|         GenealogicalDataCommunicationLines? genealogicalDataCommunicationLines; | ||||
|         foreach (Models.PersonContainer personContainer in personContainers) | ||||
|         { | ||||
|             if (personContainer.Key is null || personContainer.Birthdays is null || personContainer.Person is null || !personContainer.Birthdays.Any()) | ||||
|                 continue; | ||||
|             male = personDirectory.Sex == 'U' ? null : personDirectory.Sex == 'M' || (personDirectory.Sex == 'F' ? false : throw new Exception()); | ||||
|             first = personDirectory.First == 'U' ? null : personDirectory.First == 'Y' || (personDirectory.First == 'N' ? false : throw new Exception()); | ||||
|             if (first is null) | ||||
|                 continue; | ||||
|             isDefaultName = IPerson.IsDefaultName(mappingDefaultName, personDisplayDirectoryName); | ||||
|             personKeyFormatted = IPersonBirthday.GetFormatted(personBirthdayFormat, personContainer.Key.Value); | ||||
|             _ = individuals.TryGetValue(personKeyFormatted, out individualsLines); | ||||
|             matches = (from l in personContainer.DisplayDirectoryAllFiles where l.Contains(personKeyFormatted) select l).ToArray(); | ||||
|             if (!matches.Any()) | ||||
|                 continue; | ||||
|             directory = Path.GetDirectoryName(matches[zero]); | ||||
|             if (directory is null) | ||||
|                 continue; | ||||
|             genealogicalDataCommunicationLines = individualsLines is null ? null : GenealogicalDataCommunication.GetGenealogicalDataCommunicationLines(personContainer.Birthdays[0], individualsLines); | ||||
|             if (genealogicalDataCommunicationLines is null) | ||||
|                 continue; | ||||
|             genealogicalDataCommunication = GenealogicalDataCommunication.GetGenealogicalDataCommunication(genealogicalDataCommunicationLines); | ||||
|             if (genealogicalDataCommunication.Sex != personDirectory.Sex) | ||||
|                 continue; | ||||
|             if (genealogicalDataCommunication.Death is null && personDirectory.Status == 'D' || genealogicalDataCommunication.Death is not null && personDirectory.Status == 'A') | ||||
|                 continue; | ||||
|             GenealogicalDataCommunication.WriteFile(personKeyFormatted, personContainer.Person.Name, individualsLines, isDefaultName, directory, genealogicalDataCommunication, verify, first.Value); | ||||
|         } | ||||
|     } | ||||
|  | ||||
|     private static List<Models.PersonContainer> GetPersonContainersGroup(string mappingDefaultName, string personBirthdayFormat, string facesFileNameExtension, char[] personCharacters, Dictionary<string, List<string>> individuals, PersonDirectory personDirectory, string[] personDisplayDirectories) | ||||
|     { | ||||
|         List<Models.PersonContainer> results = new(); | ||||
|         string? minusOne; | ||||
| @ -229,6 +201,7 @@ internal abstract class PersonContainer | ||||
|         string? personDisplayDirectoryName; | ||||
|         Models.PersonContainer personContainer; | ||||
|         string[] personDisplayDirectoryAllFiles; | ||||
|         List<Models.PersonContainer> personContainers; | ||||
|         List<(string, Models.PersonBirthday)> collection; | ||||
|         foreach (string personDisplayDirectory in personDisplayDirectories) | ||||
|         { | ||||
| @ -249,11 +222,15 @@ internal abstract class PersonContainer | ||||
|             if (changes.Any(l => l is not null)) | ||||
|                 continue; | ||||
|             if (collection.Any()) | ||||
|                 results.AddRange(GetPersonContainersCollections(mappingDefaultName, personBirthdayFormat, facesFileNameExtension, personCharacters, individuals, @char, innerGroupDirectory, numberSign, personDisplayDirectory, personDisplayDirectoryName, isDefaultName, approximateYears, collection)); | ||||
|             { | ||||
|                 personContainers = GetPersonContainersCollections(mappingDefaultName, facesFileNameExtension, personCharacters, personDirectory, numberSign, personDisplayDirectory, personDisplayDirectoryName, isDefaultName, approximateYears, collection); | ||||
|                 MaybeGenealogicalDataCommunicationWriteFile(mappingDefaultName, personBirthdayFormat, individuals, personDirectory, personDisplayDirectoryName, isDefaultName, personContainers); | ||||
|                 results.AddRange(personContainers); | ||||
|             } | ||||
|             else | ||||
|             { | ||||
|                 personDisplayDirectoryAllFiles = GetFiles(facesFileNameExtension, personDisplayDirectory, isDefaultName); | ||||
|                 personContainer = new(approximateYears, @char, personDisplayDirectoryAllFiles, personDisplayDirectoryName); | ||||
|                 personContainer = new(approximateYears, personDisplayDirectoryAllFiles, personDisplayDirectoryName, personDirectory); | ||||
|                 results.Add(personContainer); | ||||
|             } | ||||
|         } | ||||
| @ -265,14 +242,36 @@ internal abstract class PersonContainer | ||||
|     private static List<Models.PersonContainer> GetPersonContainersInnerGroups(string mappingDefaultName, string personBirthdayFormat, string facesFileNameExtension, char[] personCharacters, Dictionary<string, List<string>> individuals, string groupDirectory, string groupDirectoryName) | ||||
|     { | ||||
|         List<Models.PersonContainer> results = new(); | ||||
|         char @char; | ||||
|         string[] segments; | ||||
|         const int zero = 0; | ||||
|         string innerGroupDirectoryName; | ||||
|         PersonDirectory personDirectory; | ||||
|         string[] personDisplayDirectories; | ||||
|         const char exclamationPoint = '!'; | ||||
|         List<Models.PersonContainer> collection; | ||||
|         string[] innerGroupDirectories = Directory.GetDirectories(groupDirectory, "*", SearchOption.TopDirectoryOnly); | ||||
|         foreach (string innerGroupDirectory in innerGroupDirectories) | ||||
|         { | ||||
|             @char = groupDirectoryName[zero]; | ||||
|             innerGroupDirectoryName = Path.GetFileName(innerGroupDirectory); | ||||
|             if (@char == exclamationPoint) | ||||
|                 personDirectory = new(@char, innerGroupDirectoryName, 'U', 'U', 'U'); | ||||
|             else | ||||
|             { | ||||
|                 segments = innerGroupDirectoryName.Split('-'); | ||||
|                 if (segments.Length != 3) | ||||
|                     continue; | ||||
|                 if (segments[zero] is not "Alive" and not "Dead" and not "Unknown") | ||||
|                     continue; | ||||
|                 if (segments[1] is not "Male" and not "Female" and not "Unknown") | ||||
|                     continue; | ||||
|                 if (segments[2] is not "Yes" and not "No" and not "Unknown") | ||||
|                     continue; | ||||
|                 personDirectory = new(@char, innerGroupDirectoryName, segments[zero][zero], segments[1][zero], segments[2][zero]); | ||||
|             } | ||||
|             personDisplayDirectories = Directory.GetDirectories(innerGroupDirectory, "*", SearchOption.TopDirectoryOnly); | ||||
|             collection = GetPersonContainersGroup(mappingDefaultName, personBirthdayFormat, facesFileNameExtension, personCharacters, individuals, groupDirectoryName[zero], innerGroupDirectory, personDisplayDirectories); | ||||
|             collection = GetPersonContainersGroup(mappingDefaultName, personBirthdayFormat, facesFileNameExtension, personCharacters, individuals, personDirectory, personDisplayDirectories); | ||||
|             results.AddRange(collection); | ||||
|         } | ||||
|         return results; | ||||
|  | ||||
		Reference in New Issue
	
	Block a user