Skip to content

Commit

Permalink
Migrate from System.Windows.Forms.Timer to System.Timers.Timer
Browse files Browse the repository at this point in the history
  • Loading branch information
nwoolls committed Jan 2, 2015
1 parent 3996a58 commit 3ebc699
Show file tree
Hide file tree
Showing 2 changed files with 30 additions and 30 deletions.
49 changes: 25 additions & 24 deletions MultiMiner.UX/ViewModels/ApplicationViewModel.cs
Expand Up @@ -39,6 +39,7 @@
using System.Security.Cryptography;
using System.ServiceModel;
using System.Text;
using System.Timers;
using System.Web.Script.Serialization;
using System.Windows.Forms;
using Application = MultiMiner.UX.Data.Configuration.Application;
Expand Down Expand Up @@ -89,10 +90,10 @@ public class ApplicationViewModel
#region Fields
//coalesced timers
private readonly Timers timers = new Timers();
private readonly Timer coinStatsTimer = new Timer();
private readonly Timer restartTimer = new Timer();
private readonly Timer networkRestartTimer = new Timer();
private readonly Timer networkScanTimer = new Timer();
private readonly System.Timers.Timer coinStatsTimer = new System.Timers.Timer();
private readonly System.Timers.Timer restartTimer = new System.Timers.Timer();
private readonly System.Timers.Timer networkRestartTimer = new System.Timers.Timer();
private readonly System.Timers.Timer networkScanTimer = new System.Timers.Timer();

//configuration
public readonly Engine.Data.Configuration.Engine EngineConfiguration = new Engine.Data.Configuration.Engine();
Expand Down Expand Up @@ -189,10 +190,10 @@ public ApplicationViewModel()
LogLaunchArgsBindingSource.DataSource = logLaunchEntries;
LogProcessCloseArgsBindingSource.DataSource = LogCloseEntries;

coinStatsTimer.Tick += coinStatsTimer_Tick;
restartTimer.Tick += restartTimer_Tick;
networkRestartTimer.Tick += networkRestartTimer_Tick;
networkScanTimer.Tick += networkScanTimer_Tick;
coinStatsTimer.Elapsed += coinStatsTimer_Tick;
restartTimer.Elapsed += restartTimer_Tick;
networkRestartTimer.Elapsed += networkRestartTimer_Tick;
networkScanTimer.Elapsed += networkScanTimer_Tick;
SetupNetworkRestartTimer();
SetupNetworkScanTimer();

Expand Down Expand Up @@ -1784,7 +1785,7 @@ public void RenameDevice(DeviceViewModel deviceViewModel, string name)
deviceViewModel.FriendlyName = name;
}

private void CheckIdleTimeForDynamicIntensity(long timerInterval)
private void CheckIdleTimeForDynamicIntensity(double timerInterval)
{
if (OSVersionPlatform.GetGenericPlatform() == PlatformID.Unix)
return; //idle detection code uses User32.dll
Expand Down Expand Up @@ -5269,15 +5270,15 @@ private void SetupNetworkScanTimer()
networkScanTimer.Enabled = false;
}

private void networkRestartTimer_Tick(object sender, EventArgs e)
private void networkRestartTimer_Tick(object sender, ElapsedEventArgs e)
{
if (ApplicationConfiguration.ScheduledRebootNetworkDevices)
RebootAllNetworkDevicesAsync();
else
RestartAllNetworkDevicesAsync();
}

private void networkScanTimer_Tick(object sender, EventArgs e)
private void networkScanTimer_Tick(object sender, ElapsedEventArgs e)
{
ClearCachedNetworkDifficulties();

Expand Down Expand Up @@ -5344,11 +5345,11 @@ public void SetupCoinStatsTimer()
coinStatsTimer.Enabled = true;
}

private void coinStatsTimer_Tick(object sender, EventArgs e)
private void coinStatsTimer_Tick(object sender, ElapsedEventArgs e)
{
RefreshCoinStatsAsync();

CoinStatsCountdownMinutes = coinStatsTimer.Interval / 1000 / 60;
CoinStatsCountdownMinutes = (int)coinStatsTimer.Interval / 1000 / 60;
}

public void SetupCoalescedTimers()
Expand All @@ -5369,19 +5370,19 @@ public void SetupCoalescedTimers()
#endregion

