using GFramework.Core.Abstractions.architecture; using GFramework.Core.Abstractions.command; using GFramework.Core.Abstractions.events; using GFramework.Core.Abstractions.ioc; using GFramework.Core.Abstractions.query; using GFramework.Core.command; using GFramework.Core.events; using GFramework.Core.ioc; using GFramework.Core.query; namespace GFramework.Core.architecture; /// /// 架构服务类,提供依赖注入容器、事件系统、命令总线和查询总线等核心服务 /// public class ArchitectureServices : IArchitectureServices { private IArchitectureContext _context = null!; /// /// 获取依赖注入容器 /// public IIocContainer Container { get; } = new IocContainer(); /// /// 获取类型事件系统 /// public IEventBus EventBus { get; } = new EventBus(); /// /// 获取命令总线 /// public ICommandBus CommandBus { get; } = new CommandBus(); /// /// 获取查询总线 /// public IQueryBus QueryBus { get; } = new QueryBus(); /// /// 设置架构上下文 /// /// 架构上下文对象 public void SetContext(IArchitectureContext context) { _context = context; Container.SetContext(context); } /// /// 获取架构上下文 /// /// 架构上下文对象 public IArchitectureContext GetContext() { return _context; } }