aggregate method
Calculates adapter-side aggregates over the full effective adapter result
set. Subclasses that support aggregate queries override this and expose
capabilities.aggregates == true.
Implementation
@override
Future<FdcDataAggregateResult> aggregate(
FdcDataAggregateRequest request,
) async {
final rows = List<_FdcMemoryRow>.of(_rows, growable: false);
if (rows.length < _backgroundQueryRowThreshold) {
return _runMemoryInline(
() => _FdcMemoryQueryExecutor.aggregate(rows, request),
);
}
try {
return await fdcRunInBackground<FdcDataAggregateResult>(
() => _FdcMemoryQueryExecutor.aggregate(rows, request),
);
} on Object catch (_) {
return _runMemoryInline(
() => _FdcMemoryQueryExecutor.aggregate(rows, request),
);
}
}