Example #1
0
        public async Task RequestChampionJa()
        {
            using (var client = new DataDragonClient("8.19.1", "ja_JP"))
            {
                var akali = await client.RequestChampionAsync("Akali");

                TestAkaliJa(akali);
            }
        }
Example #2
0
 public DataDragonService(DataDragonClient client)
 {
     Client = client;
 }
Example #3
0
        static async Task Main(string[] args)
        {
            var apiKey = "XXXXX-XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX";
            var uri    = new Uri("https://na1.api.riotgames.com");


            #region Clients code, creates HttpClient client

            var client = new HttpClient();
            client.DefaultRequestHeaders.Accept.Clear();
            client.DefaultRequestHeaders.Accept.Add(
                new MediaTypeWithQualityHeaderValue("application/json"));

            #endregion


            #region Get User Input

            Console.WriteLine("Please enter summoner name:");
            var summonerName = Console.ReadLine();

            #endregion


            #region Get/Deserialize Json to Models

            var uriFactory = new UriFactory(uri.AbsoluteUri, apiKey);

            var summonerClient = new SummonerClient(summonerName, uriFactory, client);
            var summonerModel  = await summonerClient.GetSummonerModelAsync().ConfigureAwait(false);

            var leagueEntryClient = new LeagueEntryClient(summonerModel.Id, uriFactory, client);
            var matchClient       = new MatchClient(summonerModel.AccountId, uriFactory, client);

            var matchListTask   = matchClient.GetMatchListModelAsync();
            var leagueEntryTask = leagueEntryClient.GetLeagueEntryModelsAsync();

            await Task.WhenAll(matchListTask, leagueEntryTask).ConfigureAwait(false);

            var matchListModel = await matchListTask.ConfigureAwait(false);

            var matchId = matchListModel.MostRecentMatchId;

            var timelineClient = new TimelineClient(matchId, client, uriFactory);


            var timelineModel = await timelineClient.GetMatchTimelineModelAsync();

            var leagueEntryModels = await leagueEntryTask.ConfigureAwait(false);

            var matchModel = await matchClient.GetMatchModelAsync(matchListModel.MostRecentMatchId).ConfigureAwait(false);

            var allMatchModels = await matchClient.GetAllMatchModelsAsync().ConfigureAwait(false);

            #endregion


            #region get datadragon information

            var dataDragonClient    = new DataDragonClient(client);
            var championsDictionary = await dataDragonClient.GetChampionsAsync().ConfigureAwait(false);

            #endregion

            #region MatchHistoryViewModel test

            var matchListViewModel = new MatchHistoryViewModel(matchListModel);

            Console.WriteLine("Please enter number of matches you'd like to review.");
            var matchQty = Console.ReadLine();

            if (int.TryParse(matchQty, out int matches))
            {
                Console.WriteLine(matchListViewModel.DisplayMatches(matches, championsDictionary));
            }

            #endregion


            #region Display Output

            //Console.WriteLine();
            //Console.WriteLine(summonerModel.Name);
            //Console.WriteLine(matchListModel.MostRecentMatchId.ToString());
            //Console.WriteLine(matchModel.GameMode);
            //Console.WriteLine(leagueEntryModels[0].Tier);

            //Console.ReadLine();

            #endregion
        }