using Microsoft.Extensions.Logging; namespace ZymonicServices { public interface IZymonicLogger { public void LogError(string message, params object[]? args); public void LogWarning(string message, params object[]? args); public void LogInformation(string message, params object[]? args); public void LogDebug(string message, params object[]? args); public void LogTrace(string message, params object[]? args); } public class ZymonicLogger { ILogger _logger; public ZymonicLogger(ILogger logger) { _logger = logger; } public void LogError(string message, params object[]? args) { if (args == null) { _logger.LogError(message); } else { _logger.LogError(message, args); } } public void LogWarning(string message, params object[]? args) { if (args == null) { _logger.LogWarning(message); } else { _logger.LogWarning(message, args); } } public void LogInformation(string message, params object[]? args) { if (args == null) { _logger.LogInformation(message); } else { _logger.LogInformation(message, args); } } public void LogDebug(string message, params object[]? args) { if (args == null) { _logger.LogDebug(message); } else { _logger.LogDebug(message, args); } } public void LogTrace(string message, params object[]? args) { if (args == null) { _logger.LogTrace(message); } else { _logger.LogTrace(message, args); } } } }