public RegionalRequester(IRiotGamesApiConfig config, string route)
        {
            _config       = config;
            _appRateLimit = new RateLimit(RateLimitType.Application, config);

            _client.BaseAddress = new Uri($"https://{route}{RiotRootUrl}");
            _client.DefaultRequestHeaders.Add(RiotKeyHeader, config.ApiKey);
        }
Beispiel #2
0
 private RiotGamesApi(IRiotGamesApiConfig config)
 {
     if (null == config)
     {
         throw new ArgumentException($"{nameof(config)} cannot be null.");
     }
     _requestManager = new RequestManager(config);
 }
 public RequestManager(IRiotGamesApiConfig config)
 {
     _config = config;
     _concurrentRequestSemaphore = new SemaphoreSlim(_config.MaxConcurrentRequests);
 }
Beispiel #4
0
 /// <summary>
 /// Creates a new RiotApi instance with the provided configuration.
 /// </summary>
 /// <param name="config">RiotApiConfig to use.</param>
 /// <returns>RiotApi instance using supplied configuration.</returns>
 public static RiotGamesApi NewInstance(IRiotGamesApiConfig config)
 {
     return(new RiotGamesApi(config));
 }
Beispiel #5
0
 public RateLimit(RateLimitType rateLimitType, IRiotGamesApiConfig config)
 {
     _rateLimitType = rateLimitType;
     _config        = config;
 }