From 4ffbf69a6709edb80533e3c716c833cd1fc30368 Mon Sep 17 00:00:00 2001 From: liangshiwei Date: Thu, 13 Jul 2023 16:49:42 +0800 Subject: [PATCH] Enable nullable annotations for Volo.Abp.BackgroundWorkers.Hangfire --- .../Volo.Abp.BackgroundWorkers.Hangfire.csproj | 2 ++ .../Hangfire/AbpBackgroundWorkersHangfireModule.cs | 2 +- .../Hangfire/HangfireBackgroundWorkerBase.cs | 6 +++--- .../Hangfire/HangfireBackgroundWorkerManager.cs | 6 +++--- .../Hangfire/HangfirePeriodicBackgroundWorkerAdapter.cs | 6 +++--- .../BackgroundWorkers/Hangfire/IHangfireBackgroundWorker.cs | 4 ++-- 6 files changed, 14 insertions(+), 12 deletions(-) diff --git a/framework/src/Volo.Abp.BackgroundWorkers.Hangfire/Volo.Abp.BackgroundWorkers.Hangfire.csproj b/framework/src/Volo.Abp.BackgroundWorkers.Hangfire/Volo.Abp.BackgroundWorkers.Hangfire.csproj index 9792dbf1ff..bec3d235e6 100644 --- a/framework/src/Volo.Abp.BackgroundWorkers.Hangfire/Volo.Abp.BackgroundWorkers.Hangfire.csproj +++ b/framework/src/Volo.Abp.BackgroundWorkers.Hangfire/Volo.Abp.BackgroundWorkers.Hangfire.csproj @@ -5,6 +5,8 @@ netstandard2.0;netstandard2.1;net7.0 + enable + Nullable Volo.Abp.BackgroundWorkers.Hangfire Volo.Abp.BackgroundWorkers.Hangfire $(AssetTargetFallback);portable-net45+win8+wp8+wpa81; diff --git a/framework/src/Volo.Abp.BackgroundWorkers.Hangfire/Volo/Abp/BackgroundWorkers/Hangfire/AbpBackgroundWorkersHangfireModule.cs b/framework/src/Volo.Abp.BackgroundWorkers.Hangfire/Volo/Abp/BackgroundWorkers/Hangfire/AbpBackgroundWorkersHangfireModule.cs index 50f43736ff..afe9a90a8a 100644 --- a/framework/src/Volo.Abp.BackgroundWorkers.Hangfire/Volo/Abp/BackgroundWorkers/Hangfire/AbpBackgroundWorkersHangfireModule.cs +++ b/framework/src/Volo.Abp.BackgroundWorkers.Hangfire/Volo/Abp/BackgroundWorkers/Hangfire/AbpBackgroundWorkersHangfireModule.cs @@ -38,7 +38,7 @@ public class AbpBackgroundWorkersHangfireModule : AbpModule AsyncHelper.RunSync(() => OnPreApplicationInitializationAsync(context)); } - private BackgroundJobServer CreateOnlyEnqueueJobServer(IServiceProvider serviceProvider) + private BackgroundJobServer? CreateOnlyEnqueueJobServer(IServiceProvider serviceProvider) { serviceProvider.GetRequiredService(); return null; diff --git a/framework/src/Volo.Abp.BackgroundWorkers.Hangfire/Volo/Abp/BackgroundWorkers/Hangfire/HangfireBackgroundWorkerBase.cs b/framework/src/Volo.Abp.BackgroundWorkers.Hangfire/Volo/Abp/BackgroundWorkers/Hangfire/HangfireBackgroundWorkerBase.cs index c4cf1d6be0..e5cef1ce42 100644 --- a/framework/src/Volo.Abp.BackgroundWorkers.Hangfire/Volo/Abp/BackgroundWorkers/Hangfire/HangfireBackgroundWorkerBase.cs +++ b/framework/src/Volo.Abp.BackgroundWorkers.Hangfire/Volo/Abp/BackgroundWorkers/Hangfire/HangfireBackgroundWorkerBase.cs @@ -6,11 +6,11 @@ namespace Volo.Abp.BackgroundWorkers.Hangfire; public abstract class HangfireBackgroundWorkerBase : BackgroundWorkerBase, IHangfireBackgroundWorker { - public string RecurringJobId { get; set; } + public string? RecurringJobId { get; set; } - public string CronExpression { get; set; } + public string CronExpression { get; set; } = default!; - public TimeZoneInfo TimeZone { get; set; } + public TimeZoneInfo? TimeZone { get; set; } public string Queue { get; set; } diff --git a/framework/src/Volo.Abp.BackgroundWorkers.Hangfire/Volo/Abp/BackgroundWorkers/Hangfire/HangfireBackgroundWorkerManager.cs b/framework/src/Volo.Abp.BackgroundWorkers.Hangfire/Volo/Abp/BackgroundWorkers/Hangfire/HangfireBackgroundWorkerManager.cs index 594f01343e..4b6582d03d 100644 --- a/framework/src/Volo.Abp.BackgroundWorkers.Hangfire/Volo/Abp/BackgroundWorkers/Hangfire/HangfireBackgroundWorkerManager.cs +++ b/framework/src/Volo.Abp.BackgroundWorkers.Hangfire/Volo/Abp/BackgroundWorkers/Hangfire/HangfireBackgroundWorkerManager.cs @@ -14,7 +14,7 @@ namespace Volo.Abp.BackgroundWorkers.Hangfire; [Dependency(ReplaceServices = true)] public class HangfireBackgroundWorkerManager : BackgroundWorkerManager, ISingletonDependency { - protected AbpHangfireBackgroundJobServer BackgroundJobServer { get; set; } + protected AbpHangfireBackgroundJobServer BackgroundJobServer { get; set; } = default!; protected IServiceProvider ServiceProvider { get; } public HangfireBackgroundWorkerManager(IServiceProvider serviceProvider) @@ -57,7 +57,7 @@ public class HangfireBackgroundWorkerManager : BackgroundWorkerManager, ISinglet var timer = worker.GetType() .GetProperty("Timer", BindingFlags.Instance | BindingFlags.NonPublic)?.GetValue(worker); - var period = worker is AsyncPeriodicBackgroundWorkerBase ? ((AbpAsyncTimer)timer)?.Period : ((AbpTimer)timer)?.Period; + var period = worker is AsyncPeriodicBackgroundWorkerBase ? ((AbpAsyncTimer?)timer)?.Period : ((AbpTimer?)timer)?.Period; if (period == null) { @@ -65,7 +65,7 @@ public class HangfireBackgroundWorkerManager : BackgroundWorkerManager, ISinglet } var adapterType = typeof(HangfirePeriodicBackgroundWorkerAdapter<>).MakeGenericType(ProxyHelper.GetUnProxiedType(worker)); - var workerAdapter = Activator.CreateInstance(adapterType) as IHangfireBackgroundWorker; + var workerAdapter = (Activator.CreateInstance(adapterType) as IHangfireBackgroundWorker)!; RecurringJob.AddOrUpdate(() => workerAdapter.DoWorkAsync(cancellationToken), GetCron(period.Value), workerAdapter.TimeZone, workerAdapter.Queue); diff --git a/framework/src/Volo.Abp.BackgroundWorkers.Hangfire/Volo/Abp/BackgroundWorkers/Hangfire/HangfirePeriodicBackgroundWorkerAdapter.cs b/framework/src/Volo.Abp.BackgroundWorkers.Hangfire/Volo/Abp/BackgroundWorkers/Hangfire/HangfirePeriodicBackgroundWorkerAdapter.cs index e1cec7da85..d624966fe4 100644 --- a/framework/src/Volo.Abp.BackgroundWorkers.Hangfire/Volo/Abp/BackgroundWorkers/Hangfire/HangfirePeriodicBackgroundWorkerAdapter.cs +++ b/framework/src/Volo.Abp.BackgroundWorkers.Hangfire/Volo/Abp/BackgroundWorkers/Hangfire/HangfirePeriodicBackgroundWorkerAdapter.cs @@ -14,8 +14,8 @@ public class HangfirePeriodicBackgroundWorkerAdapter : HangfireBackgrou public HangfirePeriodicBackgroundWorkerAdapter() { _doWorkAsyncMethod = - typeof(TWorker).GetMethod("DoWorkAsync", BindingFlags.Instance | BindingFlags.NonPublic); - _doWorkMethod = typeof(TWorker).GetMethod("DoWork", BindingFlags.Instance | BindingFlags.NonPublic); + typeof(TWorker).GetMethod("DoWorkAsync", BindingFlags.Instance | BindingFlags.NonPublic)!; + _doWorkMethod = typeof(TWorker).GetMethod("DoWork", BindingFlags.Instance | BindingFlags.NonPublic)!; } public async override Task DoWorkAsync(CancellationToken cancellationToken = default) @@ -26,7 +26,7 @@ public class HangfirePeriodicBackgroundWorkerAdapter : HangfireBackgrou switch (worker) { case AsyncPeriodicBackgroundWorkerBase asyncPeriodicBackgroundWorker: - await (Task)_doWorkAsyncMethod.Invoke(asyncPeriodicBackgroundWorker, new object[] { workerContext }); + await (Task)(_doWorkAsyncMethod.Invoke(asyncPeriodicBackgroundWorker, new object[] { workerContext })!); break; case PeriodicBackgroundWorkerBase periodicBackgroundWorker: _doWorkMethod.Invoke(periodicBackgroundWorker, new object[] { workerContext }); diff --git a/framework/src/Volo.Abp.BackgroundWorkers.Hangfire/Volo/Abp/BackgroundWorkers/Hangfire/IHangfireBackgroundWorker.cs b/framework/src/Volo.Abp.BackgroundWorkers.Hangfire/Volo/Abp/BackgroundWorkers/Hangfire/IHangfireBackgroundWorker.cs index 883f488684..4371ceb8b3 100644 --- a/framework/src/Volo.Abp.BackgroundWorkers.Hangfire/Volo/Abp/BackgroundWorkers/Hangfire/IHangfireBackgroundWorker.cs +++ b/framework/src/Volo.Abp.BackgroundWorkers.Hangfire/Volo/Abp/BackgroundWorkers/Hangfire/IHangfireBackgroundWorker.cs @@ -6,11 +6,11 @@ namespace Volo.Abp.BackgroundWorkers.Hangfire; public interface IHangfireBackgroundWorker : IBackgroundWorker { - string RecurringJobId { get; set; } + string? RecurringJobId { get; set; } string CronExpression { get; set; } - TimeZoneInfo TimeZone { get; set; } + TimeZoneInfo? TimeZone { get; set; } string Queue { get; set; }