Beispiel #1
0
        /// <summary>
        /// Get recent games
        /// </summary>
        public async Task <IEnumerable <IGame> > GetRecentGamesBySummonerIdAsync(
            long summonerId,
            RegionEnum?region = null)
        {
            var url = string.Format("by-summoner/{0}/recent",
                                    summonerId);

            return(await GetResponseAsync <RecentGamesDto, IEnumerable <IGame> >(region, url));
        }
Beispiel #2
0
        public async Task <IDictionary <string, IEnumerable <ILeague> > > RetrievesLeaguesDataForSummonerAsync(
            IEnumerable <long> summonerIds,
            RegionEnum?region = null)
        {
            var url = string.Format("by-summoner/{0}",
                                    string.Join(",", summonerIds));

            return(await GetResponseAsync <IDictionary <string, IEnumerable <LeagueDto> >, IDictionary <string, IEnumerable <ILeague> > >(region, url));
        }
        public async Task <IDictionary <string, IEnumerable <ILeague> > > RetrievesLeaguesEntryDataForTeamAsync(
            IEnumerable <string> teamIds,
            RegionEnum?region = null)
        {
            var url = string.Format("by-team/{0}/entry",
                                    string.Join(",", teamIds));

            return(await GetResponseAsync <IDictionary <string, IEnumerable <LeagueDto> >, IDictionary <string, IEnumerable <ILeague> > >(region, url));
        }
Beispiel #4
0
        /// <summary>
        /// Retrieves teams
        /// </summary>
        public async Task <IDictionary <string, IEnumerable <ITeam> > > GetTeamsBySummonerIdAsync(
            IEnumerable <long> summonerIds,
            RegionEnum?region = null)
        {
            var url = string.Format("by-summoner/{0}",
                                    string.Join(",", summonerIds));

            return(await GetResponseAsync <IDictionary <string, IEnumerable <TeamDto> >, IDictionary <string, IEnumerable <ITeam> > >(region, url));
        }
Beispiel #5
0
        protected virtual Uri BuildUri(RegionEnum?region, string relativeUrl)
        {
            relativeUrl = string.Format("{0}/{1}/{2}/{3}",
                                        GetRegionAsString(region),
                                        VersionText,
                                        Prefix,
                                        relativeUrl);

            return(BuildUri(new Uri(relativeUrl, UriKind.Relative), region));
        }
        public async Task <ISummoner> GetSummonerByNameAsync(
            string name,
            RegionEnum?region = null)
        {
            var url = string.Format("by-name/{0}",
                                    name);

            var result = await GetResponseAsync <Dictionary <string, SummonerDto>, Dictionary <string, ISummoner> >(region, url);

            return(result.Select(x => x.Value).FirstOrDefault());
        }
 /// <summary>
 /// Initializes a new instance of the <see cref="JobPayloadDestination" /> class.
 /// </summary>
 /// <param name="region">Region in which to store outputs. Possible values: US, EMEA. By default, it is set to US.</param>
 public JobPayloadDestination(RegionEnum?region = null)
 {
     if (region == null)
     {
         throw new InvalidDataException("Region is a required property for JobPayloadDestination and cannot be null");
     }
     else
     {
         this.Region = region;
     }
 }
Beispiel #8
0
        protected RegionEnum GetRegion(RegionEnum?region)
        {
            region = region.HasValue ? region : _apiConfiguration.DefaultRegion;

            if (region == null)
            {
                throw new ArgumentException("There's no default region");
            }

            return(region.Value);
        }
        public async Task <IEnumerable <ISummoner> > GetSummonerByIdAsync(
            IEnumerable <long> summonersId,
            RegionEnum?region = null)
        {
            var url = string.Format("{0}",
                                    string.Join(",", summonersId));

            var result = await GetResponseAsync <Dictionary <string, SummonerDto>, Dictionary <string, ISummoner> >(region, url);

            return(result.Select(x => x.Value));
        }
        public async Task <Dictionary <long, string> > GetSummonerNamesByIdAsync(
            IEnumerable <long> summonerIds,
            RegionEnum?region = null)
        {
            var url = string.Format("{0}/name",
                                    string.Join(",", summonerIds));

            var summonersInfo = await GetResponseAsync <Dictionary <long, string> >(region, url);

            return(summonersInfo);
        }
