static Task <RouteInfo> GetRouteBetween(GeoCoordinates origin, GeoCoordinates destination) { try { return(DirectionsService.ComputeApproximateDrivingInfo( Program.GoogleApiKey, origin, destination)); } catch (ApplicationException ex) { Program.LogError($"Failure in {nameof(SinglePassengerRideMatcher)}: {ex.Message}"); return(Task.FromResult(new RouteInfo(new GeoPolyline(new[] { origin, destination })))); } }
static Task <RouteInfo> GetRouteWithPassenger(UserRideOffer offer, MatchableRideRequest passenger) { try { return(DirectionsService.ComputeApproximateDrivingInfo( Program.GoogleApiKey, offer.RideOffer.Trip.Source, offer.RideOffer.Trip.Destination, passenger.Request.RideRequest.Trip.Source, passenger.Request.RideRequest.Trip.Destination)); } catch (ApplicationException ex) { Program.LogError($"Failure in {nameof(SinglePassengerRideMatcher)}: {ex.Message}"); return(Task.FromResult(new RouteInfo(new GeoPolyline(new[] { offer.RideOffer.Trip.Source, passenger.Request.RideRequest.Trip.Source, passenger.Request.RideRequest.Trip.Destination, offer.RideOffer.Trip.Destination })))); } }