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();
+}
+