Updates configuration and refactors code structure

Migrates connection strings to new database host
Removes unnecessary code and improves configuration handling
Enhances test coverage and adds random word generation
Updates telemetry and command handling patterns
This commit is contained in:
Janus C. H. Knudsen 2026-01-08 21:51:43 +01:00
parent dc98178095
commit a991dcdb97
18 changed files with 481 additions and 63 deletions

View file

@ -63,7 +63,7 @@ namespace PlanTempus.Core.Configurations
if (test != null)
value = test.ToString();
}
return value;
}
}
@ -99,7 +99,7 @@ namespace PlanTempus.Core.Configurations
return new ConfigurationSection { Path = path, Key = path.Split(':').Last(), Value = value };
}
public static T Get<T>(this IConfigurationRoot configuration, string path)
public static T Get<T>(this IConfigurationRoot configuration, string path, bool optional = true)
{
JToken value = null;
foreach (var provider in configuration.ConfigurationProviders)
@ -109,6 +109,10 @@ namespace PlanTempus.Core.Configurations
if (test != null)
value = test;
}
if(value is null && !optional)
throw new Exceptions.ConfigurationException($"Path not found in configuration, path: {path}");
if (value is null)
return default;
return value.ToObject<T>();
}