Esempio n. 1
0
        public RegionalRequester(IRiotApiConfig config, string route)
        {
            _config       = config;
            _appRateLimit = new RateLimit(RateLimitType.Application, config);

            _client.BaseAddress = new Uri($"https://{route}{RiotRootUrl}");
            _client.DefaultRequestHeaders.Add(RiotKeyHeader, config.ApiKey);
        }
Esempio n. 2
0
 private RiotApi(IRiotApiConfig config)
 {
     if (null == config)
     {
         throw new ArgumentException($"{nameof(config)} cannot be null.");
     }
     _requestManager = new RequestManager(config);
 }
Esempio n. 3
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 RiotApi NewInstance(IRiotApiConfig config)
 {
     return(new RiotApi(config));
 }
Esempio n. 4
0
 public RateLimit(RateLimitType rateLimitType, IRiotApiConfig config)
 {
     _rateLimitType = rateLimitType;
     _config        = config;
 }
Esempio n. 5
0
 public RequestManager(IRiotApiConfig config)
 {
     _config = config;
     _concurrentRequestSemaphore = new SemaphoreSlim(_config.MaxConcurrentRequests);
 }