Ejemplo n.º 1
0
        /// <summary>
        /// A Meraki portal client
        /// </summary>
        /// <param name="options"></param>
        /// <param name="logger"></param>
        public MapboxClient(MapboxClientOptions options, ILogger?logger = default)
        {
            _logger            = logger ?? NullLogger.Instance;
            _httpClientHandler = new AuthenticatedBackingOffHttpClientHandler(options ?? throw new ArgumentNullException(nameof(options)), _logger);
            _httpClient        = new HttpClient(_httpClientHandler)
            {
                BaseAddress = new Uri("https://api.mapbox.com/")
            };

            var refitSettings = new RefitSettings
            {
                ContentSerializer = new NewtonsoftJsonContentSerializer(
                    new JsonSerializerSettings
                {
                    NullValueHandling = NullValueHandling.Ignore
                })
            };

            Geocoding = RestService.For <IGeocoding>(_httpClient, refitSettings);
        }
 public AuthenticatedBackingOffHttpClientHandler(MapboxClientOptions options, ILogger logger)
 {
     _options = options;
     _logger  = logger;
 }