CacheItem<T> class

A class that represents a single item in the cache.

Each cache item contains a value, optional expiry time, and other metadata.

Constructors

CacheItem({required T value, DateTime? expiry, Duration? slidingExpiry, CachePriority priority = CachePriority.normal, DateTime? createdAt, DateTime? lastAccessedAt, int accessCount = 0, bool isCompressed = false, int? originalSize, double? compressionRatio, Set<String>? tags})
Creates a new instance of CacheItem.
CacheItem.fromJson(Map<String, dynamic> json)
Creates a cache item from a JSON map.
factory

Properties

accessCount ↔ int
The number of times the item has been accessed.
getter/setter pair
compressionRatio → double?
The compression ratio achieved (original size / compressed size). This is only set if the item is compressed.
final
createdAt → DateTime
The time at which the item was created.
final
expiry → DateTime?
The time at which the item expires and should be removed from the cache.
final
hashCode → int
The hash code for this object.
no setterinherited
isCompressed → bool
Whether the item is compressed.
final
isExpired → bool
no setter
lastAccessedAt ↔ DateTime
The time at which the item was last accessed.
getter/setter pair
originalSize → int?
The original size of the item before compression, in bytes. This is only set if the item is compressed.
final
priority → CachePriority
The priority of the item. Higher priority items are less likely to be evicted when the cache is full.
final
runtimeType → Type
A representation of the runtime type of the object.
no setterinherited
slidingExpiry → Duration?
The sliding expiry duration. If set, the expiry time will be extended by this duration each time the item is accessed.
final
tags → Set<String>
The tags associated with this cache item. Tags can be used to group related items and perform operations on them as a group.
final
value → T
The value stored in the cache.
final

Methods

isStale(Duration staleTime) → bool
Checks if the item is stale based on the provided stale time.
noSuchMethod(Invocation invocation) → dynamic
Invoked when a nonexistent method or property is accessed.
inherited
toJson() → Map<String, dynamic>
Converts the cache item to a JSON map.
toString() → String
A string representation of this object.
inherited
updateExpiry() → CacheItem<T>
Updates the expiry time of the item based on the sliding expiry duration.

Operators

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