invalidateCache method

void invalidateCache({
  1. Object? key,
  2. KeyFilterFunc? filterFn,
})

Invalidate cache currently stored.

Pass a key to invalidate a query at the given key. Will invalidate both infinite queries and queries.

Implementation

void invalidateCache({
  Object? key,
  KeyFilterFunc? filterFn,
}) {
  if (filterFn != null) {
    final queries = _filterQueryKey(filter: filterFn);
    // other wise invalidate the whole cache
    for (final query in queries) {
      query.invalidateQuery();
    }
  } else if (key != null) {
    final k = encodeKey(key);
    if (_queryCache.containsKey(k)) {
      _queryCache[k]?.invalidateQuery();
    }
  } else {
    // other wise invalidate the whole cache
    for (final query in _queryCache.values) {
      query.invalidateQuery();
    }
  }
}