route method

Future<void> route(
  1. DirectionsRequest request,
  2. void callback(
    1. DirectionsResult,
    2. DirectionsStatus?
    )
)

Calculates route between two points.

request argument contains origin and destination points and also settings for route calculation.

callback argument will be called when route calculations finished.

Implementation

Future<void> route(
  DirectionsRequest request,
  void Function(DirectionsResult, DirectionsStatus?) callback,
) async {
  final url = '$_directionApiUrl${request.toString()}&key=$apiKey';
  final response = await http.get(Uri.parse(url));

  if (response.statusCode != 200) {
    throw Exception(
        '${response.statusCode} (${response.reasonPhrase}), uri = ${response.request!.url}');
  }

  final result = DirectionsResult.fromMap(json.decode(response.body));

  callback(result, result.status);
}