write static method

Future<void> write(
  1. String key,
  2. dynamic data,
  3. Duration ttl
)

Store data under key with the given ttl.

Implementation

static Future<void> write(String key, dynamic data, Duration ttl) async {
  final expiresAt = DateTime.now().add(ttl);

  // L1
  _memory[key] = _MemoryEntry(data: data, expiresAt: expiresAt);

  // L2
  await _box?.put(
    key,
    _HiveEntry(data: data, expiresAtMs: expiresAt.millisecondsSinceEpoch)
        .toMap(),
  );
}