peerToPeerInfoV2 function
Converts a protocol buffer Peer message to a PeerInfo.
Implementation
PeerInfo peerToPeerInfoV2(Peer p) {
if (p.id.isEmpty) {
throw Exception('nil peer');
}
final id = PeerId.fromBytes(Uint8List.fromList(p.id));
final addrs = <MultiAddr>[];
for (final addrBytes in p.addrs) {
try {
final addr = MultiAddr.fromBytes(Uint8List.fromList(addrBytes));
addrs.add(addr);
} catch (e) {
// Ignore invalid addresses
}
}
return PeerInfo(peerId: id, addrs: addrs.toSet());
}