invalidateByPattern method

void invalidateByPattern(
  1. String pattern, {
  2. bool emitEvent = true,
})

Invalidate cache by pattern (e.g., "user_", "bookings_")

Implementation

void invalidateByPattern(String pattern, {bool emitEvent = true}) {
  final keysToInvalidate = _cacheStorage.getKeysByPattern(pattern);

  // Remove invalidated keys
  for (final key in keysToInvalidate) {
    _cacheStorage.removeKey(key);
  }

  // Notify listeners
  if (keysToInvalidate.isNotEmpty) {
    if (emitEvent) {
      _invalidationController.add(
        CacheInvalidationEvent(
          invalidatedKeys: keysToInvalidate,
          pattern: pattern,
        ),
      );
    }
  }
}