From 3c3bdc615554bb838632b27eda6519658f0678f5 Mon Sep 17 00:00:00 2001 From: Polianin Nikita Date: Fri, 26 Jan 2024 09:00:14 +0300 Subject: [PATCH] feat: add the pre-needed server settings --- Endpoint/Properties/Settings.cs | 36 ++++++++++++++++++++++++++++ Persistence/Properties/DbSettings.cs | 15 ++++++++++++ 2 files changed, 51 insertions(+) create mode 100644 Endpoint/Properties/Settings.cs create mode 100644 Persistence/Properties/DbSettings.cs diff --git a/Endpoint/Properties/Settings.cs b/Endpoint/Properties/Settings.cs new file mode 100644 index 0000000..1bee892 --- /dev/null +++ b/Endpoint/Properties/Settings.cs @@ -0,0 +1,36 @@ +using Mirea.Api.DataAccess.Persistence.Properties; + +namespace Mirea.Api.Endpoint.Properties; + +public class EmailSettings +{ + public string? Server { get; set; } + public string? User { get; set; } + public string? Password { get; set; } + public string? From { get; set; } + public int? Port { get; set; } + public bool? Ssl { get; set; } +} + +public class LogSettings +{ + public bool EnableLogToFile { get; set; } + public string? LogFilePath { get; set; } + public string? LogFileName { get; set; } +} + +public class ScheduleSettings +{ + // Every 6 hours + public string CronUpdateSchedule { get; set; } = "0 0 0/6 * * *"; +} + +public class Settings +{ + public const string FilePath = "Settings.json"; + + public EmailSettings? EmailSettings { get; set; } + public LogSettings? LogSettings { get; set; } + public DbSettings? DbSettings { get; set; } + public ScheduleSettings? ScheduleSettings { get; set; } +} \ No newline at end of file diff --git a/Persistence/Properties/DbSettings.cs b/Persistence/Properties/DbSettings.cs new file mode 100644 index 0000000..7ee06d9 --- /dev/null +++ b/Persistence/Properties/DbSettings.cs @@ -0,0 +1,15 @@ +namespace Mirea.Api.DataAccess.Persistence.Properties; + +public enum DatabaseEnum +{ + Mysql, + Sqlite, + PostgresSql +} +public class DbSettings +{ + public bool IsDoneConfiguration { get; set; } + public DatabaseEnum TypeDatabase { get; set; } + public required string ConnectionStringSql { get; set; } + public DatabaseEnum? MigrateTo { get; set; } +} \ No newline at end of file