#if DEBUG
private void debugOneSecondTimer_Tick(object sender, EventArgs e)
private void debugOneSecondTimer_Tick(object sender, ElapsedEventArgs e)
{
//updates in order to try to reproduce threading issues
if (DataModified != null) DataModified(this, new EventArgs());
}
#endif

private void oneHourTimer_Tick(object sender, EventArgs e)
private void oneHourTimer_Tick(object sender, ElapsedEventArgs e)
{
ClearPoolsFlaggedDown();
}

private void oneMinuteTimer_Tick(object sender, EventArgs e)
private void oneMinuteTimer_Tick(object sender, ElapsedEventArgs e)
{
//if we do this with the Settings dialog open the user may have partially entered credentials
SubmitMobileMinerStatistics();
Expand All @@ -5408,13 +5409,13 @@ private void oneMinuteTimer_Tick(object sender, EventArgs e)
RestartSuspectNetworkDevices();
}

private void twelveHourTimer_Tick(object sender, EventArgs e)
private void twelveHourTimer_Tick(object sender, ElapsedEventArgs e)
{
UpdateBackendMinerAvailability();
CheckForUpdates();
}

private void fiveMinuteTimer_Tick(object sender, EventArgs e)
private void fiveMinuteTimer_Tick(object sender, ElapsedEventArgs e)
{
//submit queued notifications to MobileMiner
SubmitMobileMinerNotifications();
Expand All @@ -5429,7 +5430,7 @@ private void fiveMinuteTimer_Tick(object sender, EventArgs e)
networkDeviceVersions.Clear();
}

private void thirtySecondTimer_Tick(object sender, EventArgs e)
private void thirtySecondTimer_Tick(object sender, ElapsedEventArgs e)
{
UpdateLocalViewFromRemoteInstance();

Expand All @@ -5446,28 +5447,28 @@ private void thirtySecondTimer_Tick(object sender, EventArgs e)
RefreshPoolInfo();
}

private void fifteenSecondTimer_Tick(object sender, EventArgs e)
private void fifteenSecondTimer_Tick(object sender, ElapsedEventArgs e)
{
if (ApplicationConfiguration.NetworkDeviceDetection)
RefreshNetworkDeviceStatsAsync();
}

private void tenSecondTimer_Tick(object sender, EventArgs e)
private void tenSecondTimer_Tick(object sender, ElapsedEventArgs e)
{
if (MiningEngine.Mining)
{
long timerInterval = ((Timer)sender).Interval;
double timerInterval = ((System.Timers.Timer)sender).Interval;
CheckIdleTimeForDynamicIntensity(timerInterval);
RefreshAllDeviceStats();
}
}

private void thirtyMinuteTimer_Tick(object sender, EventArgs e)
private void thirtyMinuteTimer_Tick(object sender, ElapsedEventArgs e)
{
RefreshExchangeRates();
}

private void oneSecondTimer_Tick(object sender, EventArgs e)
private void oneSecondTimer_Tick(object sender, ElapsedEventArgs e)
{
CheckMiningOnStartupStatus();
}
Expand Down
11 changes: 5 additions & 6 deletions MultiMiner.Utility/Forms/Timers.cs
@@ -1,5 +1,4 @@
using System;
using System.Collections.Generic;
using System.Collections.Generic;

namespace MultiMiner.Utility.Forms
{
Expand All @@ -21,16 +20,16 @@ public class Timers
public const int OneHourInterval = OneMinuteInterval * minutesPerHour;
public const int TwelveHourInterval = OneHourInterval * 12;

private List<System.Windows.Forms.Timer> timers = new List<System.Windows.Forms.Timer>();
private List<System.Timers.Timer> timers = new List<System.Timers.Timer>();

public System.Windows.Forms.Timer CreateTimer(int interval, EventHandler eventHandler)
public System.Timers.Timer CreateTimer(int interval, System.Timers.ElapsedEventHandler eventHandler)
{
System.Windows.Forms.Timer timer = new System.Windows.Forms.Timer()
System.Timers.Timer timer = new System.Timers.Timer()
{
Interval = interval,
Enabled = true
};
timer.Tick += eventHandler;
timer.Elapsed += eventHandler;

timers.Add(timer);

Expand Down

0 comments on commit 3ebc699

Please sign in to comment.