QueryCacheEntry<T> class
A single cached query record containing fetched data, timestamps, and TTL settings.
Encapsulates the normalized key, cached data payload, last updatedAt timestamp, and TTL durations (staleTime, cacheTime).
Example:
final entry = QueryCacheEntry<List<String>>(
key: ['posts', 'featured'],
data: ['Post 1', 'Post 2'],
updatedAt: DateTime.now(),
staleTime: const Duration(minutes: 2),
);
Constructors
- QueryCacheEntry({required List key, T? data, required DateTime updatedAt, Duration staleTime = const Duration(minutes: 5), Duration cacheTime = const Duration(minutes: 30), bool isStale = false})
- Creates a QueryCacheEntry record.
Properties
- cacheTime ↔ Duration
-
Maximum duration to keep this entry in memory before garbage collection.
getter/setter pair
- data ↔ T?
-
Cached data payload.
getter/setter pair
- hashCode → int
-
The hash code for this object.
no setterinherited
- isExpired → bool
-
Whether this cache entry has exceeded its cacheTime lifetime and should be evicted.
no setter
- isStale ↔ bool
-
Whether this entry has been explicitly invalidated or marked stale.
getter/setter pair
- key → List
-
Normalized key list uniquely identifying this query.
final
- runtimeType → Type
-
A representation of the runtime type of the object.
no setterinherited
- shouldRevalidate → bool
-
Whether this cache entry is stale and should be revalidated on access.
no setter
- staleTime ↔ Duration
-
Duration after which data is considered stale and background revalidation should occur.
getter/setter pair
- updatedAt ↔ DateTime
-
Timestamp when this entry was last fetched or updated.
getter/setter pair
Methods
-
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