reset method

Future<void> reset()

Destroys all local records - specifically, memoryCache and sqliteProvider's data sources.

Implementation

Future<void> reset() async {
  await sqliteProvider.resetDb();
  memoryCacheProvider.reset();
  for (final subscription in subscriptions.values) {
    for (final controller in subscription.values) {
      // https://github.com/GetDutchie/brick/issues/552
      if (!controller.isClosed && controller.hasListener && !controller.isPaused) {
        await controller.close();
      } else {
        unawaited(controller.close());
      }
    }
  }
  subscriptions.clear();
}