getLocationSummary method

  1. @override
Future<LocationSummary> getLocationSummary({
  1. DateTime? date,
  2. LocationQuery? query,
})
override

Implementation

@override
Future<LocationSummary> getLocationSummary({
  DateTime? date,
  LocationQuery? query,
}) async {
  _methodCalls.add('getLocationSummary');
  LocationQuery effectiveQuery;

  if (query != null) {
    effectiveQuery = query;
  } else if (date != null) {
    final startOfDay = DateTime(date.year, date.month, date.day);
    final endOfDay = startOfDay.add(const Duration(days: 1));
    effectiveQuery = LocationQuery(from: startOfDay, to: endOfDay);
  } else {
    final now = DateTime.now();
    final startOfDay = DateTime(now.year, now.month, now.day);
    effectiveQuery = LocationQuery(from: startOfDay, to: now);
  }

  final locations = await queryLocations(effectiveQuery);
  return LocationHistoryCalculator.calculateSummary(locations);
}