internal FederatedTokenProvider(Func <ILog> log, ITokenProvider tokenProvider, string rootUrl, string serverUrl, ISerializer serializer = null, string referer = null) { Guard.AgainstNullArgument("tokenProvider", tokenProvider); if (string.IsNullOrWhiteSpace(rootUrl)) { throw new ArgumentNullException("rootUrl", "rootUrl is null."); } if (string.IsNullOrWhiteSpace(serverUrl)) { throw new ArgumentNullException("serverUrl", "serverUrl is null."); } Serializer = serializer ?? SerializerFactory.Get(); Guard.AgainstNullArgument("Serializer", Serializer); RootUrl = rootUrl.AsRootUrl(); _httpClient = HttpClientFactory.Get(); TokenRequest = new GenerateFederatedToken(serverUrl, tokenProvider) { Referer = referer }; _logger = log() ?? LogProvider.For <FederatedTokenProvider>(); _logger.DebugFormat("Created new token provider for {0}", RootUrl); }
internal FederatedTokenProvider(Func <ILog> log, ITokenProvider tokenProvider, string rootUrl, string serverUrl, ISerializer serializer = null, string referer = null, Func <HttpClient> httpClientFunc = null) { if (tokenProvider == null) { throw new ArgumentNullException(nameof(tokenProvider)); } if (string.IsNullOrWhiteSpace(rootUrl)) { throw new ArgumentNullException(nameof(rootUrl), "rootUrl is null."); } if (string.IsNullOrWhiteSpace(serverUrl)) { throw new ArgumentNullException(nameof(serverUrl), "serverUrl is null."); } Serializer = serializer ?? SerializerFactory.Get(); RootUrl = rootUrl.AsRootUrl(); var httpFunc = httpClientFunc ?? HttpClientFactory.Get; _httpClient = httpFunc(); TokenRequest = new GenerateFederatedToken(serverUrl, tokenProvider) { Referer = referer }; _logger = log() ?? LogProvider.For <FederatedTokenProvider>(); _logger.DebugFormat("Created new token provider for {0}", RootUrl); }