TtlCachePolicy class

Time-to-live (TTL) cache policy.

Caches expire after a specified duration.

Example

final policy = TtlCachePolicy(
  ttl: const Duration(hours: 6),
  getTimestamps: () async => prefs.getInt('cache_timestamp'),
  setTimestamp: (key, ts) async => prefs.setInt(key, ts),
  removeTimestamp: (key) async => prefs.remove(key),
  clearAll: () async => prefs.clear(),
);
Implemented types

Constructors

TtlCachePolicy({required Duration ttl, required Future<Map<String, int>> getTimestamps(), required Future<void> setTimestamp(String key, int timestamp), required Future<void> removeTimestamp(String key), required Future<void> clearAll()})

Properties

hashCode int
The hash code for this object.
no setterinherited
runtimeType Type
A representation of the runtime type of the object.
no setterinherited
ttl Duration
final

Methods

clear() Future<void>
Clear all cached data.
override
invalidate(String key) Future<void>
Invalidate cached data for key.
override
isValid(String key) Future<bool>
Check if cached data for key is still valid.
override
markFresh(String key) Future<void>
Mark cached data for key as fresh.
override
noSuchMethod(Invocation invocation) → dynamic
Invoked when a nonexistent method or property is accessed.
inherited
toString() String
A string representation of this object.
inherited

Operators

operator ==(Object other) bool
The equality operator.
inherited