public ConfigurationSettings(ApiActionCategory apiCategory, string apiKey, LocationKeyIdentifier locationKey,
                              ApiServiceUriCollectionBase serviceUris)
 {
     if (string.IsNullOrWhiteSpace(apiKey))
     {
         throw new ArgumentException("APIKey cannot be empty");
     }
     LocationKey = locationKey;
     _apiKeys.Add(apiCategory, apiKey);
     ServiceUris       = serviceUris;
     _diagnosticLogger = new DiagnosticProxy(_registeredDiagnosticLoggers, _logLevel);
 }
Beispiel #2
0
        public async Task <ICommunicationResult> CallServiceAsync(string uri, ApiActionCategory apiCategory)
        {
            try
            {
                using (var httpClient = HttpCommunicationEngine.CreateHttpClient(_configurationSettings.ApiKeys[apiCategory]))
                {
                    var httpResult = await httpClient.GetAsync(uri);

                    return(new CommunicationResult(httpResult));
                }
            }
            catch (Exception ex)
            {
                return(CommunicationResult.Fail(ex.Message));
            }
        }