using GFramework.Core.Abstractions.Architecture; using GFramework.Core.Abstractions.Ioc; using GFramework.Core.Events; namespace GFramework.Core.Services.Modules; /// /// 事件总线模块,用于注册和管理事件总线服务。 /// 该模块负责将事件总线注册到依赖注入容器中,并提供初始化和销毁功能。 /// public sealed class EventBusModule : IServiceModule { /// /// 获取模块名称。 /// public string ModuleName => nameof(EventBusModule); /// /// 获取模块优先级,数值越小优先级越高。 /// public int Priority => 10; /// /// 获取模块启用状态,始终返回 true 表示该模块默认启用。 /// public bool IsEnabled => true; /// /// 注册事件总线到依赖注入容器。 /// 创建事件总线实例并将其注册为多例服务。 /// /// 依赖注入容器实例。 public void Register(IIocContainer container) { container.RegisterPlurality(new EventBus()); } /// /// 初始化模块。 /// 当前实现为空,因为事件总线无需额外初始化逻辑。 /// public void Initialize() { } /// /// 异步销毁模块。 /// 当前实现为空,因为事件总线无需特殊销毁逻辑。 /// /// 表示异步操作完成的任务。 public ValueTask DestroyAsync() { return ValueTask.CompletedTask; } }