29 lines
801 B
C#
29 lines
801 B
C#
using System;
|
|
namespace ln.logging
|
|
{
|
|
public abstract class LoggingBackend : ILoggingBackend
|
|
{
|
|
public LogLevel MinLogLevel { get; set; } = LogLevel.FATAL;
|
|
public LogLevel MaxLogLevel { get; set; } = LogLevel.MAX;
|
|
|
|
public LoggingBackend()
|
|
{
|
|
}
|
|
|
|
public void Message(LogLevel logLevel, string[] lines)
|
|
{
|
|
if ((logLevel >= MinLogLevel) && (logLevel <= MaxLogLevel))
|
|
MessageReceived(logLevel, lines);
|
|
}
|
|
|
|
protected abstract void MessageReceived(LogLevel logLevel, String[] lines);
|
|
|
|
|
|
public void Log(LogLevel logLevel,String message,params object[] p)
|
|
{
|
|
string[] lines = String.Format(message, p).Split('\n', '\r');
|
|
Message(logLevel, lines);
|
|
}
|
|
}
|
|
}
|