accept method
override
Accepts an incoming connection Returns null if the listener is closed
Implementation
@override
Future<libp2p.TransportConn?> accept() async {
if (_closed) return null;
if (_pending.isNotEmpty) {
final conn = _pending.removeAt(0);
return QuicConnection(
conn,
localAddr: _localAddr,
remoteAddr: _addr,
isServer: true,
);
}
try {
final conn = await _stream.first;
return QuicConnection(
conn,
localAddr: _localAddr,
remoteAddr: _addr,
isServer: true,
);
} on StateError {
return null;
}
}