private BasecampClient( Uri apiUri, IAccessTokenSource accessTokenSource, IRateLimiter rateLimiter, IResponseMessageCache responseMessageCache, string userAgent, HttpClientPool httpClientPool ) { if (apiUri == null) { throw new ArgumentNullException(nameof(apiUri)); } if (accessTokenSource == null) { throw new ArgumentNullException(nameof(accessTokenSource)); } this.apiUri = UriUtils.EnsureTrailingSlash(apiUri); this.accessTokenSource = accessTokenSource; this.rateLimiter = rateLimiter ?? ConstantRateLimiter.Default; this.responseMessageCache = responseMessageCache; this.userAgent = userAgent ?? UserAgent.GenerateDefault(); this.httpClientPool = httpClientPool ?? HttpClientPool.Default; }
private AccessTokenSource(Uri tokenUri, OAuthOptions oauthOptions, string refreshToken, string userAgent, HttpClientPool httpClientPool) { if (tokenUri == null) { throw new ArgumentNullException(nameof(tokenUri)); } if (oauthOptions == null) { throw new ArgumentNullException(nameof(oauthOptions)); } if (refreshToken == null) { throw new ArgumentNullException(nameof(refreshToken)); } this.tokenUri = tokenUri; this.oauthOptions = oauthOptions; this.refreshToken = refreshToken; this.userAgent = userAgent ?? UserAgent.GenerateDefault(); this.httpClientPool = httpClientPool ?? HttpClientPool.Default; }