Forráskód Böngészése

feat(config): add WebConfig system for configuration management

Introduce a comprehensive configuration system with WebConfig,
WebConfigLoader, WebConfigSection, WebConfigError, and ConfigMerger
classes. The system is integrated into WebApplication as a singleton
in the dependency injection container.
Billy Barrow 1 hónapja
szülő
commit
c8068bef6e
2 módosított fájl, 7 hozzáadás és 0 törlés
  1. 2 0
      src/Core/WebApplication.vala
  2. 5 0
      src/meson.build

+ 2 - 0
src/Core/WebApplication.vala

@@ -14,6 +14,8 @@ namespace Astralis {
             printerr(@"[Astralis] Web application using port $(port)\n");
 
             container = new Container();
+            var config = WebConfigLoader.load();
+            container.register_singleton<WebConfig>(() => config);
             pipeline = new Pipeline(container);
             server = new Server(this.port, pipeline);
         }

+ 5 - 0
src/meson.build

@@ -6,6 +6,11 @@ sources = files(
     'Core/AsyncOutput.vala',
     'Core/Pipeline.vala',
     'Core/WebApplication.vala',
+    'Core/WebConfig.vala',
+    'Core/WebConfigLoader.vala',
+    'Core/WebConfigSection.vala',
+    'Core/WebConfigError.vala',
+    'Core/ConfigMerger.vala',
     'Data/FormDataParser.vala',
     'Components/EndpointRouter.vala',
     'Components/Compressor.vala',