Files
domen_hydra_new/server/database.py
Андрей Бобырев a63329af81 Add HydraRoute Manager web server — standalone domain management UI
Made-with: Cursor
2026-04-24 11:37:24 +03:00

23 lines
798 B
Python

import json, logging
from pathlib import Path
logger = logging.getLogger("hydra")
def load_json(path: Path, default=None):
if default is None: default = {}
if not isinstance(path, Path): path = Path(path)
try:
if path.exists():
text = path.read_text(encoding="utf-8")
if text.strip(): return json.loads(text)
return default
except Exception as e:
logger.error(f"Corrupt {path.name}: {e}"); return default
def save_json(path: Path, data):
if not isinstance(path, Path): path = Path(path)
try:
path.parent.mkdir(parents=True, exist_ok=True)
path.write_text(json.dumps(data, ensure_ascii=False, indent=2, default=str), encoding="utf-8")
except Exception as e:
logger.error(f"Save fail {path}: {e}")