set method
Store a value under key with a given ttl.
The entry is written to both the memory and disk tiers.
Implementation
Future<void> set(
String key,
Map<String, dynamic> value,
Duration ttl,
) async {
final entry = _CacheEntry(
value: value,
expiresAt: DateTime.now().add(ttl),
);
// Memory tier.
_evictIfNeeded();
_memoryCache[key] = entry;
// Disk tier.
await _writeDiskEntry(key, entry);
Logger.debug('Cache set: $key (ttl: ${ttl.inSeconds}s)');
}