diff options
Diffstat (limited to 'dropped/docker/crupest-api/CrupestApi/CrupestApi.Commons/Config.cs')
-rw-r--r-- | dropped/docker/crupest-api/CrupestApi/CrupestApi.Commons/Config.cs | 23 |
1 files changed, 23 insertions, 0 deletions
diff --git a/dropped/docker/crupest-api/CrupestApi/CrupestApi.Commons/Config.cs b/dropped/docker/crupest-api/CrupestApi/CrupestApi.Commons/Config.cs new file mode 100644 index 0000000..0ca3547 --- /dev/null +++ b/dropped/docker/crupest-api/CrupestApi/CrupestApi.Commons/Config.cs @@ -0,0 +1,23 @@ +namespace CrupestApi.Commons; + +public class CrupestApiConfig +{ + public string DataDir { get; set; } = string.Empty; +} + +public static class CrupestApiConfigExtensions +{ + public static IServiceCollection AddCrupestApiConfig(this IServiceCollection services) + { + services.AddOptions<CrupestApiConfig>().BindConfiguration("CrupestApi"); + services.PostConfigure<CrupestApiConfig>(config => + { + if (config.DataDir is null || config.DataDir.Length == 0) + { + config.DataDir = Path.Combine(Environment.GetFolderPath(Environment.SpecialFolder.UserProfile), "crupest-api"); + } + }); + + return services; + } +}
\ No newline at end of file |