addPeersByAddresses method

Future<List<Peer>> addPeersByAddresses(
  1. List<String> addresses,
  2. int port, {
  3. PeerConfig? peerConfig,
  4. PeerHandlerI? handler,
})

Add multiple peers by address list

Implementation

Future<List<Peer>> addPeersByAddresses(
  List<String> addresses,
  int port, {
  PeerConfig? peerConfig,
  PeerHandlerI? handler,
}) async {
  final peers = <Peer>[];
  final errors = <String>[];

  for (final address in addresses) {
    try {
      final peer = await addPeerByAddress(
        address,
        port,
        peerConfig: peerConfig,
        handler: handler,
      );
      peers.add(peer);
    } catch (e) {
      errors.add('$address: $e');
    }
  }

  if (errors.isNotEmpty) {
    logger.warning('Failed to add some peers: ${errors.join(', ')}');
  }

  return peers;
}