CacheItem<T>.fromJson constructor

CacheItem<T>.fromJson(
  1. Map<String, dynamic> json
)

Creates a cache item from a JSON map.

Implementation

factory CacheItem.fromJson(Map<String, dynamic> json) {
  return CacheItem<T>(
    value: json['value'] as T,
    expiry: json['expiry'] != null ? DateTime.parse(json['expiry']) : null,
    slidingExpiry: json['slidingExpiry'] != null
        ? Duration(seconds: json['slidingExpiry'])
        : null,
    priority: json['priority'] != null
        ? CachePriority.values[json['priority']]
        : CachePriority.normal,
    createdAt:
        json['createdAt'] != null ? DateTime.parse(json['createdAt']) : null,
    lastAccessedAt: json['lastAccessedAt'] != null
        ? DateTime.parse(json['lastAccessedAt'])
        : null,
    accessCount: json['accessCount'] as int? ?? 0,
    isCompressed: json['isCompressed'] as bool? ?? false,
    originalSize: json['originalSize'] as int?,
    compressionRatio: json['compressionRatio'] as double?,
  );
}