/// <summary> /// Handles the Elapsed event of the HeartbeatTimer control. /// </summary> /// <param name="sender">The source of the event.</param> /// <param name="e">The <see cref="ElapsedEventArgs"/> instance containing the event data.</param> private void HeartbeatTimer_Elapsed(object sender, ElapsedEventArgs e) { SolarEdgeWCFService.TransmitHeartbeat(); lock (ServiceLocker) { RestartHeartbeatTimer(); } }
/// <summary> /// Handles the SolarEdgeDataUpdated event of the DataFetcher. /// </summary> /// <param name="sender">The source of the event.</param> /// <param name="e">The <see cref="EventArgs"/> instance containing the event data.</param> private void Instance_SolarEdgeDataUpdated(object sender, EventArgs e) { if (SolarEdgeServiceSettings.Default.ResetHeartbeatTimerOnDataUpdates) { lock (ServiceLocker) { RestartHeartbeatTimer(); } } SolarEdgeWCFService.TransmitBaseUpdates(); SolarEdgeWCFService.TransmitFullDataUpdates(); }
/// <summary> /// Handles the SolarEdgeDataIsValidChanged event of the DataFetcher. /// </summary> /// <param name="sender">The source of the event.</param> /// <param name="e">The <see cref="EventArgs"/> instance containing the event data.</param> private void Instance_SolarEdgeDataIsValidChanged(object sender, EventArgs e) { SolarEdgeWCFService.TransmitDataIsValidUpdate(DataFetcher.Instance.SolarEdgeDataIsValid); }