Exemplo n.º 1
0
    public async Task <ProcessedPlayerCollection> process()
    {
        try {
            var currEvent = await(new EventFinder(_client).GetCurrentEvent());
            // Get all the footballer data required
            var footballers = await getFootballers();

            var players  = footballers.Keys;
            var explains = await getLiveExplains(players);

            var provider         = new ProcessedPlayerProviderV3(currEvent.id);
            var playerCollection = new ProcessedPlayerCollection();
            foreach (var id in players)
            {
                var footballer = footballers[id];
                List <FootballerScoreDetailElement> gwExplains = new List <FootballerScoreDetailElement>();
                explains.TryGetValue(id, out gwExplains);
                var liveData = await _client.getLiveData(currEvent.id);

                var processor = new SinglePlayerProcessorV3(provider, currEvent.id, footballer, gwExplains, liveData);
                var player    = await processor.process();

                playerCollection.players.Add(id, player);
            }
            await provider.writeFullPlayers(playerCollection);

            await provider.writeApiPlayers(playerCollection);

            return(playerCollection);
        }
        catch (Exception ex) {
            _log.Error(ex);
        }
        return(await Task.FromResult((ProcessedPlayerCollection)null));
    }
Exemplo n.º 2
0
    public SinglePlayerProcessorV3(ProcessedPlayerProviderV3 playerProvider, int gameweek, Footballer footballer, List <FootballerScoreDetailElement> explains, Live liveData)
    {
        _footballer      = footballer;
        _currentExplains = explains;
        _currentLiveData = liveData;
        _gameweek        = gameweek;

        _playerProvider = playerProvider;
    }