close method

  1. @override
Future<void> close()
override

Close every bundle this factory has produced. Idempotent — calling twice does not throw, and calling initialize after close is allowed and starts a fresh lifecycle.

Implementation

@override
Future<void> close() async {
  final bundles = _bundles.values.toList();
  _bundles.clear();
  for (final b in bundles) {
    try {
      await b.close();
    } catch (e, st) {
      _logger.warning('Error closing bundle for ${b.atSign}: $e\n$st');
    }
  }
}