using GFramework.Core.Abstractions.Logging; using GFramework.Core.Logging; namespace GFramework.Godot.Logging; /// /// Godot日志工厂提供程序,用于创建Godot日志记录器实例 /// public sealed class GodotLoggerFactoryProvider : ILoggerFactoryProvider { private readonly ILoggerFactory _cachedFactory; /// /// 初始化Godot日志记录器工厂提供程序 /// public GodotLoggerFactoryProvider() { _cachedFactory = new CachedLoggerFactory(new GodotLoggerFactory()); } /// /// 获取或设置最小日志级别 /// public LogLevel MinLevel { get; set; } /// /// 创建指定名称的日志记录器实例(带缓存) /// /// 日志记录器的名称 /// 返回配置了最小日志级别的Godot日志记录器实例 public ILogger CreateLogger(string name) { return _cachedFactory.GetLogger(name, MinLevel); } }