Friendlier accessors on preserves records

This commit is contained in:
Tony Garnock-Jones 2019-05-30 14:11:44 +01:00
parent 89fa91eb89
commit c99572f4b1
2 changed files with 9 additions and 9 deletions

View File

@ -22,6 +22,6 @@
},
"dependencies": {
"immutable": "^3.8.2",
"preserves": "^0.0.6"
"preserves": "0.0.8"
}
}

View File

@ -125,18 +125,18 @@ spawn named 'uplinkSelection' {
let best = null;
const better = (a) => {
if (!best) return true;
if ((a.get(2) === this.gatewayIp)) {
if (best.get(2) !== this.gatewayIp) return true;
return (a.get(1) < best.get(1));
if (Peer._ip(a) === this.gatewayIp) {
if (Peer._ip(best) !== this.gatewayIp) return true;
return (Peer._nodeId(a) < Peer._nodeId(best));
} else {
if (best.get(2) === this.gatewayIp) return false;
return (a.get(1) < best.get(1));
if (Peer._ip(best) === this.gatewayIp) return false;
return (Peer._nodeId(a) < Peer._nodeId(best));
}
};
this.peers.forEach((p) => { if (better(p)) best = p; });
if (best && (best.get(1) !== localId)) {
this.bestAddr = best.get(3);
this.bestPeer = OverlayNode(best.get(1));
if (best && (Peer._nodeId(best) !== localId)) {
this.bestAddr = Peer._addr(best);
this.bestPeer = OverlayNode(Peer._nodeId(best));
} else {
this.bestAddr = rootAddr;
this.bestPeer = OverlayRoot();