requestItems method

  1. @override
Future requestItems({
  1. List<NsgUpdateKey>? keys,
  2. NsgDataRequestParams? filter,
})
override

Request Items

Implementation

@override
Future requestItems({List<NsgUpdateKey>? keys, NsgDataRequestParams? filter}) async {
  await super.requestItems(keys: keys, filter: filter);
  //Проверка на наличие одинаковых записей
  //В случае обнаружения, дубликаты удаляем
  var itemsToRemove = <T>[];
  for (var item in items) {
    var nus = item as NsgUserSettings;
    if (userSettings.containsKey(nus.name)) {
      itemsToRemove.add(item);
      continue;
    }
    userSettings[nus.name] = item;
  }
  if (itemsToRemove.isNotEmpty) {
    await itemsRemove(itemsToRemove);
    for (var i in itemsToRemove) {
      items.remove(i);
    }
  }
}