2022-12-01 16:37:39 +01:00

37 lines
1.4 KiB
VB.net

Imports DigitalData.Modules.Logging
Imports Quartz.Logging
Public Class LogProvider
Implements ILogProvider
Private ReadOnly _Logger As DigitalData.Modules.Logging.Logger
Public Sub New(LogConfig As LogConfig)
MyBase.New()
_Logger = LogConfig.GetLogger()
End Sub
Private Function GetLogger(name As String) As Quartz.Logging.Logger Implements ILogProvider.GetLogger
Return Function(level, func, exception, parameters)
If exception IsNot Nothing Then
_Logger.Error(exception)
ElseIf level >= LogLevel.Debug AndAlso func IsNot Nothing Then
_Logger.Debug(func(), parameters)
ElseIf level >= LogLevel.Info AndAlso func IsNot Nothing Then
_Logger.Info(func(), parameters)
End If
Return True
End Function
End Function
Private Function OpenNestedContext(message As String) As IDisposable Implements ILogProvider.OpenNestedContext
_Logger.Warn("OpenNestedContext is not implemented")
Throw New NotImplementedException()
End Function
Public Function OpenMappedContext(key As String, value As Object, Optional destructure As Boolean = False) As IDisposable Implements ILogProvider.OpenMappedContext
_Logger.Warn("OpenMappedContext is not implemented")
Throw New NotImplementedException()
End Function
End Class