addrs method

List<MultiAddr> addrs()

Addrs return all activated observed addresses

Implementation

List<MultiAddr> addrs() {
  final m = <String, List<ObserverSet>>{};

  for (final localTWStr in _externalAddrs.keys) {
    m[localTWStr] = [...?m[localTWStr], ..._getTopExternalAddrs(localTWStr)];
  }

  final addrs = <MultiAddr>[];

  for (final t in _localAddrs.values) {
    final twStr = String.fromCharCodes(t.thinWaist.tw.toBytes());
    for (final s in m[twStr] ?? []) {
      addrs.add(s.cacheMultiaddr(t.thinWaist.rest));
    }
  }

  return _appendInferredAddrs(m, addrs);
}