private void ProcessSportMsgHandler(ProcessSportMsg msg) { var sports = _serviceFacade.GetSports(); List <IResourceFacade> resources = new List <IResourceFacade>(); foreach (var sport in sports) { var _res = _serviceFacade.GetResources(sport.Name); if (ValidateResources(_res, sport.Name)) { resources.AddRange(_res); } } if (resources.Count > 1) { SortByMatchStatus(resources); } var streamListenerManagerActor = Context.System.ActorSelection(StreamListenerManagerActor.Path); foreach (var resource in resources) { streamListenerManagerActor.Tell(new ProcessResourceMsg { Resource = resource }, Self); } }
private void ProcessSports() { var sports = _serviceFacade.GetSports(); foreach (var sport in sports) { _sportProcessorRouterActor.Tell(new ProcessSportMsg { Sport = sport.Name }); } }
private void ProcessSportsMsgHandler(ProcessSportMsg msg) { var sports = _serviceFacade.GetSports(); if (sports == null) { var errorMsg = "ServiceFacade GetSports responce=NULL probably credentials problem"; _logger.Error(errorMsg); throw new Exception(errorMsg); } _logger.Debug($"ServiceFacade GetSports returned SportsCount={sports?.Count()} listOfSports={$"\"{string.Join(", ", sports.Select(_=> _.Name))}\"" }"); List <IResourceFacade> resources = new List <IResourceFacade>(); foreach (var sport in sports) { var _res = _serviceFacade.GetResources(sport.Name); if (_res != null && _res.Any()) { _logger.Info($"ProcessSportMsgHandler {GetListOfFixtures(_res, sport)}"); } if (ValidateResources(_res, sport.Name)) { resources.AddRange(_res); } } if (resources.Count > 1) { try { resources.SortByMatchStatus(); } catch (System.ArgumentException argEx) { _logger.Warn($"Can't sort resources. Fixtures list: {GetListOfFixtures(resources)}. {argEx}"); } } _logger.Info($"ProcessSportsMsgHandler resourcesCount={resources.Count}"); var streamListenerManagerActor = Context.System.ActorSelection(StreamListenerManagerActor.Path); foreach (var resource in resources) { streamListenerManagerActor.Tell(new ProcessResourceMsg { Resource = resource }, Self); } }