From 9a07b1b5fb000c09725abdc2dd86e4f9b0620c7c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Halil=20=C4=B0brahim=20Kalkan?= Date: Sun, 5 Apr 2020 22:47:25 +0300 Subject: [PATCH] Use property injection for the IExceptionNotifier of the AbpTimer --- .../NullExceptionNotifier.cs | 19 +++++++++++++++++++ .../Volo/Abp/Threading/AbpTimer.cs | 6 +++--- 2 files changed, 22 insertions(+), 3 deletions(-) create mode 100644 framework/src/Volo.Abp.Core/Volo/Abp/ExceptionHandling/NullExceptionNotifier.cs diff --git a/framework/src/Volo.Abp.Core/Volo/Abp/ExceptionHandling/NullExceptionNotifier.cs b/framework/src/Volo.Abp.Core/Volo/Abp/ExceptionHandling/NullExceptionNotifier.cs new file mode 100644 index 0000000000..77043cba48 --- /dev/null +++ b/framework/src/Volo.Abp.Core/Volo/Abp/ExceptionHandling/NullExceptionNotifier.cs @@ -0,0 +1,19 @@ +using System.Threading.Tasks; + +namespace Volo.Abp.ExceptionHandling +{ + public class NullExceptionNotifier : IExceptionNotifier + { + public static NullExceptionNotifier Instance { get; } = new NullExceptionNotifier(); + + private NullExceptionNotifier() + { + + } + + public Task NotifyAsync(ExceptionNotificationContext context) + { + return Task.CompletedTask; + } + } +} \ No newline at end of file diff --git a/framework/src/Volo.Abp.Threading/Volo/Abp/Threading/AbpTimer.cs b/framework/src/Volo.Abp.Threading/Volo/Abp/Threading/AbpTimer.cs index a68d15c7a2..5c5041cdf6 100644 --- a/framework/src/Volo.Abp.Threading/Volo/Abp/Threading/AbpTimer.cs +++ b/framework/src/Volo.Abp.Threading/Volo/Abp/Threading/AbpTimer.cs @@ -30,15 +30,15 @@ namespace Volo.Abp.Threading public ILogger Logger { get; set; } - protected IExceptionNotifier ExceptionNotifier { get; } + public IExceptionNotifier ExceptionNotifier { get; set; } private readonly Timer _taskTimer; private volatile bool _performingTasks; private volatile bool _isRunning; - public AbpTimer(IExceptionNotifier exceptionNotifier) + public AbpTimer() { - ExceptionNotifier = exceptionNotifier; + ExceptionNotifier = NullExceptionNotifier.Instance; Logger = NullLogger.Instance; _taskTimer = new Timer(