Beispiel #11
0
        protected Uri BuildUri(Uri relativeUri, RegionEnum?region)
        {
            var baseUri = new Uri(string.Format(BaseUrl, GetSubDomain(region)));

            var uriBuilder = new UriBuilder(new Uri(baseUri, relativeUri));

            var keyParameter = string.Format("api_key={0}", _apiConfiguration.Key);

            uriBuilder.AddQueryParameter(keyParameter);

            return(uriBuilder.Uri);
        }
Beispiel #12
0
        protected Uri BuildUri(Uri relativeUri, RegionEnum?region, string endpoint = null)
        {
            var baseUri = new Uri(string.Format(BaseUrl, endpoint ?? GetRegionAsString(region)));

            var uriBuilder = new UriBuilder(new Uri(baseUri, relativeUri));

            var keyParameter = string.Format("api_key={0}", _apiConfiguration.Key);

            uriBuilder.AddQueryParameter(keyParameter);

            return(uriBuilder.Uri);
        }
Beispiel #13
0
 /// <summary>
 /// Initializes a new instance of the <see cref="AzureKeyVaultSettings" /> class.
 /// </summary>
 /// <param name="ResourceGroup">ResourceGroup.</param>
 /// <param name="Environment">Environment.</param>
 /// <param name="KeyVaultName">KeyVaultName.</param>
 /// <param name="ClientId">ClientId.</param>
 /// <param name="HsmUsage">HsmUsage.</param>
 /// <param name="KeyVaultURL">KeyVaultURL.</param>
 /// <param name="ClientSecret">ClientSecret.</param>
 /// <param name="Region">Region.</param>
 /// <param name="SubscriptionId">SubscriptionId.</param>
 /// <param name="Tenant">Tenant.</param>
 public AzureKeyVaultSettings(string ResourceGroup = default(string), EnvironmentEnum?Environment = default(EnvironmentEnum?), string KeyVaultName = default(string), string ClientId = default(string), HsmUsageEnum?HsmUsage = default(HsmUsageEnum?), string KeyVaultURL = default(string), string ClientSecret = default(string), RegionEnum?Region = default(RegionEnum?), string SubscriptionId = default(string), string Tenant = default(string))
 {
     this.ResourceGroup  = ResourceGroup;
     this.Environment    = Environment;
     this.KeyVaultName   = KeyVaultName;
     this.ClientId       = ClientId;
     this.HsmUsage       = HsmUsage;
     this.KeyVaultURL    = KeyVaultURL;
     this.ClientSecret   = ClientSecret;
     this.Region         = Region;
     this.SubscriptionId = SubscriptionId;
     this.Tenant         = Tenant;
 }
        public static IEnumerable <string> GetLoadingImagesUrls(
            this IChampion champion,
            RegionEnum?region = null)
        {
            if (champion == null)
            {
                throw new ArgumentNullException("champion");
            }

            return(champion.Skins.Select(
                       skin => string.Format("http://ddragon.leagueoflegends.com/cdn/img/champion/loading/{0}_{1}.jpg",
                                             champion.Name,
                                             skin.Num)));
        }
        /// <summary>
        /// Retrieves teams
        /// </summary>
        private static async Task <IEnumerable <ITeam> > GetTeamsBySummonerIdAsync(
            IApiModel leagueModel,
            long summonerId,
            RegionEnum?region = null)
        {
            if (leagueModel == null)
            {
                throw new ArgumentNullException("leagueModel");
            }

            var teamService = new TeamService(leagueModel.ApiConfiguration);

            return(await teamService.GetTeamsBySummonerIdAsync(summonerId, region));
        }
