using Microsoft.Extensions.Logging; using System; namespace Pal.Client.DependencyInjection.Logging { internal sealed class DalamudLoggerProvider : ILoggerProvider, ISupportExternalScope { private IExternalScopeProvider? _scopeProvider; public ILogger CreateLogger(string categoryName) => new DalamudLogger(categoryName, _scopeProvider); /// /// Manual logger creation, doesn't handle scopes. /// public ILogger CreateLogger(Type type) => CreateLogger(type.FullName ?? type.ToString()); /// /// Manual logger creation, doesn't handle scopes. /// public ILogger CreateLogger() => CreateLogger(typeof(T)); public void SetScopeProvider(IExternalScopeProvider scopeProvider) { _scopeProvider = scopeProvider; } public void Dispose() { } } }