From: AeonLucid Date: Sat, 24 Oct 2020 21:10:07 +0000 (+0200) Subject: Remove scoping for event listeners X-Git-Tag: v1.2.2~96^2~4 X-Git-Url: https://git.deb.at/?a=commitdiff_plain;h=57c1978212e246d554ecde05f1e00b11bb4a5e44;p=rhonda%2Fimpostor.git Remove scoping for event listeners --- diff --git a/src/Impostor.Server/Events/EventManager.cs b/src/Impostor.Server/Events/EventManager.cs index 6d0a47f..6147e2f 100644 --- a/src/Impostor.Server/Events/EventManager.cs +++ b/src/Impostor.Server/Events/EventManager.cs @@ -59,8 +59,6 @@ namespace Impostor.Server.Events public bool IsRegistered() where TEvent : IEvent { - using var scope = _serviceProvider.CreateScope(); - return GetHandlers(_serviceProvider).Any(); } @@ -68,24 +66,18 @@ namespace Impostor.Server.Events public async ValueTask CallAsync(T @event) where T : IEvent { - var scope = _serviceProvider.CreateScope(); - try { - foreach (var (handler, eventListener) in GetHandlers(scope.ServiceProvider) + foreach (var (handler, eventListener) in GetHandlers(_serviceProvider) .OrderByDescending(e => e.Listener.Priority)) { - await eventListener.InvokeAsync(handler, @event, scope.ServiceProvider); + await eventListener.InvokeAsync(handler, @event, _serviceProvider); } } catch (Exception e) { _logger.LogError(e, "Invocation of event {0} threw an exception.", @event.GetType().Name); } - finally - { - scope.Dispose(); - } } ///