refactor(scheduler): separate scheduler logic from scan/rescan logic
- Extract rescan logic into new RescanService (src/server/services/rescan_service.py) - SchedulerService now only handles APScheduler cron scheduling - Move scheduler sub-services (folder_rename, folder_scan, key_resolution) to scheduler/ folder - Keep RescanOrchestrator as backward-compatible alias - Update all imports across api/, server/, and test files
This commit is contained in:
45
src/server/services/scheduler/__init__.py
Normal file
45
src/server/services/scheduler/__init__.py
Normal file
@@ -0,0 +1,45 @@
|
||||
"""Scheduler services package.
|
||||
|
||||
Contains scheduler orchestration and rescan coordination:
|
||||
|
||||
- scheduler_service: Cron-based scheduler using APScheduler
|
||||
- rescan_orchestrator: Legacy alias for RescanService (for backward compatibility)
|
||||
"""
|
||||
from __future__ import annotations
|
||||
|
||||
from src.server.services.rescan_service import (
|
||||
RescanService,
|
||||
get_rescan_service,
|
||||
reset_rescan_service,
|
||||
)
|
||||
|
||||
# Backward compatibility alias
|
||||
from src.server.services.scheduler.rescan_orchestrator import (
|
||||
RescanOrchestrator,
|
||||
get_rescan_orchestrator,
|
||||
reset_rescan_orchestrator,
|
||||
)
|
||||
from src.server.services.scheduler.scheduler_service import (
|
||||
SchedulerService,
|
||||
SchedulerServiceError,
|
||||
get_scheduler_service,
|
||||
reset_scheduler_service,
|
||||
)
|
||||
|
||||
__all__ = [
|
||||
# RescanService (new location)
|
||||
"RescanService",
|
||||
"get_rescan_service",
|
||||
"reset_rescan_service",
|
||||
# Scheduler
|
||||
"SchedulerService",
|
||||
"SchedulerServiceError",
|
||||
"get_scheduler_service",
|
||||
"reset_scheduler_service",
|
||||
# Backward compatibility
|
||||
"RescanOrchestrator",
|
||||
"get_rescan_orchestrator",
|
||||
"reset_rescan_orchestrator",
|
||||
# Sub-services (still in scheduler folder)
|
||||
"folder_rename_service",
|
||||
]
|
||||
Reference in New Issue
Block a user