addrsFor method

List<MultiAddr> addrsFor(
  1. MultiAddr? addr
)

AddrsFor return all activated observed addresses associated with the given (resolved) listen address.

Implementation

List<MultiAddr> addrsFor(MultiAddr? addr) {
  if (addr == null) {
    return [];
  }

  final tw = thinWaistForm(_normalize(addr));
  if (tw == null) {
    return [];
  }

  final observerSets = _getTopExternalAddrs(String.fromCharCodes(tw.tw.toBytes()));
  final result = <MultiAddr>[];

  for (final s in observerSets) {
    result.add(s.cacheMultiaddr(tw.rest));
  }

  return result;
}