| 12345678910111213141516171819202122232425262728293031323334353637 |
- import json
- import os
- from pathlib import Path
- BASE_DIR = Path(__file__).resolve().parents[1]
- SERVER_CONFIG_PATH = str(BASE_DIR / "cfg" / "server_config.json")
- HARDWARE_CONFIG_PATH = str(BASE_DIR / "cfg" / "hw_config.json")
- class Config:
- def __init__(self, server_config_path=SERVER_CONFIG_PATH, hw_config_path=HARDWARE_CONFIG_PATH):
- self.server_config_path = server_config_path
- self.hardware_config_path = hw_config_path
- self._load_config()
- def _load_config(self):
- """Загружает конфигурацию из JSON-файлов"""
- if not os.path.exists(self.server_config_path):
- raise FileNotFoundError(f"Файл конфигурации сервера {self.server_config_path} не найден!")
- if not os.path.exists(self.hardware_config_path):
- raise FileNotFoundError(f"Файл конфигурации томографа {self.hardware_config_path} не найден!")
- with open(self.server_config_path, "r") as f:
- self.config = json.load(f)
- with open(self.hardware_config_path, "r") as f:
- self.hw_config = json.load(f)
- def get(self, key, default=None):
- """Получить значение из server-конфига с безопасным доступом"""
- return self.config.get(key, default)
- def get_hw(self, key, default=None):
- """Получить значение из hw-конфига с безопасным доступом"""
- return self.hw_config.get(key, default)
- config = Config()
|