Files
messengerapi/code/MessengerApi/Factories/LoggerFactory.cs
T

33 lines
986 B
C#

using MessengerApi.Configuration.Model;
namespace MessengerApi.Factories
{
public class LoggerFactory : IServiceProvider
{
private readonly MessengerConfiguration _configuration;
public LoggerFactory(MessengerConfiguration configuration)
{
_configuration = configuration;
}
public ILogger CreateLogger()
{
var logger = new ConsoleLogger()
{
IsDebugOutputEnabled = (this._configuration.Verbosity == Configuration.Enums.LoggingVerbosity.Debug || this._configuration.Verbosity == Configuration.Enums.LoggingVerbosity.Trace)
? true : false,
IsTraceOutputEnabled = this._configuration.Verbosity == Configuration.Enums.LoggingVerbosity.Trace
? true : false
};
return logger;
}
public object GetService(Type serviceType)
{
return this.CreateLogger();
}
}
}