public async Task Can_Get_Players()
        {
            PlayersResponse response;

            try
            {
                var playersRequest = new PlayersRequest()
                {
                    Force  = true,
                    Season = "2019",
                    Team   = "det"
                };
                response = await nflSportsFeedsClient.GetPlayers(playersRequest);

                var staffords = response.Players.Where(x => x.Player.LastName == "Stafford").ToList();
                var rookies   = response.Players.Where(x => x.Player.Rookie == true).OrderBy(x => x.Player.LastName).ToList();
                var hock      = rookies.Where(x => x.Player.LastName.StartsWith("Hock")).FirstOrDefault();
                Assert.NotNull(response);
                Assert.True(response.Players.Any());
            }
            catch (System.Exception ex)
            {
                Console.WriteLine(ex.Message);
                Console.WriteLine(ex.Data.ToString());
                throw;
            }
        }
Пример #2
0
        private List <Player> PostAndDeserializedPlayers(PlayersRequest playersRequest)
        {
            var result = _swgohFlurlService.SwgohPost(_path, playersRequest);

            var players = JsonConvert.DeserializeObject <List <Player> >(result);

            return(players);
        }
Пример #3
0
        public string SwgohPost(string path, PlayersRequest playersRequest)
        {
            var response = path.WithHeaders(new { Content_Type = UrlConstants.ApplicationJson, Authorization = Token }).PostJsonAsync(playersRequest).Result;

            var result = response.Content.ReadAsStringAsync().Result;

            return(result);
        }
Пример #4
0
        public Player GetPlayer(PlayerRequest playerRequest)
        {
            var playersRequest = new PlayersRequest
            {
                AllyCodes = new List <int> {
                    playerRequest.AllyCode
                },
                Language  = playerRequest.Language,
                Enums     = playerRequest.Enums,
                Structure = playerRequest.Structure,
                Project   = playerRequest.Project
            };

            var players = PostAndDeserializedPlayers(playersRequest);

            return(players.FirstOrDefault());
        }
Пример #5
0
        public async Task <Players> GetPlayer(int league, int limit = 20, int page = 0)
        {
            Players players;
            string  playerListCacheKey = $"Player[{league}]-limit[{limit}]-page[{page}]";

            if (memoryCache.TryGetValue(playerListCacheKey, out players))
            {
                return(players);
            }

            var leagueFilter = new PlayersRequest {
                League = league
            };
            var playersMessages = await client.PostAsync($"/api/players?page={page}&limit={limit}", new StringContent(JsonSerializer.Serialize(leagueFilter)));

            //var playersMessages = await client.PostAsync<PlayersRequest>($"/api/players?page={page}&limit={limit}", leagueFilter, new JsonMediaTypeFormatter());
            if (!playersMessages.IsSuccessStatusCode)
            {
                throw new InvalidOperationException(await playersMessages.Content.ReadAsStringAsync());
            }
            else
            {
                var playersString = await playersMessages.Content.ReadAsStringAsync();

                players = JsonSerializer.Deserialize <Players>(playersString);
                memoryCache.Set(playerListCacheKey, players);
                foreach (var l in players.PlayerList)
                {
                    byte[] image;
                    string playerId = $"Player[{l.Id}]";
                    if (!memoryCache.TryGetValue(playerId, out image))
                    {
                        image = await client.GetByteArrayAsync($"/api/players/{l.Id}/image");

                        memoryCache.Set(playerId, image);
                    }
                    l.Image = image;
                }
                return(players);
            }
        }
Пример #6
0
        public List <Player> GetPlayers(PlayersRequest playersRequest)
        {
            var players = PostAndDeserializedPlayers(playersRequest);

            return(players);
        }
 public List <Player> GetPlayers(PlayersRequest playersRequest)
 {
     return(_playerService.GetPlayers(playersRequest));
 }
Пример #8
0
        public async Task <PlayersResponse> GetPlayers(PlayersRequest request)
        {
            var players = await mySportsFeedsApi.GetPlayers(request, AuthorizationHeader);

            return(players);
        }