private static void ForceDNSTimer_Elapsed(Object sender, ElapsedEventArgs e) { ForceDNSTimer.Enabled = false; Log.Information("ForceDNSJob Elapsed, Checking Status..."); var response = AppStatusService.CheckStatus(_settings).Result; CriticalProcessBase.StatusChanged(response); Log.Information("ForceDNSJob Responded With: " + response.ToString()); if (response.Interval == null) { End(); return; } if (response.Status == AppStatus.DNSON) { DnsKeeperJob.Begin(_settings); } else if (response.Status == AppStatus.DNSOFF) { DnsKeeperJob.End(); } else { Log.Error("Could Not Retrieve Date Time From NTP. Checking again in 30 seconds..."); } ForceDNSTimer.Interval = response.Interval.Value; ForceDNSTimer.Enabled = true; }
public static void End() { Log.Information("ForceDNSJob Ending"); DnsKeeperJob.End(); ForceDNSTimer?.Stop(); ForceDNSTimer?.Dispose(); ForceDNSTimer?.Close(); }