DailyCachePolicy class

Daily cache expiration policy.

Caches are considered valid for 24 hours from when they were marked fresh.

Example

final policy = DailyCachePolicy(sharedPreferences);
if (await policy.isValid('products')) {
  // Use cached data
} else {
  // Fetch fresh data
  await policy.markFresh('products');
}
Implemented types

Constructors

DailyCachePolicy({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

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