fix(backup): add user-state backup UI and storage

This commit is contained in:
Will Miao
2026-04-10 20:49:30 +08:00
parent 85b6c91192
commit 72f8e0d1be
25 changed files with 1825 additions and 9 deletions

View File

@@ -159,10 +159,9 @@ class ServiceRegistry:
return cls._services[service_name]
from .model_update_service import ModelUpdateService
from .persistent_model_cache import get_persistent_cache
from .settings_manager import get_settings_manager
cache = get_persistent_cache()
service = ModelUpdateService(cache.get_database_path())
service = ModelUpdateService(settings_manager=get_settings_manager())
cls._services[service_name] = service
logger.debug(f"Created and registered {service_name}")
return service
@@ -189,6 +188,26 @@ class ServiceRegistry:
logger.debug(f"Created and registered {service_name}")
return service
@classmethod
async def get_backup_service(cls):
"""Get or create the backup service."""
service_name = "backup_service"
if service_name in cls._services:
return cls._services[service_name]
async with cls._get_lock(service_name):
if service_name in cls._services:
return cls._services[service_name]
from .backup_service import BackupService
service = await BackupService.get_instance()
cls._services[service_name] = service
logger.debug(f"Created and registered {service_name}")
return service
@classmethod
async def get_civarchive_client(cls):
"""Get or create CivArchive client instance"""