GFramework/GFramework.Core/rule/ContextAwareBase.cs
GwWuYou f620dea073 refactor(architecture): 重构日志系统和配置属性结构
- 将日志工厂配置改为日志属性配置,使用LoggerProperties替代ILoggerFactory
- 引入ArchitectureProperties替代ArchitectureOptions,统一架构配置属性
- 修改日志记录器创建方式,使用LoggerFactoryResolver.Provider统一管理
- 重构控制台日志工厂提供程序接口,移除minLevel参数
- 更新架构配置接口和上下文接口中的日志相关属性
- 移除Godot日志生成器相关的源代码生成器和特性
- 更新源代码生成器中的日志创建逻辑,使用新的日志工厂解析器
2026-01-01 21:39:08 +08:00

41 lines
1.2 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.architecture;
using GFramework.Core.Abstractions.rule;
namespace GFramework.Core.rule;
/// <summary>
/// 上下文感知基类实现了IContextAware接口为需要感知架构上下文的类提供基础实现
/// </summary>
public abstract class ContextAwareBase : IContextAware
{
/// <summary>
/// 获取当前实例的架构上下文
/// </summary>
protected IArchitectureContext Context { get; set; } = null!;
/// <summary>
/// 设置架构上下文的实现方法,由框架调用
/// </summary>
/// <param name="context">要设置的架构上下文实例</param>
void IContextAware.SetContext(IArchitectureContext context)
{
Context = context;
OnContextReady();
}
/// <summary>
/// 获取架构上下文
/// </summary>
/// <returns>当前架构上下文对象</returns>
IArchitectureContext IContextAware.GetContext()
{
return Context;
}
/// <summary>
/// 当上下文准备就绪时调用的虚方法,子类可以重写此方法来执行上下文相关的初始化逻辑
/// </summary>
protected virtual void OnContextReady()
{
}
}