Beispiel #16
0
        /// <summary>
        /// Get mastery pages
        /// </summary>
        private static async Task <Dictionary <long, IEnumerable <IRunePage> > > GetRunePagesAsync(
            IApiModel leagueModel,
            IEnumerable <long> summonerIds,
            RegionEnum?region = null)
        {
            if (leagueModel == null)
            {
                throw new ArgumentNullException("leagueModel");
            }

            var summonerService = new SummonerService(leagueModel.ApiConfiguration);

            return(await summonerService.GetRunePagesBySummonerIdAsync(summonerIds, region));
        }
        private static Task <IEnumerable <IGame> > GetRecentGames(
            IApiModel leagueModel,
            long summonerId,
            RegionEnum?region = null)
        {
            if (leagueModel == null)
            {
                throw new ArgumentNullException("leagueModel");
            }

            var gameService = new GameService(leagueModel.ApiConfiguration);

            return(gameService.GetRecentGamesBySummonerIdAsync(summonerId, region));
        }
        private static async Task <IEnumerable <ILeague> > RetrievesLeaguesDataAsync(
            IApiModel leagueModel,
            long summonerId,
            RegionEnum?region = null)
        {
            if (leagueModel == null)
            {
                throw new ArgumentNullException("leagueModel");
            }

            var leagueService = new LeagueService(leagueModel.ApiConfiguration);

            return(await leagueService.RetrievesLeaguesDataForSummonerAsync(summonerId, region));
        }
        /// <summary>
        /// Get player stats summaries. One summary is returned per queue type.
        /// </summary>
        public async Task <IEnumerable <IPlayerStatsSummary> > GetPlayerStatsSummariesBySummonerIdAsync(
            long summonerId,
            SeasonEnum?season = null,
            RegionEnum?region = null)
        {
            var url = string.Format("by-summoner/{0}/summary",
                                    summonerId);

            if (season.HasValue)
            {
                url += string.Concat("?season=", season.ToString().ToUpper());
            }

            return(await GetResponseAsync <PlayerStatsSummaryListDto, IEnumerable <IPlayerStatsSummary> >(region, url));
        }
        /// <summary>
        /// Get ranked stats. Includes statistics for Twisted Treeline and Summoner's Rift.
        /// </summary>
        public async Task <IRankedStats> GetRankedStatsSummariesBySummonerIdAsync(
            long summonerId,
            SeasonEnum?season = null,
            RegionEnum?region = null)
        {
            var url = string.Format("by-summoner/{0}/ranked",
                                    summonerId);

            if (season.HasValue)
            {
                url += string.Concat("?season=", season.ToString().ToUpper());
            }

            return(await GetResponseAsync <RankedStatsDto, IRankedStats>(region, url));
        }
 public async Task <IRuneList> GetRunesAsync(
     RuneDataEnum?runeData     = null,
     RegionEnum?region         = null,
     LanguageEnum?languageCode = null,
     string dataDragonVersion  = null)
 {
     return(await GetResponseAsync <RuneListDto, IRuneList>(
                BuildStaticUri(
                    "rune",
                    "runeListData",
                    runeData,
                    region,
                    languageCode,
                    dataDragonVersion)));
 }
 public async Task <IMasteryList> GetMasteriesAsync(
     MasteryDataEnum?masteryData = null,
     RegionEnum?region           = null,
     LanguageEnum?languageCode   = null,
     string dataDragonVersion    = null)
 {
     return(await GetResponseAsync <MasteryListDto, IMasteryList>(
                BuildStaticUri(
                    "mastery",
                    "masteryListData",
                    masteryData,
                    region,
                    languageCode,
                    dataDragonVersion)));
 }
 public async Task <IItemList> GetItemsAsync(
     ItemDataEnum?itemData     = null,
     RegionEnum?region         = null,
     LanguageEnum?languageCode = null,
     string dataDragonVersion  = null)
 {
     return(await GetResponseAsync <ItemListDto, IItemList>(
                BuildStaticUri(
                    "item",
                    "itemListData",
                    itemData,
                    region,
                    languageCode,
                    dataDragonVersion)));
 }
        /// <summary>
        /// Get ranked stats. Includes statistics for Twisted Treeline and Summoner's Rift.
        /// </summary>
        private static async Task <IRankedStats> GetRankedStatsSummariesAsync(
            IApiModel leagueModel,
            long summonerId,
            SeasonEnum?season = null,
            RegionEnum?region = null)
        {
            if (leagueModel == null)
            {
                throw new ArgumentNullException("leagueModel");
            }

            var statsService = new StatsService(leagueModel.ApiConfiguration);

            return(await statsService.GetRankedStatsSummariesBySummonerIdAsync(summonerId, season, region));
        }
        public LeagueApi(
            string apiKey,
            RegionEnum?region         = null,
            bool waitToAvoidRateLimit = false,
            IHttpRequestService httpRequestService = null)
        {
            if (apiKey == null)
            {
                throw new ArgumentNullException("apiKey");
            }

            httpRequestService = httpRequestService ?? new HttpRequestService();

            LeagueApiConfiguration = new LeagueApiConfiguration(apiKey, region, waitToAvoidRateLimit, httpRequestService);

            Init();
        }
 public async Task <IChampion> GetChampionAsync(
     int championId,
     ChampDataEnum?champData   = null,
     RegionEnum?region         = null,
     LanguageEnum?languageCode = null,
     string dataDragonVersion  = null)
 {
     return(await GetResponseAsync <ChampionDto, IChampion>(
                BuildStaticUri(
                    "champion",
                    "champData",
                    champData,
                    region,
                    languageCode,
                    dataDragonVersion,
                    championId)));
 }
 public async Task <ISummonerSpell> GetSummonerSpellsAsync(
     int spellId,
     SpellDataEnum?itemData    = null,
     RegionEnum?region         = null,
     LanguageEnum?languageCode = null,
     string dataDragonVersion  = null)
 {
     return(await GetResponseAsync <SummonerSpellDto, ISummonerSpell>(
                BuildStaticUri(
                    "summoner-spell",
                    "spellData",
                    itemData,
                    region,
                    languageCode,
                    dataDragonVersion,
                    spellId)));
 }
 public async Task <IChampionList> GetChampionsAsync(
     bool dataById             = false,
     ChampDataEnum?champData   = null,
     RegionEnum?region         = null,
     LanguageEnum?languageCode = null,
     string dataDragonVersion  = null)
 {
     return(await GetResponseAsync <ChampionListDto, IChampionList>(
                BuildStaticUri(
                    "champion",
                    "champData",
                    champData,
                    region,
                    languageCode,
                    dataDragonVersion,
                    (string)null,
                    new KeyValuePair <string, string>("dataById", dataById.ToString()))));
 }
 public async Task <ISummonerSpellList> GetSummonerSpellsAsync(
     bool dataById             = false,
     SpellDataEnum?itemData    = null,
     RegionEnum?region         = null,
     LanguageEnum?languageCode = null,
     string dataDragonVersion  = null)
 {
     return(await GetResponseAsync <SummonerSpellListDto, ISummonerSpellList>(
                BuildStaticUri(
                    "summoner-spell",
                    "spellData",
                    itemData,
                    region,
                    languageCode,
                    dataDragonVersion,
                    (string)null,
                    new KeyValuePair <string, string>("dataById", dataById.ToString()))));
 }
Beispiel #30
0
        /// <summary>
        /// Gets available phone numbers.
        /// </summary>
        /// <param name="areaCode">Area code.</param>
        /// <param name="inPostalCode">In postal code.</param>
        /// <param name="inRegion">In region.</param>
        /// <param name="contains">Contains.</param>
        /// <param name="localNumber">Local number.</param>
        /// <param name="limit">Limit.</param>
        /// <param name="client">REST client.</param>
        /// <returns></returns>
        public static List <NumberAvailable> FindAvailable(string areaCode      = null,
                                                           string inPostalCode  = null,
                                                           RegionEnum?inRegion  = null,
                                                           string contains      = null,
                                                           string localNumber   = null,
                                                           int limit            = DefaultPageSize,
                                                           IVcRestClient client = null)
        {
            NumbersAvailableQueryParams queryParams = new NumbersAvailableQueryParams(areaCode)
            {
                InPostalCode = inPostalCode,
                InRegion     = inRegion,
                Contains     = contains,
                LocalNumber  = localNumber,
                Limit        = limit
            };

            return(GetAvailable(VcClient.AccountId, queryParams, client));
        }