Mike Phares d6887992a0 MET08RESIMAPCDE - v2.43.0 -
Force EquipId to CellInstanceName and Jenkinsfile
2022-05-05 16:07:29 -07:00

28 lines
765 B
C#

using Microsoft.Extensions.Logging;
using System.Collections.Concurrent;
namespace Shared;
public class FeedbackProvider : ILoggerProvider
{
private readonly LogLevel _LogLevel;
private readonly IFeedback _Feedback;
private readonly ConcurrentDictionary<string, FeedbackLogger> _Loggers;
public FeedbackProvider(LogLevel logLevel, IFeedback feedback)
{
_LogLevel = logLevel;
_Feedback = feedback;
_Loggers = new ConcurrentDictionary<string, FeedbackLogger>();
}
public ILogger CreateLogger(string categoryName) => _Loggers.GetOrAdd(categoryName, name => new FeedbackLogger(_LogLevel, _Feedback, name));
public void Dispose()
{
_Loggers.Clear();
GC.SuppressFinalize(this);
}
}