put default config if no config.json found

refactor Constants
This commit is contained in:
Alex Bezdieniezhnykh
2025-06-30 20:06:02 +03:00
parent 6eeb6d20bf
commit bb6413c4f0
10 changed files with 191 additions and 174 deletions
+4 -31
View File
@@ -1,7 +1,6 @@
using System.IO;
using System.Text;
using Azaion.Common.Extensions;
using Azaion.CommonSecurity;
using Newtonsoft.Json;
namespace Azaion.Common.DTO.Config;
@@ -44,38 +43,12 @@ public class ConfigUpdater : IConfigUpdater
public void CheckConfig()
{
var exePath = Path.GetDirectoryName(AppDomain.CurrentDomain.BaseDirectory)!;
var configFilePath = Path.Combine(exePath, SecurityConstants.CONFIG_PATH);
var configFilePath = Path.Combine(exePath, Constants.CONFIG_PATH);
if (File.Exists(configFilePath))
return;
var appConfig = new AppConfig
{
AnnotationConfig = Constants.DefaultAnnotationConfig,
UIConfig = new UIConfig
{
LeftPanelWidth = Constants.DEFAULT_LEFT_PANEL_WIDTH,
RightPanelWidth = Constants.DEFAULT_RIGHT_PANEL_WIDTH,
GenerateAnnotatedImage = false
},
DirectoriesConfig = new DirectoriesConfig
{
VideosDirectory = Constants.DEFAULT_VIDEO_DIR,
ImagesDirectory = Constants.DEFAULT_IMAGES_DIR,
LabelsDirectory = Constants.DEFAULT_LABELS_DIR,
ResultsDirectory = Constants.DEFAULT_RESULTS_DIR,
ThumbnailsDirectory = Constants.DEFAULT_THUMBNAILS_DIR,
GpsSatDirectory = Constants.DEFAULT_GPS_SAT_DIRECTORY,
GpsRouteDirectory = Constants.DEFAULT_GPS_ROUTE_DIRECTORY
},
ThumbnailConfig = Constants.DefaultThumbnailConfig,
AIRecognitionConfig = Constants.DefaultAIRecognitionConfig,
GpsDeniedConfig = Constants.DefaultGpsDeniedConfig,
};
Save(appConfig);
Save(Constants.FailsafeAppConfig);
}
public void Save(AppConfig config)
@@ -91,7 +64,7 @@ public class ConfigUpdater : IConfigUpdater
config.UIConfig
};
await File.WriteAllTextAsync(SecurityConstants.CONFIG_PATH, JsonConvert.SerializeObject(publicConfig, Formatting.Indented), Encoding.UTF8);
await File.WriteAllTextAsync(Constants.CONFIG_PATH, JsonConvert.SerializeObject(publicConfig, Formatting.Indented), Encoding.UTF8);
}, SaveConfigTaskId, TimeSpan.FromSeconds(5));
}