using Salmon.Model.Monitor; using System.Timers; namespace Salmon.Web.Data; public class CurrentSoftwareRefresher { private static System.Timers.Timer Timer; public Core.Instance Instance { get; } public CurrentSoftwareRefresher(Salmon.Core.Instance instance) { Instance = instance; Timer = new System.Timers.Timer(15000); Timer.Elapsed += Refresh; Timer.AutoReset = true; Refresh(); Timer.Enabled = true; } void Refresh(Object? source, ElapsedEventArgs e) { Refresh(); } public void Refresh() { foreach (var hardware in Salmon.Model.Monitor.Hardware.FromAllHardware()) Instance.Set(hardware); Instance.Set(Software.FromLocal()); } }