Files
2025-11-14 11:04:01 +08:00

72 lines
1.7 KiB
Python

"""
核心模块初始化
本模块统一初始化和管理核心组件,包括:
- ModuleRegistry: 模块注册表
- CoreManager: 核心管理器
提供统一的接口来管理这些核心组件。
"""
from typing import Dict, Any, Callable
from app.core.module_registry import ModuleRegistry, registry
class CoreManager:
"""
核心管理器
统一管理所有核心组件,提供便捷的方法来初始化和注册模块。
属性:
registry: 模块注册表实例
"""
def __init__(self):
"""初始化核心管理器"""
self.registry = registry
def initialize_modules(self, modules: Dict[str, Any]):
"""
初始化并注册所有模块
Args:
modules: 模块字典,格式为 {模块名: 模块实例}
"""
for module_name, module_instance in modules.items():
self.registry.register_module(module_name, module_instance)
def register_action(
self,
action_name: str,
handler: Callable,
module_name: str = "default",
**kwargs
):
"""
便捷方法:注册操作
Args:
action_name: 操作名称
handler: 处理函数
module_name: 模块名称
**kwargs: 其他配置参数
"""
self.registry.register_action(
action_name=action_name,
handler=handler,
module_name=module_name,
**kwargs
)
# 全局核心管理器实例
# 在应用启动时使用此实例来注册模块和操作
core_manager = CoreManager()
# 导出常用类和函数
__all__ = [
'core_manager',
'ModuleRegistry',
'registry',
]