mirror of
https://github.com/Caraxi/mare.client.git
synced 2025-12-12 17:07:22 +01:00
Loggerrework (#45)
* test some refactoring for cachedplayer * rework logging * fix saving of log level --------- Co-authored-by: rootdarkarchon <root.darkarchon@outlook.com>
This commit is contained in:
parent
7f36e80e2a
commit
2ae5d42e4d
49 changed files with 676 additions and 691 deletions
|
|
@ -1,4 +1,4 @@
|
|||
using MareSynchronos.Utils;
|
||||
using Microsoft.Extensions.Logging;
|
||||
|
||||
namespace MareSynchronos.Mediator;
|
||||
|
||||
|
|
@ -7,6 +7,12 @@ public class MareMediator : IDisposable
|
|||
private record MediatorSubscriber(IMediatorSubscriber Subscriber, Action<IMessage> Action);
|
||||
|
||||
private readonly Dictionary<Type, HashSet<MediatorSubscriber>> _subscriberDict = new();
|
||||
private readonly ILogger<MareMediator> _logger;
|
||||
|
||||
public MareMediator(ILogger<MareMediator> logger)
|
||||
{
|
||||
_logger = logger;
|
||||
}
|
||||
|
||||
public void Subscribe<T>(IMediatorSubscriber subscriber, Action<IMessage> action) where T : IMessage
|
||||
{
|
||||
|
|
@ -38,7 +44,7 @@ public class MareMediator : IDisposable
|
|||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
Logger.Error("Error executing " + message.GetType() + " for subscriber " + subscriber + ", removing from Mediator", ex);
|
||||
_logger.LogCritical("Error executing " + message.GetType() + " for subscriber " + subscriber + ", removing from Mediator", ex);
|
||||
subscribers.RemoveWhere(s => s == subscriber);
|
||||
}
|
||||
}
|
||||
|
|
@ -51,13 +57,13 @@ public class MareMediator : IDisposable
|
|||
{
|
||||
var unSubbed = kvp.Value.RemoveWhere(p => p.Subscriber == subscriber);
|
||||
if (unSubbed > 0)
|
||||
Logger.Verbose(subscriber + " unsubscribed from " + kvp.Key.Name);
|
||||
_logger.LogTrace(subscriber + " unsubscribed from " + kvp.Key.Name);
|
||||
}
|
||||
}
|
||||
|
||||
public void Dispose()
|
||||
{
|
||||
Logger.Verbose($"Disposing {GetType()}");
|
||||
_logger.LogTrace($"Disposing {GetType()}");
|
||||
_subscriberDict.Clear();
|
||||
}
|
||||
}
|
||||
|
|
@ -1,18 +1,20 @@
|
|||
using MareSynchronos.Utils;
|
||||
using Microsoft.Extensions.Logging;
|
||||
|
||||
namespace MareSynchronos.Mediator;
|
||||
|
||||
public abstract class MediatorSubscriberBase : IMediatorSubscriber
|
||||
{
|
||||
protected ILogger _logger { get; }
|
||||
public MareMediator Mediator { get; }
|
||||
protected MediatorSubscriberBase(MareMediator mediator)
|
||||
protected MediatorSubscriberBase(ILogger logger, MareMediator mediator)
|
||||
{
|
||||
_logger = logger;
|
||||
Mediator = mediator;
|
||||
}
|
||||
|
||||
public virtual void Dispose()
|
||||
{
|
||||
Logger.Verbose($"Disposing {GetType()}");
|
||||
_logger.LogTrace($"Disposing {GetType()}");
|
||||
Mediator.UnsubscribeAll(this);
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,19 +1,22 @@
|
|||
using Dalamud.Interface.Windowing;
|
||||
using MareSynchronos.Utils;
|
||||
using Microsoft.Extensions.Logging;
|
||||
|
||||
namespace MareSynchronos.Mediator;
|
||||
|
||||
public abstract class WindowMediatorSubscriberBase : Window, IMediatorSubscriber
|
||||
{
|
||||
protected readonly ILogger _logger;
|
||||
|
||||
public MareMediator Mediator { get; }
|
||||
protected WindowMediatorSubscriberBase(MareMediator mediator, string name) : base(name)
|
||||
protected WindowMediatorSubscriberBase(ILogger logger, MareMediator mediator, string name) : base(name)
|
||||
{
|
||||
_logger = logger;
|
||||
Mediator = mediator;
|
||||
}
|
||||
|
||||
public virtual void Dispose()
|
||||
{
|
||||
Logger.Verbose($"Disposing {GetType()}");
|
||||
_logger.LogTrace($"Disposing {GetType()}");
|
||||
Mediator.UnsubscribeAll(this);
|
||||
}
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue