private async Task OnIntervalAsync(IBackendAsync backend) { var current = await backend.GetCurrentAsync().ConfigureAwait(false); if (lastCurrent != current?.Name) { CurrentChanged?.Invoke(this, EventArgs.Empty); lastCurrent = current?.Name; } }
public EntryController(IBackendAsync backend) { this.backend = backend; }
public CurrentEntryPoller(IBackendAsync backend, double secondsInterval = 5) { var interval = TimeSpan.FromSeconds(secondsInterval); timer = new Timer(OnInterval, backend, interval, interval); }