/// <summary> /// Invoked when bet stop message is received /// </summary> /// <param name="sender">The instance raising the event</param> /// <param name="e">The event arguments</param> protected virtual void OnBetStopReceived(object sender, BetStopEventArgs <T> e) { var betstop = e.GetBetStop(); _log.LogInformation($"BetStop received. EventId:{betstop.Event.Id} Producer:{betstop.Producer}, Tag:{betstop.Groups}, RequestId:{betstop.RequestId}"); _sportEntityWriter?.WriteData(betstop.Event); }
/// <summary> /// Invoked when odds change message is received /// </summary> /// <param name="sender">The instance raising the event</param> /// <param name="e">The event arguments</param> protected virtual void OnOddsChangeReceived(object sender, OddsChangeEventArgs <T> e) { Guard.Argument(e, nameof(e)).NotNull(); using var t = SdkMetricsFactory.MetricsRoot.Measure.Timer.Time(_timerOnOddsChangeReceived, $"{e.GetOddsChange().Event.Id}"); var oddsChange = e.GetOddsChange(); _log.LogInformation($"OddsChange received. EventId:{oddsChange.Event.Id} Producer:{oddsChange.Producer.Name} RequestId:{oddsChange.RequestId}"); _sportEntityWriter?.WriteData(oddsChange.Event); _marketWriter?.WriteMarketNamesForEvent(oddsChange.Markets); _log.LogInformation($"OddsChange received. EventId:{oddsChange.Event.Id}. Processing took {t.Elapsed.TotalMilliseconds}ms."); }