From 485b2a11fe2a2e41a4e4fc6dd073b8b1e6ed8729 Mon Sep 17 00:00:00 2001 From: GeWuYou <95328647+GeWuYou@users.noreply.github.com> Date: Thu, 25 Dec 2025 08:34:46 +0800 Subject: [PATCH] =?UTF-8?q?feat(utility):=20=E6=B7=BB=E5=8A=A0=E6=8A=BD?= =?UTF-8?q?=E8=B1=A1=E4=B8=8A=E4=B8=8B=E6=96=87=E5=B7=A5=E5=85=B7=E7=B1=BB?= =?UTF-8?q?=E5=92=8C=E6=8E=A5=E5=8F=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - 创建了 AbstractContextUtility 抽象类,继承 ContextAwareBase 并实现 IContextUtility 接口 - 实现了 IContextUtility 接口,提供上下文相关的通用功能 - 添加了 Init 方法用于初始化上下文工具,包含日志记录功能 - 提供了抽象 OnInit 方法供子类实现具体初始化逻辑 - 定义了 IContextUtility 接口,继承 IUtility 和 IContextAware 接口 - 添加了上下文感知能力的工具功能支持 --- .../utility/AbstractContextUtility.cs | 34 +++++++++++++++++++ GFramework.Core/utility/IContextUtility.cs | 16 +++++++++ 2 files changed, 50 insertions(+) create mode 100644 GFramework.Core/utility/AbstractContextUtility.cs create mode 100644 GFramework.Core/utility/IContextUtility.cs diff --git a/GFramework.Core/utility/AbstractContextUtility.cs b/GFramework.Core/utility/AbstractContextUtility.cs new file mode 100644 index 0000000..6bb1f9c --- /dev/null +++ b/GFramework.Core/utility/AbstractContextUtility.cs @@ -0,0 +1,34 @@ +using GFramework.Core.logging; +using GFramework.Core.rule; + +namespace GFramework.Core.utility; + +/// +/// 抽象上下文工具类,提供上下文相关的通用功能实现 +/// 继承自ContextAwareBase并实现IContextUtility接口 +/// +public abstract class AbstractContextUtility : ContextAwareBase, IContextUtility +{ + private ILogger _logger = null!; + + /// + /// 初始化上下文工具类 + /// + void IContextUtility.Init() + { + // 获取上下文中的日志记录器 + _logger = Context.Logger; + _logger.Debug($"Initializing Context Utility: {GetType().Name}"); + + // 执行子类实现的初始化逻辑 + OnInit(); + + // 记录初始化完成信息 + _logger.Info($"Context Utility initialized: {GetType().Name}"); + } + + /// + /// 抽象初始化方法,由子类实现具体的初始化逻辑 + /// + protected abstract void OnInit(); +} diff --git a/GFramework.Core/utility/IContextUtility.cs b/GFramework.Core/utility/IContextUtility.cs new file mode 100644 index 0000000..7f597c9 --- /dev/null +++ b/GFramework.Core/utility/IContextUtility.cs @@ -0,0 +1,16 @@ +using GFramework.Core.rule; + +namespace GFramework.Core.utility; + +/// +/// 上下文工具接口,继承自IUtility和IContextAware接口 +/// 提供具有上下文感知能力的工具功能 +/// +public interface IContextUtility:IUtility,IContextAware +{ + /// + /// 初始化上下文工具 + /// + void Init(); +} +