cache property

  1. @ignore
Future<Cache<T>> cache
latefinal

The Cache backed by a Store

Implementation

@ignore
late final Future<Cache<T>> cache = store.then(
  (FileCacheStore cacheStore) async => await cacheStore.cache<T>(
    name: name,
    fromEncodable: fromEncodable,
    maxEntries: maxEntries,
    eventListenerMode: EventListenerMode.synchronous,
    evictionPolicy: evictionPolicy,
    expiryPolicy: expiryPolicy,
  )
    ..on<CacheEntryCreatedEvent<T>>().listen(
      verbose ? (event) => log('Key "${event.entry.key}" added') : null,
    )
    ..on<CacheEntryUpdatedEvent<T>>().listen(
      verbose ? (event) => log('Key "${event.newEntry.key}" updated') : null,
    )
    ..on<CacheEntryRemovedEvent<T>>().listen(
      verbose ? (event) => log('Key "${event.entry.key}" removed') : null,
    )
    ..on<CacheEntryExpiredEvent<T>>().listen(
      verbose ? (event) => log('Key "${event.entry.key}" expired') : null,
    )
    ..on<CacheEntryEvictedEvent<T>>().listen(
      verbose ? (event) => log('Key "${event.entry.key}" evicted') : null,
    ),
);