GeWuYou c593c5016b feat(architecture): 实现服务模块化管理和ECS功能
- 将架构服务重构为模块化设计,引入ServiceModuleManager统一管理
- 新增EventBusModule、CommandExecutorModule、QueryExecutorModule等核心服务模块
- 实现ECS模块支持,可配置启用Entity Component System功能
- 在架构初始化过程中集成模块注册、初始化和销毁流程
- 更新架构属性配置,添加EnableEcs开关控制ECS功能启用
- 优化服务获取方式,从直接依赖改为通过容器动态获取
- 移除架构上下文中的ECS相关实现代码,统一由ECS模块管理
2026-02-23 13:53:29 +08:00

34 lines
1.1 KiB
C#
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

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