From 021a3fe3bc938c2e039dec41ba49e79ec6e57b49 Mon Sep 17 00:00:00 2001 From: David Sparer Date: Fri, 30 Sep 2016 08:02:02 -0600 Subject: [PATCH] Created interface IConnectionsUpdateChecker and modified SqlConnectionsUpdateChecker to implement it --- .../Connections/IConnectionsUpdateChecker.cs | 11 ++++++++ .../PeriodicConnectionsUpdateChecker.cs | 2 +- .../SqlConnectionsUpdateChecker.cs | 27 ++++++++----------- mRemoteV1/mRemoteV1.csproj | 1 + 4 files changed, 24 insertions(+), 17 deletions(-) create mode 100644 mRemoteV1/Config/Connections/IConnectionsUpdateChecker.cs diff --git a/mRemoteV1/Config/Connections/IConnectionsUpdateChecker.cs b/mRemoteV1/Config/Connections/IConnectionsUpdateChecker.cs new file mode 100644 index 000000000..e08f4a0c2 --- /dev/null +++ b/mRemoteV1/Config/Connections/IConnectionsUpdateChecker.cs @@ -0,0 +1,11 @@ + + +namespace mRemoteNG.Config.Connections +{ + public interface IConnectionsUpdateChecker + { + bool IsUpdateAvailable(); + + void IsUpdateAvailableAsync(); + } +} \ No newline at end of file diff --git a/mRemoteV1/Config/Connections/PeriodicConnectionsUpdateChecker.cs b/mRemoteV1/Config/Connections/PeriodicConnectionsUpdateChecker.cs index 6317ef24b..35063f217 100644 --- a/mRemoteV1/Config/Connections/PeriodicConnectionsUpdateChecker.cs +++ b/mRemoteV1/Config/Connections/PeriodicConnectionsUpdateChecker.cs @@ -36,7 +36,7 @@ namespace mRemoteNG.Config.Connections private void SqlUpdateTimer_SqlUpdateTimerElapsed() { - _sqlUpdateChecker.IsDatabaseUpdateAvailableAsync(); + _sqlUpdateChecker.IsUpdateAvailableAsync(); } private void SQLUpdateCheckFinished(bool updateIsAvailable) diff --git a/mRemoteV1/Config/Connections/SqlConnectionsUpdateChecker.cs b/mRemoteV1/Config/Connections/SqlConnectionsUpdateChecker.cs index 26d3b3f0c..8cf507749 100644 --- a/mRemoteV1/Config/Connections/SqlConnectionsUpdateChecker.cs +++ b/mRemoteV1/Config/Connections/SqlConnectionsUpdateChecker.cs @@ -8,7 +8,7 @@ using mRemoteNG.Config.DatabaseConnectors; namespace mRemoteNG.Config.Connections { - public class SqlConnectionsUpdateChecker : IDisposable + public class SqlConnectionsUpdateChecker : IDisposable, IConnectionsUpdateChecker { private readonly SqlDatabaseConnector _sqlConnector; private readonly SqlCommand _sqlQuery; @@ -25,21 +25,7 @@ namespace mRemoteNG.Config.Connections } - - - public void IsDatabaseUpdateAvailableAsync() - { - var t = new Thread(IsDatabaseUpdateAvailableDelegate); - t.SetApartmentState(ApartmentState.STA); - t.Start(); - } - - private void IsDatabaseUpdateAvailableDelegate() - { - IsDatabaseUpdateAvailable(); - } - - public bool IsDatabaseUpdateAvailable() + public bool IsUpdateAvailable() { ConnectToSqlDb(); ExecuteQuery(); @@ -47,6 +33,15 @@ namespace mRemoteNG.Config.Connections RaiseUpdateCheckFinishedEvent(updateIsAvailable); return updateIsAvailable; } + + public void IsUpdateAvailableAsync() + { + var threadStart = new ThreadStart(() => IsUpdateAvailable()); + var thread = new Thread(threadStart); + thread.SetApartmentState(ApartmentState.STA); + thread.Start(); + } + private void ConnectToSqlDb() { try diff --git a/mRemoteV1/mRemoteV1.csproj b/mRemoteV1/mRemoteV1.csproj index fd5b9734d..6af7709b0 100644 --- a/mRemoteV1/mRemoteV1.csproj +++ b/mRemoteV1/mRemoteV1.csproj @@ -127,6 +127,7 @@ +