mirror of
https://github.com/GeWuYou/GFramework.git
synced 2026-03-22 19:03:29 +08:00
- 更新所有引用GFramework.Core.Abstractions.Architecture的文件 - 将ArchitectureModuleRegistry.cs从Architecture目录移动到Architectures目录 - 将IArchitecture.cs从Architecture目录移动到Architectures目录 - 将IArchitectureConfiguration.cs从Architecture目录移动到Architectures目录 - 将IArchitectureContext.cs从Architecture目录移动到Architectures目录 - 将IArchitectureContextProvider.cs从Architecture目录移动到Architectures目录 - 将IArchitectureLifecycleHook.cs从Architecture目录移动到Architectures目录 - 将IArchitectureModule.cs从Architecture目录移动到Architectures目录 - 将IArchitecturePhaseListener.cs从Architecture目录移动到Architectures目录 - 将IArchitectureServices.cs从Architecture目录移动到Architectures目录 - 将IServiceModule.cs从Architecture目录移动到Architectures目录 - 将IServiceModuleManager.cs从Architecture目录移动到Architectures目录 - 在ArchitectureModuleRegistry中将私有字段_factories重命名为Factories并添加StringComparer.Ordinal参数
43 lines
1.3 KiB
C#
43 lines
1.3 KiB
C#
using GFramework.Core.Abstractions.Architectures;
|
||
using GFramework.Core.Abstractions.Rule;
|
||
using GFramework.Core.Architectures;
|
||
|
||
namespace GFramework.Core.Rule;
|
||
|
||
/// <summary>
|
||
/// 上下文感知基类,实现了IContextAware接口,为需要感知架构上下文的类提供基础实现
|
||
/// </summary>
|
||
public abstract class ContextAwareBase : IContextAware
|
||
{
|
||
/// <summary>
|
||
/// 获取当前实例的架构上下文
|
||
/// </summary>
|
||
protected IArchitectureContext? Context { get; set; }
|
||
|
||
/// <summary>
|
||
/// 设置架构上下文的实现方法,由框架调用
|
||
/// </summary>
|
||
/// <param name="context">要设置的架构上下文实例</param>
|
||
void IContextAware.SetContext(IArchitectureContext context)
|
||
{
|
||
Context = context;
|
||
OnContextReady();
|
||
}
|
||
|
||
/// <summary>
|
||
/// 获取架构上下文
|
||
/// </summary>
|
||
/// <returns>当前架构上下文对象</returns>
|
||
IArchitectureContext IContextAware.GetContext()
|
||
{
|
||
Context ??= GameContext.GetFirstArchitectureContext();
|
||
return Context;
|
||
}
|
||
|
||
/// <summary>
|
||
/// 当上下文准备就绪时调用的虚方法,子类可以重写此方法来执行上下文相关的初始化逻辑
|
||
/// </summary>
|
||
protected virtual void OnContextReady()
|
||
{
|
||
}
|
||
} |