事件系统¶
events
¶
事件系统.
Classes¶
Event
dataclass
¶
EventBus
¶
事件总线 - 简单的发布/订阅实现.
Source code in src/symphra_modules/events/bus.py
Functions¶
__init__()
¶
clear()
¶
get_subscribers(event_type)
¶
获取指定事件类型的订阅者.
参数:
| 名称 | 类型 | 描述 | 默认 |
|---|---|---|---|
event_type
|
str
|
事件类型 |
必需 |
返回:
| 类型 | 描述 |
|---|---|
list[EventHandler]
|
订阅者列表 |
源代码位于: src/symphra_modules/events/bus.py
publish(event)
¶
发布事件.
参数:
| 名称 | 类型 | 描述 | 默认 |
|---|---|---|---|
event
|
Event
|
事件对象 |
必需 |
源代码位于: src/symphra_modules/events/bus.py
subscribe(event_type, handler)
¶
订阅事件.
参数:
| 名称 | 类型 | 描述 | 默认 |
|---|---|---|---|
event_type
|
str
|
事件类型,使用 "*" 订阅所有事件 |
必需 |
handler
|
EventHandler
|
事件处理器函数 |
必需 |
引发:
| 类型 | 描述 |
|---|---|
EventError
|
处理器不可调用时抛出 |
源代码位于: src/symphra_modules/events/bus.py
unsubscribe(event_type, handler)
¶
取消订阅事件.
参数:
| 名称 | 类型 | 描述 | 默认 |
|---|---|---|---|
event_type
|
str
|
事件类型 |
必需 |
handler
|
EventHandler
|
事件处理器函数 |
必需 |
源代码位于: src/symphra_modules/events/bus.py
ModuleErrorEvent
dataclass
¶
Bases: Event
模块错误事件.
Source code in src/symphra_modules/events/types.py
Functions¶
__init__(module_name, error, data=None)
¶
初始化错误事件.
参数:
| 名称 | 类型 | 描述 | 默认 |
|---|---|---|---|
module_name
|
str
|
模块名称 |
必需 |
error
|
Exception
|
异常对象 |
必需 |
data
|
dict[str, Any] | None
|
附加数据(可选) |
None
|
源代码位于: src/symphra_modules/events/types.py
ModuleInstalledEvent
dataclass
¶
Bases: Event
模块安装事件.
Source code in src/symphra_modules/events/types.py
ModuleLoadedEvent
dataclass
¶
ModuleStartedEvent
dataclass
¶
ModuleStoppedEvent
dataclass
¶
ModuleUninstalledEvent
dataclass
¶
Bases: Event
模块卸载事件.
Source code in src/symphra_modules/events/types.py
ModuleUnregisteredEvent
dataclass
¶
Bases: Event
模块注销事件.