close method

Future<void> close()

Closes all active connections.

Implementation

Future<void> close() async {
  final disconnected = <DatabaseConnection>{};

  for (final pool in _pools.values) {
    for (final conn in pool) {
      if (disconnected.add(conn)) {
        await conn.disconnect();
      }
    }
  }

  for (final conn in _connections.values) {
    if (disconnected.add(conn)) {
      await conn.disconnect();
    }
  }

  _pools.clear();
  _poolIndexes.clear();
  _connections.clear();
}