getAccounts method
Future<DataPage<AccountV1> >
getAccounts(
- String? correlationId,
- FilterParams? filter,
- PagingParams? paging
override
Gets a page of accounts retrieved by a given filter.
correlationId
(optional) transaction id to trace execution through call chain.filter
(optional) a filter function to filter itemspaging
(optional) paging parameters Return Future that receives a data page Throws error.
Implementation
@override
Future<DataPage<AccountV1>> getAccounts(
String? correlationId, FilterParams? filter, PagingParams? paging) async {
var filterCurl = _composeFilter(filter);
var accounts = _accounts.where(filterCurl).toList();
// Extract a page
paging = paging ?? PagingParams();
var skip = paging.getSkip(-1);
var take = paging.getTake(_maxPageSize);
var total = 0;
if (paging.total) total = accounts.length;
if (skip > 0) {
accounts = accounts.skip(skip).toList();
}
accounts = accounts.take(take).toList();
return DataPage(accounts, total);
}