createUdpConnect function
Implementation
Future<ConnectionI> createUdpConnect(UdpEndpoint endpoint) async {
final c = Completer<ConnectionI>();
//
void Function(UdpEndpoint) doConnect = (endpoint) {
RawDatagramSocket.bind(endpoint.addressList[0], 0, ttl: endpoint.ttl)
.then((socket) {
final uc = UdpConnection(endpoint: endpoint, socket: socket)..init();
c.complete(uc);
});
};
if (endpoint.addressList.isEmpty) {
endpoint.resolve().then((x) {
doConnect(endpoint);
});
} else {
doConnect(endpoint);
}
return c.future;
}