Beispiel #1
0
        public async Task <AirportRS> AirportLookup(string code)
        {
            string result = await _SabreConnector.SendRequestAsync("/v1/lists/utilities/geocode/locations",
                                                                   JsonConvert.SerializeObject(ConvertToGeoCodeRQ(code).Request,
                                                                                               Formatting.None, new JsonSerializerSettings
            {
                NullValueHandling = NullValueHandling.Ignore,
                DateFormatString  = "yyyy-MM-ddTHH:mm:ss"
            }), true);

            GeoCodeRS rs = JsonConvert.DeserializeObject <GeoCodeRS>(result);

            return(ConvertToAirportRS(rs));
        }
Beispiel #2
0
        private AirportRS ConvertToAirportRS(GeoCodeRS response)
        {
            var place = response.Results?.FirstOrDefault()?.GeoCodeRS?.Place?.FirstOrDefault();

            if (place == null)
            {
                return(null);
            }

            AirportRS rs = new AirportRS
            {
                Code        = place.Id,
                Name        = place.Name,
                Longitude   = (decimal)place.longitude,
                Latitude    = (decimal)place.latitude,
                CityName    = place.City,
                CountryCode = place.Country
            };

            return(rs);
        }