get method

  1. @override
Future<List<Model>> get({
  1. Map<String, dynamic> filters = const {},
  2. bool cache = true,
})
override

Implementation

@override
Future<List<Model>> get({Map<String, dynamic> filters = const {}, bool cache = true}) async {
  try {
    _startLoading();
    var res = (await _fetcher.get<Model>(_route, filters)).load();
    if (res.isList) {
      var li = res.getList(_parser);
      if (cache) {
        li.forEach((el) {
          if (!list.contains(el)) list.add(el);
        });
      }
      _succeedLoading();
      return li;
    }
    throw ArgumentError.value(res.data, 'data', 'Error while fetching list');
  } catch (e) {
    _failLoading();
    rethrow;
  } finally {
    notifyListeners();
  }
}