close method
Closes the underlying HTTP server.
Implementation
Future<void> close({bool force = false}) async {
if (_closed) return;
_closed = true;
await _subscription.cancel();
await server.close(force: force);
if (_activeRequests.isNotEmpty) {
await Future.wait(
_activeRequests.toList(growable: false),
eagerError: false,
);
}
if (force) {
await Future.wait(
_activeSockets.toList(growable: false).map((socket) => socket.close()),
eagerError: false,
);
}
if (_activeSessions.isNotEmpty) {
await Future.wait(
_activeSessions.toList(growable: false),
eagerError: false,
);
}
}