delete method

Future<void> delete(
  1. String key
)

Delete a value from storage.

Implementation

Future<void> delete(String key) async {
  switch (storageType) {
    case StorageType.inMemory:
      final bridge = PVBridge();
      final db = await bridge.getDatabaseForType(storageType);
      final storeName = isMetadata
          ? ctx.cache.metadataNameFunction!(ctx.cache.env)
          : ctx.cache.env;
      final store = bridge.getStore(storeName, storageType);
      await store.record(key).delete(db);
      break;

    case StorageType.stdSembast:
      final bridge = PVBridge();
      final db = await bridge.getDatabaseForType(
        storageType,
        heavy: ctx.cache.heavy,
        env: ctx.cache.env,
      );
      final storeName = isMetadata
          ? ctx.cache.metadataNameFunction!(ctx.cache.env)
          : ctx.cache.env;
      final store = bridge.getStore(storeName, storageType);
      await store.record(key).delete(db);
      break;

    case StorageType.secureStorage:
      await PVBridge.secureStorage.delete(key: key);
      break;
  }
}