From db308249573fdc4b52a3e92cbf0c2521cb4c457a Mon Sep 17 00:00:00 2001 From: Brett Hewitson Date: Wed, 22 Jun 2022 01:14:08 +1000 Subject: [PATCH] IAsyncDisposable Change - removed own implementation, using BCL library version now --- src/ARKServerManager/ARKServerManager.csproj | 79 +++++++++-------- src/ARKServerManager/Lib/ServerRCON.cs | 3 +- .../Lib/ServerStatusUpdateRegistration.cs | 3 +- src/ARKServerManager/packages.config | 15 ---- .../ConanServerManager.csproj | 84 +++++++++---------- src/ConanServerManager/Lib/ServerRcon.cs | 3 +- .../Lib/ServerStatusUpdateRegistration.cs | 3 +- src/ConanServerManager/packages.config | 16 ---- .../Interfaces/IAsyncDisposable.cs | 9 -- src/ServerManager.Common/Lib/ActionQueue.cs | 5 +- .../ServerManager.Common.csproj | 2 + src/ServerManager.Common/Utils/TaskUtils.cs | 5 ++ 12 files changed, 89 insertions(+), 138 deletions(-) delete mode 100644 src/ARKServerManager/packages.config delete mode 100644 src/ConanServerManager/packages.config delete mode 100644 src/ServerManager.Common/Interfaces/IAsyncDisposable.cs diff --git a/src/ARKServerManager/ARKServerManager.csproj b/src/ARKServerManager/ARKServerManager.csproj index acf4b982..8d2442af 100644 --- a/src/ARKServerManager/ARKServerManager.csproj +++ b/src/ARKServerManager/ARKServerManager.csproj @@ -147,33 +147,6 @@ true - - ..\packages\DotNetZip.1.16.0\lib\net40\DotNetZip.dll - - - ..\packages\EO.Wpf.4.0.12\lib\EO.Wpf.dll - True - - - ..\packages\Hardcodet.NotifyIcon.Wpf.1.1.0\lib\net462\Hardcodet.NotifyIcon.Wpf.dll - - - ..\packages\TaskScheduler.2.10.1\lib\net452\Microsoft.Win32.TaskScheduler.dll - - - ..\packages\WindowsAPICodePack-Core.1.1.2\lib\Microsoft.WindowsAPICodePack.dll - True - - - ..\packages\WindowsAPICodePack-Shell.1.1.1\lib\Microsoft.WindowsAPICodePack.Shell.dll - True - - - ..\packages\Newtonsoft.Json.13.0.1\lib\net45\Newtonsoft.Json.dll - - - ..\packages\NLog.5.0.1\lib\net46\NLog.dll - @@ -185,16 +158,7 @@ - - ..\packages\System.Threading.Tasks.Dataflow.6.0.0\lib\net461\System.Threading.Tasks.Dataflow.dll - - - ..\packages\System.ValueTuple.4.5.0\lib\net461\System.ValueTuple.dll - - - ..\packages\Expression.Blend.Sdk.1.0.2\lib\net45\System.Windows.Interactivity.dll - @@ -203,9 +167,6 @@ 4.0 - - ..\packages\TinyCsvParser.2.7.0\lib\netstandard2.0\TinyCsvParser.dll - @@ -635,7 +596,6 @@ Always - @@ -706,6 +666,43 @@ False - + + + 1.16.0 + + + 4.0.12 + + + 1.0.2 + + + 1.1.0 + + + 13.0.1 + + + 5.0.1 + + + 6.0.0 + + + 4.5.0 + + + 2.10.1 + + + 2.7.0 + + + 1.1.2 + + + 1.1.1 + + \ No newline at end of file diff --git a/src/ARKServerManager/Lib/ServerRCON.cs b/src/ARKServerManager/Lib/ServerRCON.cs index e3d0ba76..ad777fc3 100644 --- a/src/ARKServerManager/Lib/ServerRCON.cs +++ b/src/ARKServerManager/Lib/ServerRCON.cs @@ -2,7 +2,6 @@ using NLog; using ServerManagerTool.Common.Enums; using ServerManagerTool.Common.Extensions; -using ServerManagerTool.Common.Interfaces; using ServerManagerTool.Common.Lib; using ServerManagerTool.Common.Model; using ServerManagerTool.Common.Utils; @@ -77,7 +76,7 @@ namespace ServerManagerTool.Lib this.Players = new SortableObservableCollection(); } - public async Task DisposeAsync() + public async ValueTask DisposeAsync() { if (_cancellationTokenSource != null) { diff --git a/src/ARKServerManager/Lib/ServerStatusUpdateRegistration.cs b/src/ARKServerManager/Lib/ServerStatusUpdateRegistration.cs index debe1b12..162c0f39 100644 --- a/src/ARKServerManager/Lib/ServerStatusUpdateRegistration.cs +++ b/src/ARKServerManager/Lib/ServerStatusUpdateRegistration.cs @@ -1,7 +1,6 @@ using System; using System.Net; using System.Threading.Tasks; -using ServerManagerTool.Common.Interfaces; namespace ServerManagerTool.Lib { @@ -15,7 +14,7 @@ namespace ServerManagerTool.Lib public string ProfileId; - public async Task DisposeAsync() + public async ValueTask DisposeAsync() { await UnregisterAction(); } diff --git a/src/ARKServerManager/packages.config b/src/ARKServerManager/packages.config deleted file mode 100644 index 6be679a7..00000000 --- a/src/ARKServerManager/packages.config +++ /dev/null @@ -1,15 +0,0 @@ - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/src/ConanServerManager/ConanServerManager.csproj b/src/ConanServerManager/ConanServerManager.csproj index 98f50373..326360f1 100644 --- a/src/ConanServerManager/ConanServerManager.csproj +++ b/src/ConanServerManager/ConanServerManager.csproj @@ -134,37 +134,9 @@ true - - ..\packages\DotNetZip.1.16.0\lib\net40\DotNetZip.dll - - - ..\packages\EO.Wpf.4.0.12\lib\EO.Wpf.dll - - - ..\packages\Hardcodet.NotifyIcon.Wpf.1.1.0\lib\net462\Hardcodet.NotifyIcon.Wpf.dll - True - - - ..\packages\TaskScheduler.2.10.1\lib\net452\Microsoft.Win32.TaskScheduler.dll - - - ..\packages\WindowsAPICodePack-Core.1.1.2\lib\Microsoft.WindowsAPICodePack.dll - - - ..\packages\WindowsAPICodePack-Shell.1.1.1\lib\Microsoft.WindowsAPICodePack.Shell.dll - - - ..\packages\Newtonsoft.Json.13.0.1\lib\net45\Newtonsoft.Json.dll - - - ..\packages\NLog.5.0.1\lib\net46\NLog.dll - - - ..\packages\Stub.System.Data.SQLite.Core.NetFramework.1.0.116.0\lib\net46\System.Data.SQLite.dll - @@ -173,16 +145,7 @@ - - ..\packages\System.Threading.Tasks.Dataflow.6.0.0\lib\net461\System.Threading.Tasks.Dataflow.dll - - - ..\packages\System.ValueTuple.4.5.0\lib\net461\System.ValueTuple.dll - - - ..\packages\Expression.Blend.Sdk.1.0.2\lib\net45\System.Windows.Interactivity.dll - @@ -470,7 +433,6 @@ Always - @@ -645,13 +607,43 @@ WPFSharp.Globalizer - + + + 1.16.0 + + + 4.0.12 + + + 1.0.2 + + + 1.1.0 + + + 13.0.1 + + + 5.0.1 + + + 1.0.116 + + + 6.0.0 + + + 4.5.0 + + + 2.10.1 + + + 1.1.2 + + + 1.1.1 + + - - - - This project references NuGet package(s) that are missing on this computer. Use NuGet Package Restore to download them. For more information, see http://go.microsoft.com/fwlink/?LinkID=322105. The missing file is {0}. - - - \ No newline at end of file diff --git a/src/ConanServerManager/Lib/ServerRcon.cs b/src/ConanServerManager/Lib/ServerRcon.cs index 1c2a78dd..8e46a233 100644 --- a/src/ConanServerManager/Lib/ServerRcon.cs +++ b/src/ConanServerManager/Lib/ServerRcon.cs @@ -1,7 +1,6 @@ using ConanData; using NLog; using ServerManagerTool.Common.Enums; -using ServerManagerTool.Common.Interfaces; using ServerManagerTool.Common.Lib; using ServerManagerTool.Common.Model; using ServerManagerTool.Common.Utils; @@ -71,7 +70,7 @@ namespace ServerManagerTool.Lib this.Players = new SortableObservableCollection(); } - public async Task DisposeAsync() + public async ValueTask DisposeAsync() { if (_cancellationTokenSource != null) { diff --git a/src/ConanServerManager/Lib/ServerStatusUpdateRegistration.cs b/src/ConanServerManager/Lib/ServerStatusUpdateRegistration.cs index fcd93950..8f3380f6 100644 --- a/src/ConanServerManager/Lib/ServerStatusUpdateRegistration.cs +++ b/src/ConanServerManager/Lib/ServerStatusUpdateRegistration.cs @@ -1,7 +1,6 @@ using System; using System.Net; using System.Threading.Tasks; -using ServerManagerTool.Common.Interfaces; namespace ServerManagerTool.Lib { @@ -16,7 +15,7 @@ namespace ServerManagerTool.Lib public string ProfileId; public string GameFile; - public async Task DisposeAsync() + public async ValueTask DisposeAsync() { await UnregisterAction(); } diff --git a/src/ConanServerManager/packages.config b/src/ConanServerManager/packages.config deleted file mode 100644 index 4062d481..00000000 --- a/src/ConanServerManager/packages.config +++ /dev/null @@ -1,16 +0,0 @@ - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/src/ServerManager.Common/Interfaces/IAsyncDisposable.cs b/src/ServerManager.Common/Interfaces/IAsyncDisposable.cs deleted file mode 100644 index fde1a1e3..00000000 --- a/src/ServerManager.Common/Interfaces/IAsyncDisposable.cs +++ /dev/null @@ -1,9 +0,0 @@ -using System.Threading.Tasks; - -namespace ServerManagerTool.Common.Interfaces -{ - public interface IAsyncDisposable - { - Task DisposeAsync(); - } -} diff --git a/src/ServerManager.Common/Lib/ActionQueue.cs b/src/ServerManager.Common/Lib/ActionQueue.cs index aab396c4..47806d7e 100644 --- a/src/ServerManager.Common/Lib/ActionQueue.cs +++ b/src/ServerManager.Common/Lib/ActionQueue.cs @@ -1,5 +1,4 @@ -using ServerManagerTool.Common.Interfaces; -using System; +using System; using System.Threading.Tasks; using System.Threading.Tasks.Dataflow; @@ -44,7 +43,7 @@ namespace ServerManagerTool.Common.Lib return PostAction(() => { action.Invoke(); return true; }); } - public async Task DisposeAsync() + public async ValueTask DisposeAsync() { await PostAction(() => this.workQueue.Complete()); } diff --git a/src/ServerManager.Common/ServerManager.Common.csproj b/src/ServerManager.Common/ServerManager.Common.csproj index 91f45be4..0f99d811 100644 --- a/src/ServerManager.Common/ServerManager.Common.csproj +++ b/src/ServerManager.Common/ServerManager.Common.csproj @@ -17,9 +17,11 @@ + + diff --git a/src/ServerManager.Common/Utils/TaskUtils.cs b/src/ServerManager.Common/Utils/TaskUtils.cs index 076f52fa..98cfe469 100644 --- a/src/ServerManager.Common/Utils/TaskUtils.cs +++ b/src/ServerManager.Common/Utils/TaskUtils.cs @@ -12,6 +12,11 @@ namespace ServerManagerTool.Common.Utils // Do nothing, let the task continue. Eliminates compiler warning about non-awaited tasks in an async method. } + public static void DoNotWait(this ValueTask task) + { + // Do nothing, let the task continue. Eliminates compiler warning about non-awaited tasks in an async method. + } + public static async Task RunOnUIThreadAsync(Action action) { var app = Application.Current;