@streamr/trackerless-network 0.0.1-tatum.6 → 0.0.1-tatum.7

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (170) hide show
  1. package/dist/package.json +10 -8
  2. package/dist/src/NetworkNode.js +1 -1
  3. package/dist/src/NetworkNode.js.map +1 -1
  4. package/dist/src/NetworkStack.d.ts +1 -3
  5. package/dist/src/NetworkStack.js +18 -47
  6. package/dist/src/NetworkStack.js.map +1 -1
  7. package/dist/src/identifiers.js +2 -2
  8. package/dist/src/identifiers.js.map +1 -1
  9. package/dist/src/logic/{StreamNodeServer.d.ts → DeliveryRpcLocal.d.ts} +6 -5
  10. package/dist/src/logic/{StreamNodeServer.js → DeliveryRpcLocal.js} +5 -5
  11. package/dist/src/logic/{StreamNodeServer.js.map → DeliveryRpcLocal.js.map} +1 -1
  12. package/dist/src/logic/{RemoteRandomGraphNode.d.ts → DeliveryRpcRemote.d.ts} +2 -2
  13. package/dist/src/logic/{RemoteRandomGraphNode.js → DeliveryRpcRemote.js} +5 -5
  14. package/dist/src/logic/DeliveryRpcRemote.js.map +1 -0
  15. package/dist/src/logic/{StreamPartEntryPointDiscovery.d.ts → EntryPointDiscovery.d.ts} +8 -10
  16. package/dist/src/logic/{StreamPartEntryPointDiscovery.js → EntryPointDiscovery.js} +14 -36
  17. package/dist/src/logic/EntryPointDiscovery.js.map +1 -0
  18. package/dist/src/logic/ILayer0.d.ts +3 -6
  19. package/dist/src/logic/NodeList.d.ts +10 -10
  20. package/dist/src/logic/NodeList.js.map +1 -1
  21. package/dist/src/logic/RandomGraphNode.d.ts +8 -12
  22. package/dist/src/logic/RandomGraphNode.js +41 -40
  23. package/dist/src/logic/RandomGraphNode.js.map +1 -1
  24. package/dist/src/logic/StreamrNode.d.ts +9 -12
  25. package/dist/src/logic/StreamrNode.js +53 -63
  26. package/dist/src/logic/StreamrNode.js.map +1 -1
  27. package/dist/src/logic/createRandomGraphNode.d.ts +6 -1
  28. package/dist/src/logic/createRandomGraphNode.js +17 -23
  29. package/dist/src/logic/createRandomGraphNode.js.map +1 -1
  30. package/dist/src/logic/formStreamPartDeliveryServiceId.d.ts +2 -0
  31. package/dist/src/logic/formStreamPartDeliveryServiceId.js +8 -0
  32. package/dist/src/logic/formStreamPartDeliveryServiceId.js.map +1 -0
  33. package/dist/src/logic/inspect/Inspector.d.ts +3 -2
  34. package/dist/src/logic/inspect/Inspector.js +5 -5
  35. package/dist/src/logic/inspect/Inspector.js.map +1 -1
  36. package/dist/src/logic/neighbor-discovery/{HandshakerServer.d.ts → HandshakeRpcLocal.d.ts} +10 -10
  37. package/dist/src/logic/neighbor-discovery/{HandshakerServer.js → HandshakeRpcLocal.js} +13 -13
  38. package/dist/src/logic/neighbor-discovery/HandshakeRpcLocal.js.map +1 -0
  39. package/dist/src/logic/neighbor-discovery/{RemoteHandshaker.d.ts → HandshakeRpcRemote.d.ts} +1 -1
  40. package/dist/src/logic/neighbor-discovery/{RemoteHandshaker.js → HandshakeRpcRemote.js} +8 -7
  41. package/dist/src/logic/neighbor-discovery/HandshakeRpcRemote.js.map +1 -0
  42. package/dist/src/logic/neighbor-discovery/Handshaker.d.ts +8 -7
  43. package/dist/src/logic/neighbor-discovery/Handshaker.js +23 -24
  44. package/dist/src/logic/neighbor-discovery/Handshaker.js.map +1 -1
  45. package/dist/src/logic/neighbor-discovery/NeighborFinder.d.ts +1 -1
  46. package/dist/src/logic/neighbor-discovery/NeighborFinder.js +1 -1
  47. package/dist/src/logic/neighbor-discovery/NeighborFinder.js.map +1 -1
  48. package/dist/src/logic/neighbor-discovery/NeighborUpdateManager.d.ts +3 -2
  49. package/dist/src/logic/neighbor-discovery/NeighborUpdateManager.js +5 -5
  50. package/dist/src/logic/neighbor-discovery/NeighborUpdateManager.js.map +1 -1
  51. package/dist/src/logic/neighbor-discovery/{NeighborUpdateManagerServer.d.ts → NeighborUpdateRpcLocal.d.ts} +6 -6
  52. package/dist/src/logic/neighbor-discovery/{NeighborUpdateManagerServer.js → NeighborUpdateRpcLocal.js} +9 -9
  53. package/dist/src/logic/neighbor-discovery/NeighborUpdateRpcLocal.js.map +1 -0
  54. package/dist/src/logic/neighbor-discovery/{RemoteNeighborUpdateManager.d.ts → NeighborUpdateRpcRemote.d.ts} +1 -1
  55. package/dist/src/logic/neighbor-discovery/{RemoteNeighborUpdateManager.js → NeighborUpdateRpcRemote.js} +5 -5
  56. package/dist/src/logic/neighbor-discovery/NeighborUpdateRpcRemote.js.map +1 -0
  57. package/dist/src/logic/propagation/Propagation.js +2 -2
  58. package/dist/src/logic/propagation/Propagation.js.map +1 -1
  59. package/dist/src/logic/proxy/{ProxyStreamConnectionClient.d.ts → ProxyClient.d.ts} +6 -9
  60. package/dist/src/logic/proxy/{ProxyStreamConnectionClient.js → ProxyClient.js} +23 -21
  61. package/dist/src/logic/proxy/ProxyClient.js.map +1 -0
  62. package/dist/src/logic/proxy/{ProxyStreamConnectionServer.d.ts → ProxyConnectionRpcLocal.d.ts} +5 -5
  63. package/dist/src/logic/proxy/{ProxyStreamConnectionServer.js → ProxyConnectionRpcLocal.js} +6 -6
  64. package/dist/src/logic/proxy/ProxyConnectionRpcLocal.js.map +1 -0
  65. package/dist/src/logic/proxy/{RemoteProxyServer.d.ts → ProxyConnectionRpcRemote.d.ts} +1 -1
  66. package/dist/src/logic/proxy/{RemoteProxyServer.js → ProxyConnectionRpcRemote.js} +4 -4
  67. package/dist/src/logic/proxy/ProxyConnectionRpcRemote.js.map +1 -0
  68. package/dist/src/logic/temporary-connection/{TemporaryConnectionRpcServer.d.ts → TemporaryConnectionRpcLocal.d.ts} +5 -4
  69. package/dist/src/logic/temporary-connection/{TemporaryConnectionRpcServer.js → TemporaryConnectionRpcLocal.js} +6 -6
  70. package/dist/src/logic/temporary-connection/TemporaryConnectionRpcLocal.js.map +1 -0
  71. package/dist/src/logic/temporary-connection/{RemoteTemporaryConnectionRpcServer.d.ts → TemporaryConnectionRpcRemote.d.ts} +1 -1
  72. package/dist/src/logic/temporary-connection/{RemoteTemporaryConnectionRpcServer.js → TemporaryConnectionRpcRemote.js} +4 -4
  73. package/dist/src/logic/temporary-connection/TemporaryConnectionRpcRemote.js.map +1 -0
  74. package/dist/src/proto/packages/dht/protos/DhtRpc.d.ts +0 -4
  75. package/dist/src/proto/packages/dht/protos/DhtRpc.js +1 -2
  76. package/dist/src/proto/packages/dht/protos/DhtRpc.js.map +1 -1
  77. package/dist/src/proto/packages/trackerless-network/protos/NetworkRpc.client.d.ts +4 -4
  78. package/dist/src/proto/packages/trackerless-network/protos/NetworkRpc.client.js +7 -7
  79. package/dist/src/proto/packages/trackerless-network/protos/NetworkRpc.client.js.map +1 -1
  80. package/dist/src/proto/packages/trackerless-network/protos/NetworkRpc.d.ts +10 -10
  81. package/dist/src/proto/packages/trackerless-network/protos/NetworkRpc.js +7 -7
  82. package/dist/src/proto/packages/trackerless-network/protos/NetworkRpc.js.map +1 -1
  83. package/dist/src/proto/packages/trackerless-network/protos/NetworkRpc.server.d.ts +2 -2
  84. package/dist/test/benchmark/first-message.js +10 -13
  85. package/dist/test/benchmark/first-message.js.map +1 -1
  86. package/dist/test/utils/utils.d.ts +5 -5
  87. package/dist/test/utils/utils.js +14 -13
  88. package/dist/test/utils/utils.js.map +1 -1
  89. package/package.json +10 -8
  90. package/protos/NetworkRpc.proto +5 -5
  91. package/src/NetworkNode.ts +1 -1
  92. package/src/NetworkStack.ts +20 -62
  93. package/src/identifiers.ts +3 -3
  94. package/src/logic/{StreamNodeServer.ts → DeliveryRpcLocal.ts} +8 -7
  95. package/src/logic/{RemoteRandomGraphNode.ts → DeliveryRpcRemote.ts} +3 -3
  96. package/src/logic/{StreamPartEntryPointDiscovery.ts → EntryPointDiscovery.ts} +18 -42
  97. package/src/logic/ILayer0.ts +3 -6
  98. package/src/logic/NodeList.ts +12 -12
  99. package/src/logic/RandomGraphNode.ts +61 -62
  100. package/src/logic/StreamrNode.ts +59 -73
  101. package/src/logic/createRandomGraphNode.ts +28 -26
  102. package/src/logic/formStreamPartDeliveryServiceId.ts +5 -0
  103. package/src/logic/inspect/Inspector.ts +8 -7
  104. package/src/logic/neighbor-discovery/{HandshakerServer.ts → HandshakeRpcLocal.ts} +20 -20
  105. package/src/logic/neighbor-discovery/{RemoteHandshaker.ts → HandshakeRpcRemote.ts} +6 -5
  106. package/src/logic/neighbor-discovery/Handshaker.ts +38 -38
  107. package/src/logic/neighbor-discovery/NeighborFinder.ts +2 -2
  108. package/src/logic/neighbor-discovery/NeighborUpdateManager.ts +13 -10
  109. package/src/logic/neighbor-discovery/{NeighborUpdateManagerServer.ts → NeighborUpdateRpcLocal.ts} +15 -15
  110. package/src/logic/neighbor-discovery/{RemoteNeighborUpdateManager.ts → NeighborUpdateRpcRemote.ts} +2 -2
  111. package/src/logic/propagation/Propagation.ts +2 -2
  112. package/src/logic/proxy/{ProxyStreamConnectionClient.ts → ProxyClient.ts} +27 -27
  113. package/src/logic/proxy/{ProxyStreamConnectionServer.ts → ProxyConnectionRpcLocal.ts} +10 -11
  114. package/src/logic/proxy/{RemoteProxyServer.ts → ProxyConnectionRpcRemote.ts} +1 -1
  115. package/src/logic/temporary-connection/{TemporaryConnectionRpcServer.ts → TemporaryConnectionRpcLocal.ts} +11 -10
  116. package/src/logic/temporary-connection/{RemoteTemporaryConnectionRpcServer.ts → TemporaryConnectionRpcRemote.ts} +1 -1
  117. package/src/proto/packages/dht/protos/DhtRpc.ts +1 -6
  118. package/src/proto/packages/trackerless-network/protos/NetworkRpc.client.ts +8 -8
  119. package/src/proto/packages/trackerless-network/protos/NetworkRpc.server.ts +2 -2
  120. package/src/proto/packages/trackerless-network/protos/NetworkRpc.ts +14 -14
  121. package/test/benchmark/first-message.ts +10 -13
  122. package/test/end-to-end/inspect.test.ts +12 -12
  123. package/test/end-to-end/proxy-and-full-node.test.ts +13 -14
  124. package/test/end-to-end/proxy-connections.test.ts +9 -11
  125. package/test/end-to-end/proxy-key-exchange.test.ts +12 -13
  126. package/test/end-to-end/random-graph-with-real-connections.test.ts +7 -7
  127. package/test/end-to-end/webrtc-full-node-network.test.ts +8 -8
  128. package/test/end-to-end/websocket-full-node-network.test.ts +8 -10
  129. package/test/integration/{RemoteRandomGraphNode.test.ts → DeliveryRpcRemote.test.ts} +17 -14
  130. package/test/integration/{RemoteHandshaker.test.ts → HandshakeRpcRemote.test.ts} +10 -9
  131. package/test/integration/Handshakes.test.ts +23 -20
  132. package/test/integration/Inspect.test.ts +3 -2
  133. package/test/integration/{RemoteNeighborUpdateManager.test.ts → NeighborUpdateRpcRemote.test.ts} +12 -10
  134. package/test/integration/NetworkNode.test.ts +9 -8
  135. package/test/integration/NetworkRpc.test.ts +5 -7
  136. package/test/integration/NetworkStack.test.ts +13 -15
  137. package/test/integration/Propagation.test.ts +2 -2
  138. package/test/integration/RandomGraphNode-Layer1Node-Latencies.test.ts +10 -8
  139. package/test/integration/RandomGraphNode-Layer1Node.test.ts +17 -17
  140. package/test/integration/StreamrNode.test.ts +5 -3
  141. package/test/integration/joining-streams-on-offline-peers.test.ts +16 -18
  142. package/test/integration/stream-without-default-entrypoints.test.ts +11 -13
  143. package/test/unit/{StreamNodeServer.test.ts → DeliveryRpcLocal.test.ts} +8 -8
  144. package/test/unit/{StreamPartEntrypointDiscovery.test.ts → EntrypointDiscovery.test.ts} +23 -40
  145. package/test/unit/{HandshakerServer.test.ts → HandshakeRpcLocal.test.ts} +26 -24
  146. package/test/unit/Handshaker.test.ts +10 -8
  147. package/test/unit/Inspector.test.ts +4 -3
  148. package/test/unit/NeighborFinder.test.ts +5 -5
  149. package/test/unit/NodeList.test.ts +22 -13
  150. package/test/unit/{RemoteProxyServer.test.ts → ProxyConnectionRpcRemote.test.ts} +4 -4
  151. package/test/unit/RandomGraphNode.test.ts +6 -5
  152. package/test/unit/StreamMessageTranslator.test.ts +10 -9
  153. package/test/unit/StreamrNode.test.ts +8 -8
  154. package/test/utils/mock/MockLayer0.ts +7 -26
  155. package/test/utils/mock/MockLayer1.ts +3 -8
  156. package/test/utils/mock/MockNeighborFinder.ts +1 -2
  157. package/test/utils/mock/MockNeighborUpdateManager.ts +1 -2
  158. package/test/utils/mock/Transport.ts +2 -2
  159. package/test/utils/utils.ts +13 -12
  160. package/dist/src/logic/RemoteRandomGraphNode.js.map +0 -1
  161. package/dist/src/logic/StreamPartEntryPointDiscovery.js.map +0 -1
  162. package/dist/src/logic/neighbor-discovery/HandshakerServer.js.map +0 -1
  163. package/dist/src/logic/neighbor-discovery/NeighborUpdateManagerServer.js.map +0 -1
  164. package/dist/src/logic/neighbor-discovery/RemoteHandshaker.js.map +0 -1
  165. package/dist/src/logic/neighbor-discovery/RemoteNeighborUpdateManager.js.map +0 -1
  166. package/dist/src/logic/proxy/ProxyStreamConnectionClient.js.map +0 -1
  167. package/dist/src/logic/proxy/ProxyStreamConnectionServer.js.map +0 -1
  168. package/dist/src/logic/proxy/RemoteProxyServer.js.map +0 -1
  169. package/dist/src/logic/temporary-connection/RemoteTemporaryConnectionRpcServer.js.map +0 -1
  170. package/dist/src/logic/temporary-connection/TemporaryConnectionRpcServer.js.map +0 -1
