CopyAtLeastOneMappedFiles

This commit is contained in:
2022-12-28 11:58:27 -07:00
parent 3278256315
commit 681b2fdf3c
17 changed files with 169 additions and 93 deletions

View File

@ -49,6 +49,8 @@ public class Configuration
[Display(Name = "Override For Resize Images"), Required] public bool? OverrideForResizeImages { get; set; }
[Display(Name = "Person Birthday First Year"), Required] public int? PersonBirthdayFirstYear { get; set; }
[Display(Name = "Person Birthday Format"), Required] public string PersonBirthdayFormat { get; set; }
[Display(Name = "Person Characters"), Required] public string PersonCharacters { get; set; }
[Display(Name = "Person Characters To Copy To"), Required] public string PersonCharactersToCopyTo { get; set; }
[Display(Name = "PersonKey Format"), Required] public string PersonKeyFormat { get; set; }
[Display(Name = "Predictor Model Name"), Required] public string PredictorModelName { get; set; }
[Display(Name = "Properties Changed For Distance"), Required] public bool? PropertiesChangedForDistance { get; set; }
@ -156,6 +158,10 @@ public class Configuration
throw new NullReferenceException(nameof(configuration.PersonBirthdayFirstYear));
if (configuration.PersonBirthdayFormat is null)
throw new NullReferenceException(nameof(configuration.PersonBirthdayFormat));
if (configuration.PersonCharacters is null)
throw new NullReferenceException(nameof(configuration.PersonCharacters));
if (configuration.PersonCharactersToCopyTo is null)
throw new NullReferenceException(nameof(configuration.PersonCharactersToCopyTo));
if (configuration.PersonKeyFormat is null)
throw new NullReferenceException(nameof(configuration.PersonKeyFormat));
if (configuration.PropertiesChangedForDistance is null)
@ -240,6 +246,8 @@ public class Configuration
configuration.OverrideForResizeImages.Value,
configuration.PersonBirthdayFirstYear.Value,
configuration.PersonBirthdayFormat,
configuration.PersonCharacters,
configuration.PersonCharactersToCopyTo,
configuration.PersonKeyFormat,
configuration.PredictorModelName,
configuration.PropertiesChangedForDistance.Value,

View File

@ -46,6 +46,8 @@ public class Configuration
public bool OverrideForResizeImages { init; get; }
public int PersonBirthdayFirstYear { init; get; }
public string PersonBirthdayFormat { init; get; }
public string PersonCharacters { init; get; }
public string PersonCharactersToCopyTo { init; get; }
public string PersonKeyFormat { init; get; }
public string PredictorModelName { init; get; }
public bool PropertiesChangedForDistance { init; get; }
@ -112,6 +114,8 @@ public class Configuration
bool overrideForResizeImages,
int personBirthdayFirstYear,
string personBirthdayFormat,
string personCharacters,
string personCharactersToCopyTo,
string personKeyFormat,
string predictorModelName,
bool propertiesChangedForDistance,
@ -177,6 +181,8 @@ public class Configuration
OverrideForResizeImages = overrideForResizeImages;
PersonBirthdayFirstYear = personBirthdayFirstYear;
PersonBirthdayFormat = personBirthdayFormat;
PersonCharacters = personCharacters;
PersonCharactersToCopyTo = personCharactersToCopyTo;
PersonKeyFormat = personKeyFormat;
PredictorModelName = predictorModelName;
PropertiesChangedForDistance = propertiesChangedForDistance;

View File

@ -94,7 +94,7 @@ public class G2_Identify : Shared.Models.Properties.IIdentify, IIdentify
if (rootResultsDirectory is null)
throw new Exception();
Storage storage = new(rootDirectory, rootResultsDirectory, peopleRootDirectory);
PersonContainer[] personContainers = Shared.Models.Stateless.Methods.IPersonContainer.GetPersonContainers(storage, _Configuration.PersonBirthdayFormat, facesFileNameExtension);
PersonContainer[] personContainers = Shared.Models.Stateless.Methods.IPersonContainer.GetPersonContainers(storage, _Configuration.PersonBirthdayFormat, _Configuration.PersonCharacters.ToArray(), facesFileNameExtension);
string[] peopleBirthDates = (from l in personContainers select Shared.Models.Stateless.Methods.IPersonBirthday.GetFormatted(_Configuration.PersonBirthdayFormat, l.Person.Birthday)).ToArray();
Dictionary<string, string[]> sourceKeyValuePairs = JsonSerializer.Deserialize<Dictionary<string, string[]>>(json);
foreach (KeyValuePair<string, string[]> keyValuePair in sourceKeyValuePairs)