Exemple #1
0
        private double GetDistance(Aiport source, Aiport destination)
        {
            var sourceCoord      = new GeoCoordinate(source.Latitude, source.Longitude);
            var destinationCoord = new GeoCoordinate(destination.Latitude, destination.Longitude);

            return(sourceCoord.GetDistanceTo(destinationCoord) / 1000);
        }
Exemple #2
0
        public async Task <Aiport> GetAiportAsync(string icao)
        {
            var uri = string.Format(Const.airpotInfo, icao);

            using (var response = await Client.GetAsync(uri))
            {
                ApiLimits(response);

                var json = await response.Content.ReadAsStringAsync();

                if (response.IsSuccessStatusCode)
                {
                    return(Aiport.FromJson(json));
                }
                else
                {
                    var msg = ApiException(json);
                    throw new BadRequestException(msg);
                }
            }
        }
Exemple #3
0
        private double GetTime(Aiport source, Aiport destination)
        {
            var distance = this.GetDistance(source, destination);

            return(distance / speed);
        }
Exemple #4
0
 private TimeSpan GetFlighTime(Aiport source, Aiport destination)
 {
     return(TimeSpan.FromHours(this.GetTime(source, destination)));
 }