@@ -4,24 +4,23 @@ exports.RandomGraphNode = void 0;
4
4
  const eventemitter3_1 = require("eventemitter3");
5
5
  const NetworkRpc_1 = require("../proto/packages/trackerless-network/protos/NetworkRpc");
6
6
  const NetworkRpc_client_1 = require("../proto/packages/trackerless-network/protos/NetworkRpc.client");
7
- const RemoteRandomGraphNode_1 = require("./RemoteRandomGraphNode");
7
+ const DeliveryRpcRemote_1 = require("./DeliveryRpcRemote");
8
8
  const utils_1 = require("@streamr/utils");
9
9
  const proto_rpc_1 = require("@streamr/proto-rpc");
10
- const StreamNodeServer_1 = require("./StreamNodeServer");
10
+ const DeliveryRpcLocal_1 = require("./DeliveryRpcLocal");
11
11
  const utils_2 = require("./utils");
12
12
  const identifiers_1 = require("../identifiers");
13
13
  const logger = new utils_1.Logger(module);
14
14
  class RandomGraphNode extends eventemitter3_1.EventEmitter {
15
15
  constructor(config) {
16
16
  super();
17
- this.stopped = false;
18
17
  this.started = false;
19
18
  this.abortController = new AbortController();
20
19
  this.config = config;
21
20
  this.duplicateDetectors = new Map();
22
- this.server = new StreamNodeServer_1.StreamNodeServer({
21
+ this.deliveryRpcLocal = new DeliveryRpcLocal_1.DeliveryRpcLocal({
23
22
  ownPeerDescriptor: this.config.ownPeerDescriptor,
24
- randomGraphId: this.config.randomGraphId,
23
+ streamPartId: this.config.streamPartId,
25
24
  rpcCommunicator: this.config.rpcCommunicator,
26
25
  markAndCheckDuplicate: (msg, prev) => (0, utils_2.markAndCheckDuplicate)(this.duplicateDetectors, msg, prev),
27
26
  broadcast: (message, previousNode) => this.broadcast(message, previousNode),
@@ -29,15 +28,15 @@ class RandomGraphNode extends eventemitter3_1.EventEmitter {
29
28
  const contact = this.config.nearbyNodeView.get(senderId)
30
29
  || this.config.randomNodeView.get(senderId)
31
30
  || this.config.targetNeighbors.get(senderId)
32
- || this.config.proxyConnectionServer?.getConnection(senderId)?.remote;
31
+ || this.config.proxyConnectionRpcLocal?.getConnection(senderId)?.remote;
33
32
  // TODO: check integrity of notifier?
34
33
  if (contact) {
35
34
  this.config.layer1.removeContact(contact.getPeerDescriptor(), true);
36
35
  this.config.targetNeighbors.remove(contact.getPeerDescriptor());
37
36
  this.config.nearbyNodeView.remove(contact.getPeerDescriptor());
38
- this.config.connectionLocker.unlockConnection(contact.getPeerDescriptor(), this.config.randomGraphId);
37
+ this.config.connectionLocker.unlockConnection(contact.getPeerDescriptor(), this.config.streamPartId);
39
38
  this.config.neighborFinder.start([senderId]);
40
- this.config.proxyConnectionServer?.removeConnection(senderId);
39
+ this.config.proxyConnectionRpcLocal?.removeConnection(senderId);
41
40
  }
42
41
  },
43
42
  markForInspection: (senderId, messageId) => this.config.inspector.markMessage(senderId, messageId)
@@ -46,33 +45,33 @@ class RandomGraphNode extends eventemitter3_1.EventEmitter {
46
45
  async start() {
47
46
  this.started = true;
48
47
  this.registerDefaultServerMethods();
49
- (0, utils_1.addManagedEventListener)(this.config.layer1, 'newContact', (peerDescriptor, closestPeers) => this.newContact(peerDescriptor, closestPeers), this.abortController.signal);
50
- (0, utils_1.addManagedEventListener)(this.config.layer1, 'contactRemoved', (peerDescriptor, closestPeers) => this.removedContact(peerDescriptor, closestPeers), this.abortController.signal);
51
- (0, utils_1.addManagedEventListener)(this.config.layer1, 'newRandomContact', (peerDescriptor, randomPeers) => this.newRandomContact(peerDescriptor, randomPeers), this.abortController.signal);
52
- (0, utils_1.addManagedEventListener)(this.config.layer1, 'randomContactRemoved', (peerDescriptor, randomPeers) => this.removedRandomContact(peerDescriptor, randomPeers), this.abortController.signal);
48
+ (0, utils_1.addManagedEventListener)(this.config.layer1, 'newContact', (_peerDescriptor, closestPeers) => this.newContact(closestPeers), this.abortController.signal);
49
+ (0, utils_1.addManagedEventListener)(this.config.layer1, 'contactRemoved', (_peerDescriptor, closestPeers) => this.removedContact(closestPeers), this.abortController.signal);
50
+ (0, utils_1.addManagedEventListener)(this.config.layer1, 'newRandomContact', (_peerDescriptor, randomPeers) => this.newRandomContact(randomPeers), this.abortController.signal);
51
+ (0, utils_1.addManagedEventListener)(this.config.layer1, 'randomContactRemoved', (_peerDescriptor, randomPeers) => this.removedRandomContact(randomPeers), this.abortController.signal);
53
52
  (0, utils_1.addManagedEventListener)(this.config.P2PTransport, 'disconnected', (peerDescriptor) => this.onNodeDisconnected(peerDescriptor), this.abortController.signal);
54
53
  (0, utils_1.addManagedEventListener)(this.config.targetNeighbors, 'nodeAdded', (id, _remote) => {
55
54
  this.config.propagation.onNeighborJoined(id);
56
55
  this.emit('targetNeighborConnected', id);
57
56
  }, this.abortController.signal);
58
- if (this.config.proxyConnectionServer !== undefined) {
59
- (0, utils_1.addManagedEventListener)(this.config.proxyConnectionServer, 'newConnection', (id) => this.config.propagation.onNeighborJoined(id), this.abortController.signal);
57
+ if (this.config.proxyConnectionRpcLocal !== undefined) {
58
+ (0, utils_1.addManagedEventListener)(this.config.proxyConnectionRpcLocal, 'newConnection', (id) => this.config.propagation.onNeighborJoined(id), this.abortController.signal);
60
59
  }
61
60
  const candidates = this.getNeighborCandidatesFromLayer1();
62
61
  if (candidates.length > 0) {
63
- this.newContact(candidates[0], candidates);
62
+ this.newContact(candidates);
64
63
  }
65
64
  this.config.neighborFinder.start();
66
65
  await this.config.neighborUpdateManager.start();
67
66
  }
68
67
  registerDefaultServerMethods() {
69
- this.config.rpcCommunicator.registerRpcNotification(NetworkRpc_1.StreamMessage, 'sendStreamMessage', (msg, context) => this.server.sendStreamMessage(msg, context));
70
- this.config.rpcCommunicator.registerRpcNotification(NetworkRpc_1.LeaveStreamPartNotice, 'leaveStreamPartNotice', (req, context) => this.server.leaveStreamPartNotice(req, context));
71
- this.config.rpcCommunicator.registerRpcMethod(NetworkRpc_1.TemporaryConnectionRequest, NetworkRpc_1.TemporaryConnectionResponse, 'openConnection', (req, context) => this.config.temporaryConnectionServer.openConnection(req, context));
68
+ this.config.rpcCommunicator.registerRpcNotification(NetworkRpc_1.StreamMessage, 'sendStreamMessage', (msg, context) => this.deliveryRpcLocal.sendStreamMessage(msg, context));
69
+ this.config.rpcCommunicator.registerRpcNotification(NetworkRpc_1.LeaveStreamPartNotice, 'leaveStreamPartNotice', (req, context) => this.deliveryRpcLocal.leaveStreamPartNotice(req, context));
70
+ this.config.rpcCommunicator.registerRpcMethod(NetworkRpc_1.TemporaryConnectionRequest, NetworkRpc_1.TemporaryConnectionResponse, 'openConnection', (req, context) => this.config.temporaryConnectionRpcLocal.openConnection(req, context));
72
71
  }
73
- newContact(_newContact, closestNodes) {
72
+ newContact(closestNodes) {
74
73
  logger.trace(`New nearby contact found`);
75
- if (this.stopped) {
74
+ if (this.isStopped()) {
76
75
  return;
77
76
  }
78
77
  this.updateNearbyNodeView(closestNodes);
@@ -80,44 +79,44 @@ class RandomGraphNode extends eventemitter3_1.EventEmitter {
80
79
  this.config.neighborFinder.start();
81
80
  }
82
81
  }
83
- removedContact(_removedContact, closestNodes) {
82
+ removedContact(closestNodes) {
84
83
  logger.trace(`Nearby contact removed`);
85
- if (this.stopped) {
84
+ if (this.isStopped()) {
86
85
  return;
87
86
  }
88
87
  this.updateNearbyNodeView(closestNodes);
89
88
  }
90
89
  updateNearbyNodeView(nodes) {
91
- this.config.nearbyNodeView.replaceAll(Array.from(nodes).map((descriptor) => new RemoteRandomGraphNode_1.RemoteRandomGraphNode(this.config.ownPeerDescriptor, descriptor, this.config.randomGraphId, (0, proto_rpc_1.toProtoRpcClient)(new NetworkRpc_client_1.NetworkRpcClient(this.config.rpcCommunicator.getRpcClientTransport())))));
90
+ this.config.nearbyNodeView.replaceAll(Array.from(nodes).map((descriptor) => new DeliveryRpcRemote_1.DeliveryRpcRemote(this.config.ownPeerDescriptor, descriptor, this.config.streamPartId, (0, proto_rpc_1.toProtoRpcClient)(new NetworkRpc_client_1.DeliveryRpcClient(this.config.rpcCommunicator.getRpcClientTransport())))));
92
91
  for (const descriptor of this.config.layer1.getKBucketPeers()) {
93
92
  if (this.config.nearbyNodeView.size() >= this.config.nodeViewSize) {
94
93
  break;
95
94
  }
96
- this.config.nearbyNodeView.add(new RemoteRandomGraphNode_1.RemoteRandomGraphNode(this.config.ownPeerDescriptor, descriptor, this.config.randomGraphId, (0, proto_rpc_1.toProtoRpcClient)(new NetworkRpc_client_1.NetworkRpcClient(this.config.rpcCommunicator.getRpcClientTransport()))));
95
+ this.config.nearbyNodeView.add(new DeliveryRpcRemote_1.DeliveryRpcRemote(this.config.ownPeerDescriptor, descriptor, this.config.streamPartId, (0, proto_rpc_1.toProtoRpcClient)(new NetworkRpc_client_1.DeliveryRpcClient(this.config.rpcCommunicator.getRpcClientTransport()))));
97
96
  }
98
97
  }
99
- newRandomContact(_newDescriptor, randomNodes) {
100
- if (this.stopped) {
98
+ newRandomContact(randomNodes) {
99
+ if (this.isStopped()) {
101
100
  return;
102
101
  }
103
- this.config.randomNodeView.replaceAll(randomNodes.map((descriptor) => new RemoteRandomGraphNode_1.RemoteRandomGraphNode(this.config.ownPeerDescriptor, descriptor, this.config.randomGraphId, (0, proto_rpc_1.toProtoRpcClient)(new NetworkRpc_client_1.NetworkRpcClient(this.config.rpcCommunicator.getRpcClientTransport())))));
102
+ this.config.randomNodeView.replaceAll(randomNodes.map((descriptor) => new DeliveryRpcRemote_1.DeliveryRpcRemote(this.config.ownPeerDescriptor, descriptor, this.config.streamPartId, (0, proto_rpc_1.toProtoRpcClient)(new NetworkRpc_client_1.DeliveryRpcClient(this.config.rpcCommunicator.getRpcClientTransport())))));
104
103
  if (this.config.targetNeighbors.size() < this.config.numOfTargetNeighbors) {
105
104
  this.config.neighborFinder.start();
106
105
  }
107
106
  }
108
- removedRandomContact(_removedDescriptor, randomNodes) {
107
+ removedRandomContact(randomNodes) {
109
108
  logger.trace(`New nearby contact found`);
110
- if (this.stopped) {
109
+ if (this.isStopped()) {
111
110
  return;
112
111
  }
113
- this.config.randomNodeView.replaceAll(randomNodes.map((descriptor) => new RemoteRandomGraphNode_1.RemoteRandomGraphNode(this.config.ownPeerDescriptor, descriptor, this.config.randomGraphId, (0, proto_rpc_1.toProtoRpcClient)(new NetworkRpc_client_1.NetworkRpcClient(this.config.rpcCommunicator.getRpcClientTransport())))));
112
+ this.config.randomNodeView.replaceAll(randomNodes.map((descriptor) => new DeliveryRpcRemote_1.DeliveryRpcRemote(this.config.ownPeerDescriptor, descriptor, this.config.streamPartId, (0, proto_rpc_1.toProtoRpcClient)(new NetworkRpc_client_1.DeliveryRpcClient(this.config.rpcCommunicator.getRpcClientTransport())))));
114
113
  }
115
114
  onNodeDisconnected(peerDescriptor) {
116
115
  if (this.config.targetNeighbors.hasNode(peerDescriptor)) {
117
116
  this.config.targetNeighbors.remove(peerDescriptor);
118
- this.config.connectionLocker.unlockConnection(peerDescriptor, this.config.randomGraphId);
117
+ this.config.connectionLocker.unlockConnection(peerDescriptor, this.config.streamPartId);
119
118
  this.config.neighborFinder.start([(0, identifiers_1.getNodeIdFromPeerDescriptor)(peerDescriptor)]);
120
- this.config.temporaryConnectionServer.removeNode(peerDescriptor);
119
+ this.config.temporaryConnectionRpcLocal.removeNode(peerDescriptor);
121
120
  }
122
121
  }
123
122
  getNeighborCandidatesFromLayer1() {
@@ -131,8 +130,8 @@ class RandomGraphNode extends eventemitter3_1.EventEmitter {
131
130
  return Array.from(uniqueNodes);
132
131
  }
133
132
  hasProxyConnection(nodeId) {
134
- if (this.config.proxyConnectionServer) {
135
- return this.config.proxyConnectionServer.hasConnection(nodeId);
133
+ if (this.config.proxyConnectionRpcLocal) {
134
+ return this.config.proxyConnectionRpcLocal.hasConnection(nodeId);
136
135
  }
137
136
  return false;
138
137
  }
@@ -140,9 +139,8 @@ class RandomGraphNode extends eventemitter3_1.EventEmitter {
140
139
  if (!this.started) {
141
140
  return;
142
141
  }
143
- this.stopped = true;
144
142
  this.abortController.abort();
145
- this.config.proxyConnectionServer?.stop();
143
+ this.config.proxyConnectionRpcLocal?.stop();
146
144
  this.config.targetNeighbors.getAll().map((remote) => remote.leaveStreamPartNotice());
147
145
  this.config.rpcCommunicator.stop();
148
146
  this.removeAllListeners();
@@ -165,11 +163,11 @@ class RandomGraphNode extends eventemitter3_1.EventEmitter {
165
163
  }
166
164
  getPropagationTargets(msg) {
167
165
  let propagationTargets = this.config.targetNeighbors.getIds();
168
- if (this.config.proxyConnectionServer) {
169
- propagationTargets = propagationTargets.concat(this.config.proxyConnectionServer.getPropagationTargets(msg));
166
+ if (this.config.proxyConnectionRpcLocal) {
167
+ propagationTargets = propagationTargets.concat(this.config.proxyConnectionRpcLocal.getPropagationTargets(msg));
170
168
  }
171
169
  propagationTargets = propagationTargets.filter((target) => !this.config.inspector.isInspected(target));
172
- propagationTargets = propagationTargets.concat(this.config.temporaryConnectionServer.getNodes().getIds());
170
+ propagationTargets = propagationTargets.concat(this.config.temporaryConnectionRpcLocal.getNodes().getIds());
173
171
  return propagationTargets;
174
172
  }
175
173
  getOwnNodeId() {
@@ -179,7 +177,7 @@ class RandomGraphNode extends eventemitter3_1.EventEmitter {
179
177
  return this.config.handshaker.getOngoingHandshakes().size;
180
178
  }
181
179
  getTargetNeighborIds() {
182
- if (!this.started && this.stopped) {
180
+ if (!this.started && this.isStopped()) {
183
181
  return [];
184
182
  }
185
183
  return this.config.targetNeighbors.getIds();
@@ -187,6 +185,9 @@ class RandomGraphNode extends eventemitter3_1.EventEmitter {
187
185
  getNearbyNodeView() {
188
186
  return this.config.nearbyNodeView;
189
187
  }
188
+ isStopped() {
189
+ return this.abortController.signal.aborted;
190
+ }
190
191
  }
191
192
  exports.RandomGraphNode = RandomGraphNode;
192
193
  //# sourceMappingURL=RandomGraphNode.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"RandomGraphNode.js","sourceRoot":"","sources":["../../../src/logic/RandomGraphNode.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"RandomGraphNode.js","sourceRoot":"","sources":["../../../src/logic/RandomGraphNode.ts"],"names":[],"mappings":"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"}
@@ -7,8 +7,8 @@ import { ProxyDirection, StreamMessage } from '../proto/packages/trackerless-net
7
7
  import { ILayer0 } from './ILayer0';
8
8
  import { ILayer1 } from './ILayer1';
9
9
  import { RandomGraphNode } from './RandomGraphNode';
10
- import { StreamPartEntryPointDiscovery } from './StreamPartEntryPointDiscovery';
11
- import { ProxyStreamConnectionClient } from './proxy/ProxyStreamConnectionClient';
10
+ import { EntryPointDiscovery } from './EntryPointDiscovery';
11
+ import { ProxyClient } from './proxy/ProxyClient';
12
12
  export type StreamPartDelivery = {
13
13
  broadcast: (msg: StreamMessage) => void;
14
14
  stop: () => void;
@@ -16,10 +16,10 @@ export type StreamPartDelivery = {
16
16
  proxied: false;
17
17
  layer1: ILayer1;
18
18
  node: RandomGraphNode;
19
- entryPointDiscovery: StreamPartEntryPointDiscovery;
19
+ entryPointDiscovery: EntryPointDiscovery;
20
20
  } | {
21
21
  proxied: true;
22
- client: ProxyStreamConnectionClient;
22
+ client: ProxyClient;
23
23
  });
24
24
  export interface Events {
25
25
  newMessage: (msg: StreamMessage) => void;
@@ -28,8 +28,6 @@ export interface StreamrNodeConfig {
28
28
  metricsContext?: MetricsContext;
29
29
  streamPartitionNumOfNeighbors?: number;
30
30
  streamPartitionMinPropagationTargets?: number;
31
- nodeName?: string;
32
- firstConnectionTimeout?: number;
33
31
  acceptProxyConnections?: boolean;
34
32
  }
35
33
  export declare class StreamrNode extends EventEmitter<Events> {
@@ -38,7 +36,7 @@ export declare class StreamrNode extends EventEmitter<Events> {
38
36
  private layer0?;
39
37
  private readonly metricsContext;
40
38
  private readonly metrics;
41
- config: StreamrNodeConfig;
39
+ private readonly config;
42
40
  private readonly streamParts;
43
41
  private readonly knownStreamPartEntryPoints;
44
42
  private started;
@@ -53,13 +51,12 @@ export declare class StreamrNode extends EventEmitter<Events> {
53
51
  private createLayer1Node;
54
52
  private createRandomGraphNode;
55
53
  setProxies(streamPartId: StreamPartID, nodes: PeerDescriptor[], direction: ProxyDirection, userId: EthereumAddress, connectionCount?: number): Promise<void>;
56
- private createProxyStream;
57
- private createProxyStreamConnectionClient;
54
+ private createProxyClient;
58
55
  inspect(peerDescriptor: PeerDescriptor, streamPartId: StreamPartID): Promise<boolean>;
59
56
  setStreamPartEntryPoints(streamPartId: StreamPartID, entryPoints: PeerDescriptor[]): void;
60
- isProxiedStreamPart(streamId: string, direction?: ProxyDirection): boolean;
61
- getStream(streamPartId: StreamPartID): StreamPartDelivery | undefined;
62
- hasStream(streamPartId: StreamPartID): boolean;
57
+ isProxiedStreamPart(streamPartId: StreamPartID, direction?: ProxyDirection): boolean;
58
+ getStreamPartDelivery(streamPartId: StreamPartID): StreamPartDelivery | undefined;
59
+ hasStreamPart(streamPartId: StreamPartID): boolean;
63
60
  getPeerDescriptor(): PeerDescriptor;
64
61
  getNodeId(): NodeID;
65
62
  getNeighbors(streamPartId: StreamPartID): NodeID[];
@@ -7,9 +7,9 @@ const utils_1 = require("@streamr/utils");
7
7
  const eventemitter3_1 = require("eventemitter3");
8
8
  const lodash_1 = require("lodash");
9
9
  const identifiers_1 = require("../identifiers");
10
- const StreamPartEntryPointDiscovery_1 = require("./StreamPartEntryPointDiscovery");
10
+ const EntryPointDiscovery_1 = require("./EntryPointDiscovery");
11
11
  const createRandomGraphNode_1 = require("./createRandomGraphNode");
12
- const ProxyStreamConnectionClient_1 = require("./proxy/ProxyStreamConnectionClient");
12
+ const ProxyClient_1 = require("./proxy/ProxyClient");
13
13
  const logger = new utils_1.Logger(module);
14
14
  let cleanUp = async () => { };
15
15
  // TODO rename class?
@@ -21,26 +21,24 @@ class StreamrNode extends eventemitter3_1.EventEmitter {
21
21
  this.destroyed = false;
22
22
  this.createLayer1Node = (streamPartId, entryPoints) => {
23
23
  return new dht_1.DhtNode({
24
- transportLayer: this.layer0,
24
+ transport: this.layer0,
25
25
  serviceId: 'layer1::' + streamPartId,
26
26
  peerDescriptor: this.layer0.getPeerDescriptor(),
27
27
  entryPoints,
28
28
  numberOfNodesPerKBucket: 4,
29
29
  rpcRequestTimeout: 5000,
30
- dhtJoinTimeout: 20000,
31
- nodeName: this.config.nodeName + ':layer1'
30
+ dhtJoinTimeout: 20000
32
31
  });
33
32
  };
34
33
  this.createRandomGraphNode = (streamPartId, layer1) => {
35
34
  return (0, createRandomGraphNode_1.createRandomGraphNode)({
36
- randomGraphId: streamPartId,
35
+ streamPartId,
37
36
  P2PTransport: this.P2PTransport,
38
37
  layer1,
39
38
  connectionLocker: this.connectionLocker,
40
39
  ownPeerDescriptor: this.layer0.getPeerDescriptor(),
41
40
  minPropagationTargets: this.config.streamPartitionMinPropagationTargets,
42
41
  numOfTargetNeighbors: this.config.streamPartitionNumOfNeighbors,
43
- name: this.config.nodeName,
44
42
  acceptProxyConnections: this.config.acceptProxyConnections
45
43
  });
46
44
  };
@@ -70,7 +68,7 @@ class StreamrNode extends eventemitter3_1.EventEmitter {
70
68
  }
71
69
  logger.trace('Destroying StreamrNode...');
72
70
  this.destroyed = true;
73
- this.streamParts.forEach((stream) => stream.stop());
71
+ this.streamParts.forEach((streamPart) => streamPart.stop());
74
72
  this.streamParts.clear();
75
73
  this.removeAllListeners();
76
74
  await this.layer0.stop();
@@ -87,26 +85,25 @@ class StreamrNode extends eventemitter3_1.EventEmitter {
87
85
  this.metrics.broadcastBytesPerSecond.record(msg.content.length);
88
86
  }
89
87
  leaveStreamPart(streamPartId) {
90
- const stream = this.streamParts.get(streamPartId);
91
- if (stream) {
92
- stream.stop();
88
+ const streamPart = this.streamParts.get(streamPartId);
89
+ if (streamPart) {
90
+ streamPart.stop();
93
91
  this.streamParts.delete(streamPartId);
94
92
  }
95
93
  }
96
94
  joinStreamPart(streamPartId) {
97
95
  logger.debug(`Join stream part ${streamPartId}`);
98
- let stream = this.streamParts.get(streamPartId);
99
- if (stream !== undefined) {
96
+ let streamPart = this.streamParts.get(streamPartId);
97
+ if (streamPart !== undefined) {
100
98
  return;
101
99
  }
102
100
  const layer1 = this.createLayer1Node(streamPartId, this.knownStreamPartEntryPoints.get(streamPartId) ?? []);
103
101
  const node = this.createRandomGraphNode(streamPartId, layer1);
104
- const entryPointDiscovery = new StreamPartEntryPointDiscovery_1.StreamPartEntryPointDiscovery({
102
+ const entryPointDiscovery = new EntryPointDiscovery_1.EntryPointDiscovery({
105
103
  streamPartId,
106
104
  ownPeerDescriptor: this.getPeerDescriptor(),
107
105
  layer1,
108
106
  getEntryPointData: (key) => this.layer0.getDataFromDht(key),
109
- getEntryPointDataViaNode: (key, node) => this.layer0.findDataViaPeer(key, node),
110
107
  storeEntryPointData: (key, data) => this.layer0.storeDataToDht(key, data),
111
108
  deleteEntryPointData: async (key) => {
112
109
  if (this.destroyed) {
@@ -115,7 +112,7 @@ class StreamrNode extends eventemitter3_1.EventEmitter {
115
112
  return this.layer0.deleteDataFromDht(key);
116
113
  }
117
114
  });
118
- stream = {
115
+ streamPart = {
119
116
  proxied: false,
120
117
  layer1,
121
118
  node,
@@ -127,7 +124,7 @@ class StreamrNode extends eventemitter3_1.EventEmitter {
127
124
  layer1.stop();
128
125
  }
129
126
  };
130
- this.streamParts.set(streamPartId, stream);
127
+ this.streamParts.set(streamPartId, streamPart);
131
128
  node.on('message', (message) => {
132
129
  this.emit('newMessage', message);
133
130
  });
@@ -136,24 +133,23 @@ class StreamrNode extends eventemitter3_1.EventEmitter {
136
133
  await this.startLayersAndJoinDht(streamPartId, entryPointDiscovery);
137
134
  }
138
135
  catch (err) {
139
- logger.warn(`Failed to join to stream ${streamPartId} with error: ${err}`);
136
+ logger.warn(`Failed to join to stream part ${streamPartId} with error: ${err}`);
140
137
  }
141
138
  });
142
139
  }
143
140
  async startLayersAndJoinDht(streamPartId, entryPointDiscovery) {
144
141
  logger.debug(`Start layers and join DHT for stream part ${streamPartId}`);
145
- const stream = this.streamParts.get(streamPartId);
146
- if ((stream === undefined) || stream.proxied) {
147
- // leaveStream has been called (or leaveStream called, and then setProxies called)
142
+ const streamPart = this.streamParts.get(streamPartId);
143
+ if ((streamPart === undefined) || streamPart.proxied) {
144
+ // leaveStreamPart has been called (or leaveStreamPart called, and then setProxies called)
148
145
  return;
149
146
  }
150
- await stream.layer1.start();
151
- await stream.node.start();
147
+ await streamPart.layer1.start();
148
+ await streamPart.node.start();
152
149
  let entryPoints = this.knownStreamPartEntryPoints.get(streamPartId) ?? [];
153
- const forwardingNode = this.layer0.isJoinOngoing() ? this.layer0.getKnownEntryPoints()[0] : undefined;
154
- const discoveryResult = await entryPointDiscovery.discoverEntryPointsFromDht(entryPoints.length, forwardingNode);
150
+ const discoveryResult = await entryPointDiscovery.discoverEntryPointsFromDht(entryPoints.length);
155
151
  entryPoints = entryPoints.concat(discoveryResult.discoveredEntryPoints);
156
- await stream.layer1.joinDht((0, lodash_1.sampleSize)(entryPoints, StreamPartEntryPointDiscovery_1.NETWORK_SPLIT_AVOIDANCE_LIMIT));
152
+ await streamPart.layer1.joinDht((0, lodash_1.sampleSize)(entryPoints, EntryPointDiscovery_1.NETWORK_SPLIT_AVOIDANCE_LIMIT));
157
153
  if (discoveryResult.entryPointsFromDht) {
158
154
  await entryPointDiscovery.storeSelfAsEntryPointIfNecessary(entryPoints.length);
159
155
  }
@@ -164,78 +160,72 @@ class StreamrNode extends eventemitter3_1.EventEmitter {
164
160
  }
165
161
  const enable = (nodes.length > 0) && ((connectionCount === undefined) || (connectionCount > 0));
166
162
  if (enable) {
167
- let proxyClient;
163
+ let client;
168
164
  const alreadyProxied = this.isProxiedStreamPart(streamPartId);
169
165
  if (alreadyProxied) {
170
- proxyClient = this.streamParts.get(streamPartId).client;
166
+ client = this.streamParts.get(streamPartId).client;
171
167
  }
172
168
  else {
173
- proxyClient = this.createProxyStream(streamPartId, userId);
174
- await proxyClient.start();
169
+ client = this.createProxyClient(streamPartId);
170
+ this.streamParts.set(streamPartId, {
171
+ proxied: true,
172
+ client,
173
+ broadcast: (msg) => client.broadcast(msg),
174
+ stop: () => client.stop()
175
+ });
176
+ client.on('message', (message) => {
177
+ this.emit('newMessage', message);
178
+ });
179
+ await client.start();
175
180
  }
176
- await proxyClient.setProxies(streamPartId, nodes, direction, userId, connectionCount);
181
+ await client.setProxies(nodes, direction, userId, connectionCount);
177
182
  }
178
183
  else {
179
184
  this.streamParts.get(streamPartId)?.stop();
180
185
  this.streamParts.delete(streamPartId);
181
186
  }
182
187
  }
183
- createProxyStream(streamPartId, userId) {
184
- const client = this.createProxyStreamConnectionClient(streamPartId, userId);
185
- this.streamParts.set(streamPartId, {
186
- proxied: true,
187
- client,
188
- broadcast: (msg) => client.broadcast(msg),
189
- stop: () => client.stop()
190
- });
191
- client.on('message', (message) => {
192
- this.emit('newMessage', message);
193
- });
194
- return client;
195
- }
196
- createProxyStreamConnectionClient(streamPartId, userId) {
197
- return new ProxyStreamConnectionClient_1.ProxyStreamConnectionClient({
188
+ createProxyClient(streamPartId) {
189
+ return new ProxyClient_1.ProxyClient({
198
190
  P2PTransport: this.P2PTransport,
199
191
  ownPeerDescriptor: this.layer0.getPeerDescriptor(),
200
192
  streamPartId,
201
193
  connectionLocker: this.connectionLocker,
202
- minPropagationTargets: this.config.streamPartitionMinPropagationTargets,
203
- nodeName: this.config.nodeName,
204
- userId
194
+ minPropagationTargets: this.config.streamPartitionMinPropagationTargets
205
195
  });
206
196
  }
207
197
  async inspect(peerDescriptor, streamPartId) {
208
- const stream = this.streamParts.get(streamPartId);
209
- if ((stream !== undefined) && !stream.proxied) {
210
- return stream.node.inspect(peerDescriptor);
198
+ const streamPart = this.streamParts.get(streamPartId);
199
+ if ((streamPart !== undefined) && !streamPart.proxied) {
200
+ return streamPart.node.inspect(peerDescriptor);
211
201
  }
212
202
  return false;
213
203
  }
214
204
  setStreamPartEntryPoints(streamPartId, entryPoints) {
215
205
  this.knownStreamPartEntryPoints.set(streamPartId, entryPoints);
216
206
  }
217
- isProxiedStreamPart(streamId, direction) {
218
- const stream = this.streamParts.get(streamId);
219
- return (stream !== undefined)
220
- && stream.proxied
221
- && ((direction === undefined) || (stream.client.getDirection() === direction));
207
+ isProxiedStreamPart(streamPartId, direction) {
208
+ const streamPart = this.streamParts.get(streamPartId);
209
+ return (streamPart !== undefined)
210
+ && streamPart.proxied
211
+ && ((direction === undefined) || (streamPart.client.getDirection() === direction));
222
212
  }
223
- getStream(streamPartId) {
213
+ getStreamPartDelivery(streamPartId) {
224
214
  return this.streamParts.get(streamPartId);
225
215
  }
226
- hasStream(streamPartId) {
216
+ hasStreamPart(streamPartId) {
227
217
  return this.streamParts.has(streamPartId);
228
218
  }
229
219
  getPeerDescriptor() {
230
220
  return this.layer0.getPeerDescriptor();
231
221
  }
232
222
  getNodeId() {
233
- return this.layer0.getNodeId().toKey();
223
+ return (0, identifiers_1.getNodeIdFromPeerDescriptor)(this.layer0.getPeerDescriptor());
234
224
  }
235
225
  getNeighbors(streamPartId) {
236
- const stream = this.streamParts.get(streamPartId);
237
- return (stream !== undefined) && (stream.proxied === false)
238
- ? stream.node.getTargetNeighborIds()
226
+ const streamPart = this.streamParts.get(streamPartId);
227
+ return (streamPart !== undefined) && (streamPart.proxied === false)
228
+ ? streamPart.node.getTargetNeighborIds()
239
229
  : [];
240
230
  }
241
231
  getStreamParts() {
@@ -1 +1 @@
1
- {"version":3,"file":"StreamrNode.js","sourceRoot":"","sources":["../../../src/logic/StreamrNode.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"StreamrNode.js","sourceRoot":"","sources":["../../../src/logic/StreamrNode.ts"],"names":[],"mappings":";;;AAAA,sCAKqB;AACrB,gDAA6F;AAC7F,0CAOuB;AACvB,iDAA4C;AAC5C,mCAAmC;AACnC,gDAAoE;AAKpE,+DAA0F;AAC1F,mEAA+D;AAC/D,qDAAiD;AAmBjD,MAAM,MAAM,GAAG,IAAI,cAAM,CAAC,MAAM,CAAC,CAAA;AAEjC,IAAI,OAAO,GAAwB,KAAK,IAAI,EAAE,GAAG,CAAC,CAAA;AAclD,qBAAqB;AACrB,MAAa,WAAY,SAAQ,4BAAoB;IAYjD,YAAY,MAAyB;QACjC,KAAK,EAAE,CAAA;QALM,+BAA0B,GAAwC,IAAI,GAAG,EAAE,CAAA;QACpF,YAAO,GAAG,KAAK,CAAA;QACf,cAAS,GAAG,KAAK,CAAA;QA4HjB,qBAAgB,GAAG,CAAC,YAA0B,EAAE,WAA6B,EAAW,EAAE;YAC9F,OAAO,IAAI,aAAO,CAAC;gBACf,SAAS,EAAE,IAAI,CAAC,MAAO;gBACvB,SAAS,EAAE,UAAU,GAAG,YAAY;gBACpC,cAAc,EAAE,IAAI,CAAC,MAAO,CAAC,iBAAiB,EAAE;gBAChD,WAAW;gBACX,uBAAuB,EAAE,CAAC;gBAC1B,iBAAiB,EAAE,IAAI;gBACvB,cAAc,EAAE,KAAK;aACxB,CAAC,CAAA;QACN,CAAC,CAAA;QAEO,0BAAqB,GAAG,CAAC,YAA0B,EAAE,MAAe,EAAE,EAAE;YAC5E,OAAO,IAAA,6CAAqB,EAAC;gBACzB,YAAY;gBACZ,YAAY,EAAE,IAAI,CAAC,YAAa;gBAChC,MAAM;gBACN,gBAAgB,EAAE,IAAI,CAAC,gBAAiB;gBACxC,iBAAiB,EAAE,IAAI,CAAC,MAAO,CAAC,iBAAiB,EAAE;gBACnD,qBAAqB,EAAE,IAAI,CAAC,MAAM,CAAC,oCAAoC;gBACvE,oBAAoB,EAAE,IAAI,CAAC,MAAM,CAAC,6BAA6B;gBAC/D,sBAAsB,EAAE,IAAI,CAAC,MAAM,CAAC,sBAAsB;aAC7D,CAAC,CAAA;QACN,CAAC,CAAA;QA/IG,IAAI,CAAC,MAAM,GAAG,MAAM,CAAA;QACpB,IAAI,CAAC,WAAW,GAAG,IAAI,GAAG,EAAE,CAAA;QAC5B,IAAI,CAAC,cAAc,GAAG,MAAM,CAAC,cAAc,IAAI,IAAI,sBAAc,EAAE,CAAA;QACnE,IAAI,CAAC,OAAO,GAAG;YACX,0BAA0B,EAAE,IAAI,kBAAU,EAAE;YAC5C,uBAAuB,EAAE,IAAI,kBAAU,EAAE;SAC5C,CAAA;QACD,IAAI,CAAC,cAAc,CAAC,UAAU,CAAC,MAAM,EAAE,IAAI,CAAC,OAAO,CAAC,CAAA;IACxD,CAAC;IAED,KAAK,CAAC,KAAK,CAAC,sBAA+B,EAAE,SAAqB,EAAE,gBAAkC;QAClG,IAAI,IAAI,CAAC,OAAO,IAAI,IAAI,CAAC,SAAS,EAAE;YAChC,OAAM;SACT;QACD,MAAM,CAAC,IAAI,CAAC,oCAAoC,IAAA,yCAA2B,EAAC,sBAAsB,CAAC,iBAAiB,EAAE,CAAC,EAAE,CAAC,CAAA;QAC1H,IAAI,CAAC,OAAO,GAAG,IAAI,CAAA;QACnB,IAAI,CAAC,MAAM,GAAG,sBAAsB,CAAA;QACpC,IAAI,CAAC,YAAY,GAAG,SAAS,CAAA;QAC7B,IAAI,CAAC,gBAAgB,GAAG,gBAAgB,CAAA;QACxC,OAAO,GAAG,GAAG,EAAE,CAAC,IAAI,CAAC,OAAO,EAAE,CAAA;IAClC,CAAC;IAED,KAAK,CAAC,OAAO;QACT,IAAI,CAAC,IAAI,CAAC,OAAO,IAAI,IAAI,CAAC,SAAS,EAAE;YACjC,OAAM;SACT;QACD,MAAM,CAAC,KAAK,CAAC,2BAA2B,CAAC,CAAA;QACzC,IAAI,CAAC,SAAS,GAAG,IAAI,CAAA;QACrB,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC,UAAU,EAAE,EAAE,CAAC,UAAU,CAAC,IAAI,EAAE,CAAC,CAAA;QAC3D,IAAI,CAAC,WAAW,CAAC,KAAK,EAAE,CAAA;QACxB,IAAI,CAAC,kBAAkB,EAAE,CAAA;QACzB,MAAM,IAAI,CAAC,MAAO,CAAC,IAAI,EAAE,CAAA;QACzB,MAAM,IAAI,CAAC,YAAa,CAAC,IAAI,EAAE,CAAA;QAC/B,IAAI,CAAC,MAAM,GAAG,SAAS,CAAA;QACvB,IAAI,CAAC,YAAY,GAAG,SAAS,CAAA;QAC7B,IAAI,CAAC,gBAAgB,GAAG,SAAS,CAAA;IACrC,CAAC;IAED,SAAS,CAAC,GAAkB;QACxB,MAAM,YAAY,GAAG,IAAA,yBAAc,EAAC,GAAG,CAAC,SAAU,CAAC,QAAoB,EAAE,GAAG,CAAC,SAAU,CAAC,eAAe,CAAC,CAAA;QACxG,IAAI,CAAC,cAAc,CAAC,YAAY,CAAC,CAAA;QACjC,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,YAAY,CAAE,CAAC,SAAS,CAAC,GAAG,CAAC,CAAA;QAClD,IAAI,CAAC,OAAO,CAAC,0BAA0B,CAAC,MAAM,CAAC,CAAC,CAAC,CAAA;QACjD,IAAI,CAAC,OAAO,CAAC,uBAAuB,CAAC,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC,CAAA;IACnE,CAAC;IAED,eAAe,CAAC,YAA0B;QACtC,MAAM,UAAU,GAAG,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,YAAY,CAAC,CAAA;QACrD,IAAI,UAAU,EAAE;YACZ,UAAU,CAAC,IAAI,EAAE,CAAA;YACjB,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,YAAY,CAAC,CAAA;SACxC;IACL,CAAC;IAED,cAAc,CAAC,YAA0B;QACrC,MAAM,CAAC,KAAK,CAAC,oBAAoB,YAAY,EAAE,CAAC,CAAA;QAChD,IAAI,UAAU,GAAG,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,YAAY,CAAC,CAAA;QACnD,IAAI,UAAU,KAAK,SAAS,EAAE;YAC1B,OAAM;SACT;QACD,MAAM,MAAM,GAAG,IAAI,CAAC,gBAAgB,CAAC,YAAY,EAAE,IAAI,CAAC,0BAA0B,CAAC,GAAG,CAAC,YAAY,CAAC,IAAI,EAAE,CAAC,CAAA;QAC3G,MAAM,IAAI,GAAG,IAAI,CAAC,qBAAqB,CAAC,YAAY,EAAE,MAAM,CAAC,CAAA;QAC7D,MAAM,mBAAmB,GAAG,IAAI,yCAAmB,CAAC;YAChD,YAAY;YACZ,iBAAiB,EAAE,IAAI,CAAC,iBAAiB,EAAE;YAC3C,MAAM;YACN,iBAAiB,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,IAAI,CAAC,MAAO,CAAC,cAAc,CAAC,GAAG,CAAC;YAC5D,mBAAmB,EAAE,CAAC,GAAG,EAAE,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,MAAO,CAAC,cAAc,CAAC,GAAG,EAAE,IAAI,CAAC;YAC1E,oBAAoB,EAAE,KAAK,EAAE,GAAG,EAAE,EAAE;gBAChC,IAAI,IAAI,CAAC,SAAS,EAAE;oBAChB,OAAM;iBACT;gBACD,OAAO,IAAI,CAAC,MAAO,CAAC,iBAAiB,CAAC,GAAG,CAAC,CAAA;YAC9C,CAAC;SACJ,CAAC,CAAA;QACF,UAAU,GAAG;YACT,OAAO,EAAE,KAAK;YACd,MAAM;YACN,IAAI;YACJ,mBAAmB;YACnB,SAAS,EAAE,CAAC,GAAkB,EAAE,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC;YACtD,IAAI,EAAE,GAAG,EAAE;gBACP,mBAAmB,CAAC,OAAO,EAAE,CAAA;gBAC7B,IAAI,CAAC,IAAI,EAAE,CAAA;gBACX,MAAM,CAAC,IAAI,EAAE,CAAA;YACjB,CAAC;SACJ,CAAA;QACD,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,YAAY,EAAE,UAAU,CAAC,CAAA;QAC9C,IAAI,CAAC,EAAE,CAAC,SAAS,EAAE,CAAC,OAAsB,EAAE,EAAE;YAC1C,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,OAAO,CAAC,CAAA;QACpC,CAAC,CAAC,CAAA;QACF,YAAY,CAAC,KAAK,IAAI,EAAE;YACpB,IAAI;gBACA,MAAM,IAAI,CAAC,qBAAqB,CAAC,YAAY,EAAE,mBAAmB,CAAC,CAAA;aACtE;YAAC,OAAO,GAAG,EAAE;gBACV,MAAM,CAAC,IAAI,CAAC,iCAAiC,YAAY,gBAAgB,GAAG,EAAE,CAAC,CAAA;aAClF;QACL,CAAC,CAAC,CAAA;IACN,CAAC;IAEO,KAAK,CAAC,qBAAqB,CAAC,YAA0B,EAAE,mBAAwC;QACpG,MAAM,CAAC,KAAK,CAAC,6CAA6C,YAAY,EAAE,CAAC,CAAA;QACzE,MAAM,UAAU,GAAG,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,YAAY,CAAC,CAAA;QACrD,IAAI,CAAC,UAAU,KAAK,SAAS,CAAC,IAAI,UAAU,CAAC,OAAO,EAAE;YAClD,0FAA0F;YAC1F,OAAM;SACT;QACD,MAAM,UAAU,CAAC,MAAM,CAAC,KAAK,EAAE,CAAA;QAC/B,MAAM,UAAU,CAAC,IAAI,CAAC,KAAK,EAAE,CAAA;QAC7B,IAAI,WAAW,GAAG,IAAI,CAAC,0BAA0B,CAAC,GAAG,CAAC,YAAY,CAAC,IAAI,EAAE,CAAA;QACzE,MAAM,eAAe,GAAG,MAAM,mBAAmB,CAAC,0BAA0B,CACxE,WAAW,CAAC,MAAM,CACrB,CAAA;QACD,WAAW,GAAG,WAAW,CAAC,MAAM,CAAC,eAAe,CAAC,qBAAqB,CAAC,CAAA;QACvE,MAAM,UAAU,CAAC,MAAM,CAAC,OAAO,CAAC,IAAA,mBAAU,EAAC,WAAW,EAAE,mDAA6B,CAAC,CAAC,CAAA;QACvF,IAAI,eAAe,CAAC,kBAAkB,EAAE;YACpC,MAAM,mBAAmB,CAAC,gCAAgC,CAAC,WAAW,CAAC,MAAM,CAAC,CAAA;SACjF;IACL,CAAC;IA2BD,KAAK,CAAC,UAAU,CACZ,YAA0B,EAC1B,KAAuB,EACvB,SAAyB,EACzB,MAAuB,EACvB,eAAwB;QAExB,IAAI,IAAI,CAAC,MAAM,CAAC,sBAAsB,EAAE;YACpC,MAAM,IAAI,KAAK,CAAC,qDAAqD,CAAC,CAAA;SACzE;QACD,MAAM,MAAM,GAAG,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,eAAe,KAAK,SAAS,CAAC,IAAI,CAAC,eAAe,GAAG,CAAC,CAAC,CAAC,CAAA;QAC/F,IAAI,MAAM,EAAE;YACR,IAAI,MAAmB,CAAA;YACvB,MAAM,cAAc,GAAG,IAAI,CAAC,mBAAmB,CAAC,YAAY,CAAC,CAAA;YAC7D,IAAI,cAAc,EAAE;gBAChB,MAAM,GAAI,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,YAAY,CAA8B,CAAC,MAAM,CAAA;aACnF;iBAAM;gBACH,MAAM,GAAG,IAAI,CAAC,iBAAiB,CAAC,YAAY,CAAC,CAAA;gBAC7C,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,YAAY,EAAE;oBAC/B,OAAO,EAAE,IAAI;oBACb,MAAM;oBACN,SAAS,EAAE,CAAC,GAAkB,EAAE,EAAE,CAAC,MAAM,CAAC,SAAS,CAAC,GAAG,CAAC;oBACxD,IAAI,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,IAAI,EAAE;iBAC5B,CAAC,CAAA;gBACF,MAAM,CAAC,EAAE,CAAC,SAAS,EAAE,CAAC,OAAsB,EAAE,EAAE;oBAC5C,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,OAAO,CAAC,CAAA;gBACpC,CAAC,CAAC,CAAA;gBACF,MAAM,MAAM,CAAC,KAAK,EAAE,CAAA;aACvB;YACD,MAAM,MAAM,CAAC,UAAU,CAAC,KAAK,EAAE,SAAS,EAAE,MAAM,EAAE,eAAe,CAAC,CAAA;SACrE;aAAM;YACH,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,YAAY,CAAC,EAAE,IAAI,EAAE,CAAA;YAC1C,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,YAAY,CAAC,CAAA;SACxC;IACL,CAAC;IAEO,iBAAiB,CAAC,YAA0B;QAChD,OAAO,IAAI,yBAAW,CAAC;YACnB,YAAY,EAAE,IAAI,CAAC,YAAa;YAChC,iBAAiB,EAAE,IAAI,CAAC,MAAO,CAAC,iBAAiB,EAAE;YACnD,YAAY;YACZ,gBAAgB,EAAE,IAAI,CAAC,gBAAiB;YACxC,qBAAqB,EAAE,IAAI,CAAC,MAAM,CAAC,oCAAoC;SAC1E,CAAC,CAAA;IACN,CAAC;IAED,KAAK,CAAC,OAAO,CAAC,cAA8B,EAAE,YAA0B;QACpE,MAAM,UAAU,GAAG,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,YAAY,CAAC,CAAA;QACrD,IAAI,CAAC,UAAU,KAAK,SAAS,CAAC,IAAI,CAAC,UAAU,CAAC,OAAO,EAAE;YACnD,OAAO,UAAU,CAAC,IAAI,CAAC,OAAO,CAAC,cAAc,CAAC,CAAA;SACjD;QACD,OAAO,KAAK,CAAA;IAChB,CAAC;IAED,wBAAwB,CAAC,YAA0B,EAAE,WAA6B;QAC9E,IAAI,CAAC,0BAA0B,CAAC,GAAG,CAAC,YAAY,EAAE,WAAW,CAAC,CAAA;IAClE,CAAC;IAED,mBAAmB,CAAC,YAA0B,EAAE,SAA0B;QACtE,MAAM,UAAU,GAAG,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,YAAY,CAAC,CAAA;QACrD,OAAO,CAAC,UAAU,KAAK,SAAS,CAAC;eAC1B,UAAU,CAAC,OAAO;eAClB,CAAC,CAAC,SAAS,KAAK,SAAS,CAAC,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,YAAY,EAAE,KAAK,SAAS,CAAC,CAAC,CAAA;IAC1F,CAAC;IAED,qBAAqB,CAAC,YAA0B;QAC5C,OAAO,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,YAAY,CAAC,CAAA;IAC7C,CAAC;IAED,aAAa,CAAC,YAA0B;QACpC,OAAO,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,YAAY,CAAC,CAAA;IAC7C,CAAC;IAED,iBAAiB;QACb,OAAO,IAAI,CAAC,MAAO,CAAC,iBAAiB,EAAE,CAAA;IAC3C,CAAC;IAED,SAAS;QACL,OAAO,IAAA,yCAA2B,EAAC,IAAI,CAAC,MAAO,CAAC,iBAAiB,EAAE,CAAC,CAAA;IACxE,CAAC;IAED,YAAY,CAAC,YAA0B;QACnC,MAAM,UAAU,GAAG,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,YAAY,CAAC,CAAA;QACrD,OAAO,CAAC,UAAU,KAAK,SAAS,CAAC,IAAI,CAAC,UAAU,CAAC,OAAO,KAAK,KAAK,CAAC;YAC/D,CAAC,CAAC,UAAU,CAAC,IAAI,CAAC,oBAAoB,EAAE;YACxC,CAAC,CAAC,EAAE,CAAA;IACZ,CAAC;IAED,cAAc;QACV,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,4BAAiB,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,CAAA;IACvF,CAAC;CACJ;AA1PD,kCA0PC;AAED,CAAC,MAAM,EAAE,QAAQ,EAAE,SAAS,EAAE,SAAS,EAAE,mBAAmB,EAAE,oBAAoB,EAAE,SAAS,CAAC,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE;IAC5G,OAAO,CAAC,EAAE,CAAC,IAAI,EAAE,KAAK,IAAI,EAAE;QACxB,MAAM,OAAO,EAAE,CAAA;QACf,OAAO,CAAC,IAAI,EAAE,CAAA;IAClB,CAAC,CAAC,CAAA;AACN,CAAC,CAAC,CAAA"}
@@ -1,5 +1,10 @@
1
1
  import { StrictRandomGraphNodeConfig, RandomGraphNode } from './RandomGraphNode';
2
2
  import { MarkOptional } from 'ts-essentials';
3
- type RandomGraphNodeConfig = MarkOptional<StrictRandomGraphNodeConfig, 'nearbyNodeView' | 'randomNodeView' | 'targetNeighbors' | 'propagation' | 'handshaker' | 'neighborFinder' | 'neighborUpdateManager' | 'name' | 'numOfTargetNeighbors' | 'maxNumberOfContacts' | 'minPropagationTargets' | 'rpcCommunicator' | 'nodeViewSize' | 'acceptProxyConnections' | 'neighborUpdateInterval' | 'inspector' | 'temporaryConnectionServer'>;
3
+ type RandomGraphNodeConfig = MarkOptional<StrictRandomGraphNodeConfig, 'nearbyNodeView' | 'randomNodeView' | 'targetNeighbors' | 'propagation' | 'handshaker' | 'neighborFinder' | 'neighborUpdateManager' | 'numOfTargetNeighbors' | 'rpcCommunicator' | 'nodeViewSize' | 'inspector' | 'temporaryConnectionRpcLocal'> & {
4
+ maxNumberOfContacts?: number;
5
+ minPropagationTargets?: number;
6
+ acceptProxyConnections?: boolean;
7
+ neighborUpdateInterval?: number;
8
+ };
4
9
  export declare const createRandomGraphNode: (config: RandomGraphNodeConfig) => RandomGraphNode;
5
10
  export {};