using GFramework.Core.Abstractions.Ioc; using GFramework.Core.Abstractions.Lifecycle; namespace GFramework.Core.Abstractions.Architecture; /// /// 服务模块接口,定义了服务模块的基本契约。 /// 所有服务模块必须实现此接口,以支持注册、初始化和异步销毁功能。 /// public interface IServiceModule : IInitializable, IAsyncDestroyable { /// /// 获取模块的唯一名称。 /// string ModuleName { get; } /// /// 获取模块的优先级,数值越小优先级越高。 /// 用于控制模块的注册和初始化顺序。 /// int Priority { get; } /// /// 获取模块的启用状态。 /// 返回 true 表示模块已启用,false 表示模块被禁用。 /// bool IsEnabled { get; } /// /// 注册模块提供的服务到依赖注入容器中。 /// /// 依赖注入容器实例,用于注册服务。 void Register(IIocContainer container); }