close method
Close the transport
Implementation
@override
void close() {
if (_isClosed) return;
_isClosed = true;
_logger.debug('Closing SseHeartbeatClientTransport');
// Cancel all timers
_heartbeatTimer?.cancel();
_heartbeatTimeoutTimer?.cancel();
_reconnectTimer?.cancel();
// Close event source
_eventSource.close();
// Close streams
if (!_messageController.isClosed) {
_messageController.close();
}
if (!_healthController.isClosed) {
_healthController.close();
}
if (!_closeCompleter.isCompleted) {
_closeCompleter.complete();
}
_updateHealth(ConnectionHealth.disconnected);
}