Better format

This commit is contained in:
Mike Phares 2024-05-21 07:43:37 -07:00
parent 26a28afe78
commit e32a942fde

View File

@ -85,19 +85,20 @@ public class AppSettings
return result;
}
private static string? GetJson(AppSettings? appSettings)
private static Models.AppSettings Get(AppSettings? appSettings)
{
string? result;
Models.AppSettings? results;
string? json;
if (appSettings is null || appSettings.ConfigurationFileName is null)
result = null;
json = null;
else
{
string jsonFile = Path.Combine(AppContext.BaseDirectory, appSettings.ConfigurationFileName);
if (File.Exists(jsonFile))
result = File.ReadAllText(jsonFile);
json = File.ReadAllText(jsonFile);
else
{
result = null;
json = null;
string applicationData = Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData);
List<string> collection = [applicationData];
if (appSettings?.ConfigurationDirectoryNames is not null)
@ -106,10 +107,24 @@ public class AppSettings
collection.Add(appSettings.ConfigurationFileName);
jsonFile = Path.Combine(collection.ToArray());
}
if (string.IsNullOrEmpty(result) && File.Exists(jsonFile))
result = File.ReadAllText(jsonFile);
if (string.IsNullOrEmpty(json) && File.Exists(jsonFile))
json = File.ReadAllText(jsonFile);
}
return result;
results = (string.IsNullOrEmpty(json) ? null : results = JsonSerializer.Deserialize(json, AppSettingsSourceGenerationContext.Default.AppSettings)) ??
throw new NullReferenceException(nameof(Models.AppSettings));
results = Get(appSettings,
results.DriveConfiguration,
results.CompassConfiguration,
results.EAFLogConfiguration,
results.EAFProgramDataConfiguration,
results.EDADatabaseConfiguration,
results.NugetConfiguration,
results.MetrologyConfiguration,
results.SerialConfiguration,
results.StratusConfiguration,
results.TransmissionControlProtocolConfiguration,
results.WaferCounterConfiguration);
return results;
}
public static Models.AppSettings Get(IConfigurationRoot configurationRoot)
@ -119,21 +134,7 @@ public class AppSettings
AppSettings? appSettings = configurationRoot.Get<AppSettings>();
#pragma warning restore IL3050, IL2026
PreVerify(configurationRoot, appSettings);
string? json = GetJson(appSettings);
Models.AppSettings? modelsAppSettings = (string.IsNullOrEmpty(json) ? null : modelsAppSettings = JsonSerializer.Deserialize(json, AppSettingsSourceGenerationContext.Default.AppSettings)) ??
throw new NullReferenceException(nameof(Models.AppSettings));
result = Get(appSettings,
modelsAppSettings.DriveConfiguration,
modelsAppSettings.CompassConfiguration,
modelsAppSettings.EAFLogConfiguration,
modelsAppSettings.EAFProgramDataConfiguration,
modelsAppSettings.EDADatabaseConfiguration,
modelsAppSettings.NugetConfiguration,
modelsAppSettings.MetrologyConfiguration,
modelsAppSettings.SerialConfiguration,
modelsAppSettings.StratusConfiguration,
modelsAppSettings.TransmissionControlProtocolConfiguration,
modelsAppSettings.WaferCounterConfiguration);
result = Get(appSettings);
return result;
}