@streamr/dht 100.0.0-testnet-two.0 → 100.0.0-testnet-two.2

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 (189) hide show
  1. package/dist/package.json +66 -0
  2. package/dist/src/connection/ConnectionLockHandler.d.ts +11 -11
  3. package/dist/src/connection/ConnectionLockHandler.js.map +1 -1
  4. package/dist/src/connection/ConnectionLockRpcLocal.d.ts +3 -3
  5. package/dist/src/connection/ConnectionManager.js +3 -3
  6. package/dist/src/connection/ConnectionManager.js.map +1 -1
  7. package/dist/src/connection/Handshaker.d.ts +1 -1
  8. package/dist/src/connection/Handshaker.js +14 -5
  9. package/dist/src/connection/Handshaker.js.map +1 -1
  10. package/dist/src/connection/ManagedConnection.d.ts +3 -3
  11. package/dist/src/connection/ManagedConnection.js +3 -3
  12. package/dist/src/connection/ManagedConnection.js.map +1 -1
  13. package/dist/src/connection/simulator/Simulator.js.map +1 -1
  14. package/dist/src/connection/simulator/SimulatorConnector.js.map +1 -1
  15. package/dist/src/connection/webrtc/WebrtcConnector.js +1 -1
  16. package/dist/src/connection/webrtc/WebrtcConnector.js.map +1 -1
  17. package/dist/src/connection/webrtc/WebrtcConnectorRpcLocal.d.ts +2 -2
  18. package/dist/src/connection/webrtc/WebrtcConnectorRpcLocal.js +11 -3
  19. package/dist/src/connection/webrtc/WebrtcConnectorRpcLocal.js.map +1 -1
  20. package/dist/src/connection/websocket/WebsocketConnector.js +18 -8
  21. package/dist/src/connection/websocket/WebsocketConnector.js.map +1 -1
  22. package/dist/src/dht/DhtNode.d.ts +9 -8
  23. package/dist/src/dht/DhtNode.js +23 -18
  24. package/dist/src/dht/DhtNode.js.map +1 -1
  25. package/dist/src/dht/DhtNodeRpcLocal.d.ts +4 -3
  26. package/dist/src/dht/DhtNodeRpcLocal.js +3 -2
  27. package/dist/src/dht/DhtNodeRpcLocal.js.map +1 -1
  28. package/dist/src/dht/DhtNodeRpcRemote.d.ts +6 -5
  29. package/dist/src/dht/DhtNodeRpcRemote.js +10 -11
  30. package/dist/src/dht/DhtNodeRpcRemote.js.map +1 -1
  31. package/dist/src/dht/ExternalApiRpcLocal.d.ts +3 -3
  32. package/dist/src/dht/ExternalApiRpcLocal.js +3 -2
  33. package/dist/src/dht/ExternalApiRpcLocal.js.map +1 -1
  34. package/dist/src/dht/ExternalApiRpcRemote.d.ts +3 -2
  35. package/dist/src/dht/ExternalApiRpcRemote.js +3 -2
  36. package/dist/src/dht/ExternalApiRpcRemote.js.map +1 -1
  37. package/dist/src/dht/PeerManager.d.ts +9 -9
  38. package/dist/src/dht/PeerManager.js +12 -12
  39. package/dist/src/dht/PeerManager.js.map +1 -1
  40. package/dist/src/dht/contact/Contact.d.ts +2 -2
  41. package/dist/src/dht/contact/ContactList.d.ts +7 -7
  42. package/dist/src/dht/contact/ContactList.js.map +1 -1
  43. package/dist/src/dht/contact/RandomContactList.d.ts +4 -4
  44. package/dist/src/dht/contact/RandomContactList.js +2 -3
  45. package/dist/src/dht/contact/RandomContactList.js.map +1 -1
  46. package/dist/src/dht/contact/RpcRemote.d.ts +1 -4
  47. package/dist/src/dht/contact/RpcRemote.js +1 -5
  48. package/dist/src/dht/contact/RpcRemote.js.map +1 -1
  49. package/dist/src/dht/contact/SortedContactList.d.ts +13 -13
  50. package/dist/src/dht/contact/SortedContactList.js +5 -5
  51. package/dist/src/dht/contact/SortedContactList.js.map +1 -1
  52. package/dist/src/dht/discovery/DiscoverySession.d.ts +3 -2
  53. package/dist/src/dht/discovery/DiscoverySession.js +9 -12
  54. package/dist/src/dht/discovery/DiscoverySession.js.map +1 -1
  55. package/dist/src/dht/discovery/PeerDiscovery.d.ts +3 -1
  56. package/dist/src/dht/discovery/PeerDiscovery.js +16 -9
  57. package/dist/src/dht/discovery/PeerDiscovery.js.map +1 -1
  58. package/dist/src/dht/recursive-operation/RecursiveOperationManager.d.ts +3 -3
  59. package/dist/src/dht/recursive-operation/RecursiveOperationManager.js +12 -11
  60. package/dist/src/dht/recursive-operation/RecursiveOperationManager.js.map +1 -1
  61. package/dist/src/dht/recursive-operation/RecursiveOperationSession.d.ts +2 -1
  62. package/dist/src/dht/recursive-operation/RecursiveOperationSession.js +6 -6
  63. package/dist/src/dht/recursive-operation/RecursiveOperationSession.js.map +1 -1
  64. package/dist/src/dht/routing/Router.d.ts +2 -2
  65. package/dist/src/dht/routing/Router.js +2 -2
  66. package/dist/src/dht/routing/Router.js.map +1 -1
  67. package/dist/src/dht/routing/RouterRpcLocal.js +3 -3
  68. package/dist/src/dht/routing/RouterRpcLocal.js.map +1 -1
  69. package/dist/src/dht/routing/RoutingSession.d.ts +3 -3
  70. package/dist/src/dht/routing/RoutingSession.js +4 -4
  71. package/dist/src/dht/routing/RoutingSession.js.map +1 -1
  72. package/dist/src/dht/store/LocalDataStore.d.ts +6 -8
  73. package/dist/src/dht/store/LocalDataStore.js +18 -24
  74. package/dist/src/dht/store/LocalDataStore.js.map +1 -1
  75. package/dist/src/dht/store/StoreManager.d.ts +3 -3
  76. package/dist/src/dht/store/StoreManager.js +20 -21
  77. package/dist/src/dht/store/StoreManager.js.map +1 -1
  78. package/dist/src/dht/store/StoreRpcLocal.d.ts +2 -1
  79. package/dist/src/dht/store/StoreRpcLocal.js +10 -8
  80. package/dist/src/dht/store/StoreRpcLocal.js.map +1 -1
  81. package/dist/src/exports.d.ts +2 -0
  82. package/dist/src/exports.js +6 -1
  83. package/dist/src/exports.js.map +1 -1
  84. package/dist/src/helpers/AddressTools.js +2 -0
  85. package/dist/src/helpers/AddressTools.js.map +1 -1
  86. package/dist/src/helpers/PeerID.d.ts +2 -2
  87. package/dist/src/helpers/PeerID.js +3 -3
  88. package/dist/src/helpers/PeerID.js.map +1 -1
  89. package/dist/src/helpers/peerIdFromPeerDescriptor.d.ts +2 -2
  90. package/dist/src/helpers/peerIdFromPeerDescriptor.js +2 -1
  91. package/dist/src/helpers/peerIdFromPeerDescriptor.js.map +1 -1
  92. package/dist/src/helpers/versionCompatibility.d.ts +2 -0
  93. package/dist/src/helpers/versionCompatibility.js +18 -0
  94. package/dist/src/helpers/versionCompatibility.js.map +1 -0
  95. package/dist/src/identifiers.d.ts +6 -0
  96. package/dist/src/identifiers.js +23 -0
  97. package/dist/src/identifiers.js.map +1 -0
  98. package/dist/src/proto/packages/dht/protos/DhtRpc.d.ts +13 -5
  99. package/dist/src/proto/packages/dht/protos/DhtRpc.js +9 -5
  100. package/dist/src/proto/packages/dht/protos/DhtRpc.js.map +1 -1
  101. package/package.json +5 -5
  102. package/protos/DhtRpc.proto +3 -1
  103. package/src/connection/ConnectionLockHandler.ts +15 -15
  104. package/src/connection/ConnectionLockRpcLocal.ts +3 -3
  105. package/src/connection/ConnectionManager.ts +4 -7
  106. package/src/connection/Handshaker.ts +21 -6
  107. package/src/connection/ManagedConnection.ts +10 -6
  108. package/src/connection/simulator/Simulator.ts +2 -2
  109. package/src/connection/simulator/SimulatorConnector.ts +2 -2
  110. package/src/connection/webrtc/BrowserWebrtcConnection.ts +0 -4
  111. package/src/connection/webrtc/WebrtcConnector.ts +2 -3
  112. package/src/connection/webrtc/WebrtcConnectorRpcLocal.ts +11 -5
  113. package/src/connection/websocket/WebsocketConnector.ts +19 -11
  114. package/src/dht/DhtNode.ts +33 -31
  115. package/src/dht/DhtNodeRpcLocal.ts +4 -4
  116. package/src/dht/DhtNodeRpcRemote.ts +15 -17
  117. package/src/dht/ExternalApiRpcLocal.ts +15 -6
  118. package/src/dht/ExternalApiRpcRemote.ts +5 -4
  119. package/src/dht/PeerManager.ts +20 -20
  120. package/src/dht/contact/Contact.ts +2 -2
  121. package/src/dht/contact/ContactList.ts +7 -7
  122. package/src/dht/contact/RandomContactList.ts +6 -6
  123. package/src/dht/contact/RpcRemote.ts +0 -8
  124. package/src/dht/contact/SortedContactList.ts +22 -22
  125. package/src/dht/discovery/DiscoverySession.ts +16 -16
  126. package/src/dht/discovery/PeerDiscovery.ts +32 -11
  127. package/src/dht/recursive-operation/RecursiveOperationManager.ts +14 -14
  128. package/src/dht/recursive-operation/RecursiveOperationSession.ts +11 -11
  129. package/src/dht/routing/Router.ts +5 -5
  130. package/src/dht/routing/RouterRpcLocal.ts +3 -3
  131. package/src/dht/routing/RoutingSession.ts +6 -8
  132. package/src/dht/store/LocalDataStore.ts +25 -33
  133. package/src/dht/store/StoreManager.ts +25 -29
  134. package/src/dht/store/StoreRpcLocal.ts +11 -9
  135. package/src/exports.ts +2 -0
  136. package/src/helpers/AddressTools.ts +2 -0
  137. package/src/helpers/PeerID.ts +4 -4
  138. package/src/helpers/peerIdFromPeerDescriptor.ts +4 -4
  139. package/src/helpers/versionCompatibility.ts +13 -0
  140. package/src/identifiers.ts +20 -0
  141. package/src/proto/packages/dht/protos/DhtRpc.ts +18 -10
  142. package/test/RandomGraphSimulation.ts +3 -2
  143. package/test/benchmark/Find.test.ts +4 -3
  144. package/test/benchmark/KademliaCorrectness.test.ts +4 -4
  145. package/test/benchmark/SortedContactListBenchmark.test.ts +15 -14
  146. package/test/benchmark/kademlia-simulation/Contact.ts +7 -8
  147. package/test/benchmark/kademlia-simulation/KademliaSimulation.ts +2 -2
  148. package/test/benchmark/kademlia-simulation/SimulationNode.ts +10 -11
  149. package/test/data/generateGroundTruthData.ts +5 -4
  150. package/test/end-to-end/Layer0Webrtc-Layer1.test.ts +2 -2
  151. package/test/end-to-end/RecoveryFromFailedAutoCertification.test.ts +1 -1
  152. package/test/end-to-end/memory-leak.test.ts +3 -2
  153. package/test/integration/ConnectionManager.test.ts +3 -3
  154. package/test/integration/DhtJoinPeerDiscovery.test.ts +2 -1
  155. package/test/integration/DhtNodeExternalAPI.test.ts +7 -7
  156. package/test/integration/DhtNodeRpcRemote.test.ts +3 -2
  157. package/test/integration/Find.test.ts +3 -3
  158. package/test/integration/Layer1-scale.test.ts +3 -3
  159. package/test/integration/Mock-Layer1-Layer0.test.ts +6 -5
  160. package/test/integration/ReplicateData.test.ts +25 -23
  161. package/test/integration/RouteMessage.test.ts +9 -10
  162. package/test/integration/RouterRpcRemote.test.ts +1 -1
  163. package/test/integration/ScaleDownDht.test.ts +4 -4
  164. package/test/integration/SimultaneousConnections.test.ts +7 -14
  165. package/test/integration/Store.test.ts +17 -7
  166. package/test/integration/StoreAndDelete.test.ts +11 -10
  167. package/test/integration/StoreOnDhtWithTwoNodes.test.ts +7 -6
  168. package/test/integration/StoreRpcRemote.test.ts +3 -5
  169. package/test/unit/AddressTools.test.ts +4 -0
  170. package/test/unit/LocalDataStore.test.ts +37 -29
  171. package/test/unit/PeerManager.test.ts +7 -8
  172. package/test/unit/RandomContactList.test.ts +3 -3
  173. package/test/unit/RecursiveOperationManager.test.ts +2 -1
  174. package/test/unit/RecursiveOperationSession.test.ts +2 -3
  175. package/test/unit/Router.test.ts +2 -2
  176. package/test/unit/RoutingSession.test.ts +2 -2
  177. package/test/unit/SortedContactList.test.ts +6 -6
  178. package/test/unit/StoreManager.test.ts +26 -23
  179. package/test/unit/versionCompatibility.test.ts +16 -0
  180. package/test/utils/customMatchers.ts +3 -2
  181. package/test/utils/mock/mockDataEntry.ts +8 -6
  182. package/test/utils/utils.ts +4 -4
  183. package/tsconfig.browser.json +2 -1
  184. package/tsconfig.jest.json +2 -1
  185. package/tsconfig.node.json +2 -1
  186. package/dist/src/helpers/nodeId.d.ts +0 -6
  187. package/dist/src/helpers/nodeId.js +0 -31
  188. package/dist/src/helpers/nodeId.js.map +0 -1
  189. package/src/helpers/nodeId.ts +0 -28
@@ -44,6 +44,8 @@ const errors_1 = require("../../helpers/errors");
44
44
  const AutoCertifierClientFacade_1 = require("./AutoCertifierClientFacade");
45
45
  const connectivityRequestHandler_1 = require("../connectivityRequestHandler");
46
46
  const Err = __importStar(require("../../helpers/errors"));
47
+ const package_json_1 = require("../../../package.json");
48
+ const versionCompatibility_1 = require("../../helpers/versionCompatibility");
47
49
  const logger = new utils_1.Logger(module);
48
50
  const connectivityMethodToWebsocketUrl = (ws, action) => {
49
51
  return (ws.tls ? 'wss://' : 'ws://') + ws.host + ':' + ws.port + ((action !== undefined) ? '?action=' + action : '');
@@ -97,8 +99,8 @@ class WebsocketConnector {
97
99
  }
98
100
  attachHandshaker(connection) {
99
101
  const handshaker = new Handshaker_1.Handshaker(this.localPeerDescriptor, connection);
100
- handshaker.once('handshakeRequest', (localPeerDescriptor, remotePeerDescriptor) => {
101
- this.onServerSocketHandshakeRequest(localPeerDescriptor, connection, remotePeerDescriptor);
102
+ handshaker.once('handshakeRequest', (localPeerDescriptor, sourceVersion, remotePeerDescriptor) => {
103
+ this.onServerSocketHandshakeRequest(localPeerDescriptor, connection, sourceVersion, remotePeerDescriptor);
102
104
  });
103
105
  }
104
106
  async autoCertify() {
@@ -182,7 +184,7 @@ class WebsocketConnector {
182
184
  }
183
185
  catch (err) {
184
186
  if (reattempt < ENTRY_POINT_CONNECTION_ATTEMPTS) {
185
- const error = `Failed to connect to entrypoint with id ${(0, utils_1.binaryToHex)(entryPoint.nodeId)} `
187
+ const error = `Failed to connect to entrypoint with id ${(0, peerIdFromPeerDescriptor_1.getNodeIdFromPeerDescriptor)(entryPoint)} `
186
188
  + `and URL ${(0, exports.connectivityMethodToWebsocketUrl)(entryPoint.websocket)}`;
187
189
  logger.error(error, { error: err });
188
190
  await (0, utils_1.wait)(2000);
@@ -225,7 +227,7 @@ class WebsocketConnector {
225
227
  }
226
228
  requestConnectionFromPeer(localPeerDescriptor, targetPeerDescriptor) {
227
229
  setImmediate(() => {
228
- const remoteConnector = new WebsocketConnectorRpcRemote_1.WebsocketConnectorRpcRemote(localPeerDescriptor, targetPeerDescriptor, 'DUMMY', this.rpcCommunicator, DhtRpc_client_1.WebsocketConnectorRpcClient);
230
+ const remoteConnector = new WebsocketConnectorRpcRemote_1.WebsocketConnectorRpcRemote(localPeerDescriptor, targetPeerDescriptor, this.rpcCommunicator, DhtRpc_client_1.WebsocketConnectorRpcClient);
229
231
  remoteConnector.requestConnection().then(() => {
230
232
  logger.trace('Sent WebsocketConnectionRequest notification to peer', { targetPeerDescriptor });
231
233
  return;
@@ -241,18 +243,26 @@ class WebsocketConnector {
241
243
  this.ongoingConnectRequests.set((0, peerIdFromPeerDescriptor_1.getNodeIdFromPeerDescriptor)(targetPeerDescriptor), managedConnection);
242
244
  return managedConnection;
243
245
  }
244
- onServerSocketHandshakeRequest(sourcePeerDescriptor, serverWebsocket, targetPeerDescriptor) {
246
+ onServerSocketHandshakeRequest(sourcePeerDescriptor, serverWebsocket, sourceVersion, targetPeerDescriptor) {
245
247
  const nodeId = (0, peerIdFromPeerDescriptor_1.getNodeIdFromPeerDescriptor)(sourcePeerDescriptor);
246
248
  if (this.ongoingConnectRequests.has(nodeId)) {
247
249
  const ongoingConnectRequest = this.ongoingConnectRequests.get(nodeId);
248
- ongoingConnectRequest.attachImplementation(serverWebsocket);
249
- ongoingConnectRequest.acceptHandshake();
250
+ if (!(0, versionCompatibility_1.isCompatibleVersion)(sourceVersion, package_json_1.version)) {
251
+ ongoingConnectRequest.rejectHandshake(DhtRpc_1.HandshakeError.UNSUPPORTED_VERSION);
252
+ }
253
+ else {
254
+ ongoingConnectRequest.attachImplementation(serverWebsocket);
255
+ ongoingConnectRequest.acceptHandshake();
256
+ }
250
257
  this.ongoingConnectRequests.delete(nodeId);
251
258
  }
252
259
  else {
253
260
  const managedConnection = new ManagedConnection_1.ManagedConnection(this.localPeerDescriptor, IConnection_1.ConnectionType.WEBSOCKET_SERVER, undefined, serverWebsocket, targetPeerDescriptor);
254
261
  managedConnection.setRemotePeerDescriptor(sourcePeerDescriptor);
255
- if (targetPeerDescriptor && !(0, peerIdFromPeerDescriptor_1.areEqualPeerDescriptors)(this.localPeerDescriptor, targetPeerDescriptor)) {
262
+ if (!(0, versionCompatibility_1.isCompatibleVersion)(sourceVersion, package_json_1.version)) {
263
+ managedConnection.rejectHandshake(DhtRpc_1.HandshakeError.UNSUPPORTED_VERSION);
264
+ }
265
+ else if (targetPeerDescriptor && !(0, peerIdFromPeerDescriptor_1.areEqualPeerDescriptors)(this.localPeerDescriptor, targetPeerDescriptor)) {
256
266
  managedConnection.rejectHandshake(DhtRpc_1.HandshakeError.INVALID_TARGET_PEER_DESCRIPTOR);
257
267
  }
258
268
  else if (this.config.onNewConnection(managedConnection)) {
@@ -1 +1 @@
1
- {"version":3,"file":"WebsocketConnector.js","sourceRoot":"","sources":["../../../../src/connection/websocket/WebsocketConnector.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"WebsocketConnector.js","sourceRoot":"","sources":["../../../../src/connection/websocket/WebsocketConnector.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,uDAAmD;AACnD,gDAA4D;AAE5D,uFAAmF;AACnF,6EAAyE;AACzE,+EAA2E;AAC3E,mEAM+C;AAC/C,iFAA2F;AAC3F,0CAA6C;AAC7C,4DAAwD;AACxD,uDAAmD;AACnD,gEAAgE;AAChE,4DAAyE;AAEzE,8CAA0C;AAC1C,qFAA6G;AAE7G,mCAAsC;AAEtC,6DAAmE;AACnE,iDAAgE;AAChE,2EAAuE;AACvE,8EAAgF;AAChF,0DAA2C;AAG3C,wDAA+C;AAC/C,6EAAwE;AAExE,MAAM,MAAM,GAAG,IAAI,cAAM,CAAC,MAAM,CAAC,CAAA;AAI1B,MAAM,gCAAgC,GAAG,CAAC,EAAsB,EAAE,MAAe,EAAU,EAAE;IAChG,OAAO,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC,IAAI,GAAG,GAAG,GAAG,EAAE,CAAC,IAAI,GAAG,CAAC,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,CAAC,UAAU,GAAG,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAA;AACxH,CAAC,CAAA;AAFY,QAAA,gCAAgC,oCAE5C;AAED,MAAM,+BAA+B,GAAG,CAAC,CAAA;AAiBzC,MAAa,kBAAkB;IAc3B,YAAY,MAAgC;QAT3B,2BAAsB,GAAuC,IAAI,GAAG,EAAE,CAAA;QAK/E,0BAAqB,GAAuC,IAAI,GAAG,EAAE,CAAA;QACrE,oBAAe,GAAG,IAAI,eAAe,EAAE,CAAA;QAI3C,IAAI,CAAC,MAAM,GAAG,MAAM,CAAA;QACpB,IAAI,CAAC,eAAe,GAAG,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,iCAAe,CAAC;YAC1D,SAAS,EAAE,MAAM,CAAC,SAAS;YAC3B,cAAc,EAAE,MAAM,CAAC,cAAc;YACrC,cAAc,EAAE,MAAM,CAAC,cAAc;YACrC,SAAS,EAAE,MAAM,CAAC,eAAe;SACpC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAA;QACd,IAAI,CAAC,IAAI,GAAG,MAAM,CAAC,IAAI,CAAA;QACvB,IAAI,CAAC,eAAe,GAAG,IAAI,mDAAwB,CAAC,kBAAkB,CAAC,8BAA8B,EAAE,MAAM,CAAC,SAAS,EAAE;YACrH,iBAAiB,EAAE,KAAK,CAAE,4CAA4C;SACzE,CAAC,CAAA;QACF,IAAI,CAAC,uBAAuB,CAAC,MAAM,CAAC,CAAA;IACxC,CAAC;IAEO,uBAAuB,CAAC,MAAgC;QAC5D,MAAM,QAAQ,GAAG,IAAI,uDAA0B,CAAC;YAC5C,OAAO,EAAE,CAAC,oBAAoC,EAAE,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,oBAAoB,CAAC;YACrF,aAAa,EAAE,CAAC,oBAAoC,EAAW,EAAE;gBAC7D,MAAM,MAAM,GAAG,IAAA,sDAA2B,EAAC,oBAAoB,CAAC,CAAA;gBAChE,IAAI,IAAI,CAAC,qBAAqB,CAAC,GAAG,CAAC,MAAM,CAAC;uBACnC,IAAI,CAAC,qBAAqB,CAAC,GAAG,CAAC,MAAM,CAAC;uBACtC,IAAI,CAAC,sBAAsB,CAAC,GAAG,CAAC,MAAM,CAAC;uBACvC,MAAM,CAAC,aAAa,CAAC,oBAAoB,CAAC,EAC/C;oBACE,OAAO,IAAI,CAAA;iBACd;qBAAM;oBACH,OAAO,KAAK,CAAA;iBACf;YACL,CAAC;YACD,eAAe,EAAE,CAAC,UAA6B,EAAE,EAAE,CAAC,MAAM,CAAC,eAAe,CAAC,UAAU,CAAC;YACtF,WAAW,EAAE,IAAI,CAAC,eAAe,CAAC,MAAM;SAC3C,CAAC,CAAA;QACF,IAAI,CAAC,eAAe,CAAC,uBAAuB,CACxC,mCAA0B,EAC1B,mBAAmB,EACnB,KAAK,EAAE,GAA+B,EAAE,OAA0B,EAAkB,EAAE;YAClF,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC,MAAM,CAAC,OAAO,EAAE;gBACtC,OAAO,QAAQ,CAAC,iBAAiB,CAAC,GAAG,EAAE,OAAO,CAAC,CAAA;aAClD;iBAAM;gBACH,OAAO,EAAE,CAAA;aACZ;QACL,CAAC,CACJ,CAAA;IACL,CAAC;IAEO,gBAAgB,CAAC,UAAuB;QAC5C,MAAM,UAAU,GAAG,IAAI,uBAAU,CAAC,IAAI,CAAC,mBAAoB,EAAE,UAAU,CAAC,CAAA;QACxE,UAAU,CAAC,IAAI,CAAC,kBAAkB,EAAE,CAAC,mBAAmC,EAAE,aAAqB,EAAE,oBAAqC,EAAE,EAAE;YACtI,IAAI,CAAC,8BAA8B,CAAC,mBAAmB,EAAE,UAAU,EAAE,aAAa,EAAE,oBAAoB,CAAC,CAAA;QAC7G,CAAC,CAAC,CAAA;IACN,CAAC;IAEM,KAAK,CAAC,WAAW;QACpB,IAAI,CAAC,mBAAmB,GAAG,IAAI,qDAAyB,CAAC;YACrD,UAAU,EAAE,IAAI,CAAC,MAAM,CAAC,uBAAuB;YAC/C,SAAS,EAAE,IAAI,CAAC,MAAM,CAAC,sBAAsB;YAC7C,GAAG,EAAE,IAAI,CAAC,MAAM,CAAC,gBAAgB;YACjC,YAAY,EAAE,IAAI,CAAC,YAAa;YAChC,OAAO,EAAE,CAAC,QAAgB,EAAE,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC;YACrD,iBAAiB,EAAE,CAAC,WAAmB,EAAE,UAAkB,EAAE,EAAE,CAAC,IAAI,CAAC,eAAgB,CAAC,iBAAiB,CAAC,WAAW,EAAE,UAAU,CAAC;SACnI,CAAC,CAAA;QACF,MAAM,CAAC,KAAK,CAAC,6BAA6B,CAAC,CAAA;QAC3C,MAAM,IAAI,CAAC,mBAAmB,CAAC,KAAK,EAAE,CAAA;IAC1C,CAAC;IAEO,OAAO,CAAC,QAAgB;QAC5B,MAAM,CAAC,KAAK,CAAC,wBAAwB,QAAQ,EAAE,CAAC,CAAA;QAChD,IAAI,CAAC,IAAI,GAAG,QAAQ,CAAA;IACxB,CAAC;IAEM,KAAK,CAAC,KAAK;QACd,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC,MAAM,CAAC,OAAO,IAAI,IAAI,CAAC,eAAe,EAAE;YAC9D,IAAI,CAAC,eAAe,CAAC,EAAE,CAAC,WAAW,EAAE,CAAC,UAAuB,EAAE,EAAE;gBAC7D,MAAM,YAAY,GAAG,UAAwC,CAAA;gBAC7D,MAAM,KAAK,GAAG,YAAY,CAAC,WAAW,CAAC,KAA2C,CAAA;gBAClF,MAAM,MAAM,GAAG,KAAK,EAAE,MAA8B,CAAA;gBACpD,MAAM,CAAC,KAAK,CAAC,4BAA4B,EAAE,EAAE,MAAM,EAAE,aAAa,EAAE,YAAY,CAAC,gBAAgB,EAAE,EAAE,CAAC,CAAA;gBACtG,IAAI,MAAM,KAAK,qBAAqB,EAAE;oBAClC,IAAA,6DAAgC,EAAC,YAAY,CAAC,CAAA;iBACjD;qBAAM,IAAI,MAAM,KAAK,mBAAmB,EAAE;oBACvC,QAAQ;iBACX;qBAAM;oBACH,IAAI,CAAC,gBAAgB,CAAC,UAAU,CAAC,CAAA;iBACpC;YACL,CAAC,CAAC,CAAA;YACF,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,eAAe,CAAC,KAAK,EAAE,CAAA;YAC/C,IAAI,CAAC,YAAY,GAAG,IAAI,CAAA;SAC3B;IACL,CAAC;IAEM,KAAK,CAAC,iBAAiB,CAAC,UAAmB;QAC9C,sDAAsD;QACtD,MAAM,4BAA4B,GAAyB;YACvD,IAAI,EAAE,WAAW;YACjB,OAAO,EAAE,2BAAO,CAAC,OAAO;SAC3B,CAAA;QACD,IAAI,IAAI,CAAC,eAAe,CAAC,MAAM,CAAC,OAAO,EAAE;YACrC,OAAO,4BAA4B,CAAA;SACtC;QACD,KAAK,MAAM,SAAS,IAAI,IAAA,cAAK,EAAC,+BAA+B,CAAC,EAAE;YAC5D,MAAM,UAAU,GAAG,IAAA,eAAM,EAAC,IAAI,CAAC,MAAM,CAAC,WAAW,CAAE,CAAA;YACnD,IAAI;gBACA,IAAI,CAAC,IAAI,CAAC,eAAe,EAAE;oBACvB,OAAO,4BAA4B,CAAA;iBACtC;qBAAM;oBACH,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,WAAW,IAAI,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,MAAM,KAAK,CAAC,EAAE;wBAClE,2CAA2C;wBAC3C,MAAM,iCAAiC,GAAyB;4BAC5D,IAAI,EAAE,IAAI,CAAC,IAAK;4BAChB,OAAO,EAAE,2BAAO,CAAC,aAAa;4BAC9B,SAAS,EAAE,EAAE,IAAI,EAAE,IAAI,CAAC,IAAK,EAAE,IAAI,EAAE,IAAI,CAAC,YAAa,EAAE,GAAG,EAAE,IAAI,CAAC,MAAM,CAAC,cAAc,KAAK,SAAS,EAAE;yBAC3G,CAAA;wBACD,OAAO,iCAAiC,CAAA;qBAC3C;yBAAM;wBACH,gCAAgC;wBAChC,MAAM,mBAAmB,GAAG;4BACxB,IAAI,EAAE,IAAI,CAAC,YAAa;4BACxB,IAAI,EAAE,IAAI,CAAC,IAAI;4BACf,GAAG,EAAE,IAAI,CAAC,MAAM,CAAC,eAAe;4BAChC,UAAU;yBACb,CAAA;wBACD,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC,MAAM,CAAC,OAAO,EAAE;4BACtC,OAAO,MAAM,IAAA,6CAAuB,EAAC,mBAAmB,EAAE,UAAU,CAAC,CAAA;yBACxE;6BAAM;4BACH,MAAM,IAAI,GAAG,CAAC,gBAAgB,CAAC,kCAAkC,CAAC,CAAA;yBACrE;qBACJ;iBACJ;aACJ;YAAC,OAAO,GAAG,EAAE;gBACV,IAAI,SAAS,GAAG,+BAA+B,EAAE;oBAC7C,MAAM,KAAK,GAAG,2CAA2C,IAAA,sDAA2B,EAAC,UAAU,CAAC,GAAG;0BAC7F,WAAW,IAAA,wCAAgC,EAAC,UAAU,CAAC,SAAU,CAAC,EAAE,CAAA;oBAC1E,MAAM,CAAC,KAAK,CAAC,KAAK,EAAE,EAAE,KAAK,EAAE,GAAG,EAAE,CAAC,CAAA;oBACnC,MAAM,IAAA,YAAI,EAAC,IAAI,CAAC,CAAA;iBACnB;aACJ;SACJ;QACD,MAAM,IAAI,kCAAyB,CAAC,8CAA8C,+BAA+B,WAAW,CAAC,CAAA;IACjI,CAAC;IAEM,0BAA0B,CAAC,oBAAoC;QAClE,MAAM,cAAc,GAAG,IAAA,qCAAsB,EAAC,IAAI,CAAC,mBAAoB,EAAE,oBAAoB,CAAC,CAAA;QAC9F,OAAO,CAAC,cAAc,KAAK,4BAAc,CAAC,gBAAgB,IAAI,cAAc,KAAK,4BAAc,CAAC,gBAAgB,CAAC,CAAA;IACrH,CAAC;IAEM,OAAO,CAAC,oBAAoC;QAC/C,MAAM,MAAM,GAAG,IAAA,sDAA2B,EAAC,oBAAoB,CAAC,CAAA;QAChE,MAAM,kBAAkB,GAAG,IAAI,CAAC,qBAAqB,CAAC,GAAG,CAAC,MAAM,CAAC,CAAA;QACjE,IAAI,kBAAkB,EAAE;YACpB,OAAO,kBAAkB,CAAA;SAC5B;QAED,IAAI,IAAI,CAAC,mBAAoB,CAAC,SAAS,IAAI,CAAC,oBAAoB,CAAC,SAAS,EAAE;YACxE,OAAO,IAAI,CAAC,yBAAyB,CAAC,IAAI,CAAC,mBAAoB,EAAE,oBAAoB,CAAC,CAAA;SACzF;aAAM;YACH,MAAM,MAAM,GAAG,IAAI,iCAAe,EAAE,CAAA;YAEpC,MAAM,GAAG,GAAG,IAAA,wCAAgC,EAAC,oBAAoB,CAAC,SAAU,CAAC,CAAA;YAE7E,MAAM,iBAAiB,GAAG,IAAI,qCAAiB,CAC3C,IAAI,CAAC,mBAAoB,EACzB,4BAAc,CAAC,gBAAgB,EAC/B,MAAM,EACN,SAAS,EACT,oBAAoB,CACvB,CAAA;YACD,iBAAiB,CAAC,uBAAuB,CAAC,oBAAoB,CAAC,CAAA;YAE/D,IAAI,CAAC,qBAAqB,CAAC,GAAG,CAAC,IAAA,sDAA2B,EAAC,oBAAoB,CAAC,EAAE,iBAAiB,CAAC,CAAA;YAEpG,MAAM,OAAO,GAAG,GAAG,EAAE;gBACjB,IAAI,IAAI,CAAC,qBAAqB,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE;oBACxC,IAAI,CAAC,qBAAqB,CAAC,MAAM,CAAC,MAAM,CAAC,CAAA;iBAC5C;gBACD,MAAM,CAAC,GAAG,CAAC,cAAc,EAAE,OAAO,CAAC,CAAA;gBACnC,iBAAiB,CAAC,GAAG,CAAC,oBAAoB,EAAE,OAAO,CAAC,CAAA;YACxD,CAAC,CAAA;YACD,MAAM,CAAC,EAAE,CAAC,cAAc,EAAE,OAAO,CAAC,CAAA;YAClC,iBAAiB,CAAC,EAAE,CAAC,oBAAoB,EAAE,OAAO,CAAC,CAAA;YAEnD,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,CAAA;YAEnB,OAAO,iBAAiB,CAAA;SAC3B;IACL,CAAC;IAEO,yBAAyB,CAAC,mBAAmC,EAAE,oBAAoC;QACvG,YAAY,CAAC,GAAG,EAAE;YACd,MAAM,eAAe,GAAG,IAAI,yDAA2B,CACnD,mBAAmB,EACnB,oBAAoB,EACpB,IAAI,CAAC,eAAe,EACpB,2CAA2B,CAC9B,CAAA;YACD,eAAe,CAAC,iBAAiB,EAAE,CAAC,IAAI,CAAC,GAAG,EAAE;gBAC1C,MAAM,CAAC,KAAK,CAAC,sDAAsD,EAAE,EAAE,oBAAoB,EAAE,CAAC,CAAA;gBAC9F,OAAM;YACV,CAAC,EAAE,CAAC,GAAG,EAAE,EAAE;gBACP,MAAM,CAAC,KAAK,CAAC,iEAAiE,EAAE;oBAC5E,KAAK,EAAE,GAAG,EAAE,oBAAoB;iBACnC,CAAC,CAAA;YACN,CAAC,CAAC,CAAA;QACN,CAAC,CAAC,CAAA;QACF,MAAM,iBAAiB,GAAG,IAAI,qCAAiB,CAC3C,IAAI,CAAC,mBAAoB,EACzB,4BAAc,CAAC,gBAAgB,EAC/B,SAAS,EACT,SAAS,EACT,oBAAoB,CACvB,CAAA;QACD,iBAAiB,CAAC,EAAE,CAAC,cAAc,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,sBAAsB,CAAC,MAAM,CAAC,IAAA,sDAA2B,EAAC,oBAAoB,CAAC,CAAC,CAAC,CAAA;QACjI,iBAAiB,CAAC,uBAAuB,CAAC,oBAAoB,CAAC,CAAA;QAC/D,IAAI,CAAC,sBAAsB,CAAC,GAAG,CAAC,IAAA,sDAA2B,EAAC,oBAAoB,CAAC,EAAE,iBAAiB,CAAC,CAAA;QACrG,OAAO,iBAAiB,CAAA;IAC5B,CAAC;IAEO,8BAA8B,CAClC,oBAAoC,EACpC,eAA4B,EAC5B,aAAqB,EACrB,oBAAqC;QAErC,MAAM,MAAM,GAAG,IAAA,sDAA2B,EAAC,oBAAoB,CAAC,CAAA;QAChE,IAAI,IAAI,CAAC,sBAAsB,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE;YACzC,MAAM,qBAAqB,GAAG,IAAI,CAAC,sBAAsB,CAAC,GAAG,CAAC,MAAM,CAAE,CAAA;YACtE,IAAI,CAAC,IAAA,0CAAmB,EAAC,aAAa,EAAE,sBAAO,CAAC,EAAE;gBAC9C,qBAAqB,CAAC,eAAe,CAAC,uBAAc,CAAC,mBAAmB,CAAC,CAAA;aAC5E;iBAAM;gBACH,qBAAqB,CAAC,oBAAoB,CAAC,eAAe,CAAC,CAAA;gBAC3D,qBAAqB,CAAC,eAAe,EAAE,CAAA;aAC1C;YACD,IAAI,CAAC,sBAAsB,CAAC,MAAM,CAAC,MAAM,CAAC,CAAA;SAC7C;aAAM;YACH,MAAM,iBAAiB,GAAG,IAAI,qCAAiB,CAC3C,IAAI,CAAC,mBAAoB,EACzB,4BAAc,CAAC,gBAAgB,EAC/B,SAAS,EACT,eAAe,EACf,oBAAoB,CACvB,CAAA;YACD,iBAAiB,CAAC,uBAAuB,CAAC,oBAAoB,CAAC,CAAA;YAC/D,IAAI,CAAC,IAAA,0CAAmB,EAAC,aAAa,EAAE,sBAAO,CAAC,EAAE;gBAC9C,iBAAiB,CAAC,eAAe,CAAC,uBAAc,CAAC,mBAAmB,CAAC,CAAA;aACxE;iBAAM,IAAI,oBAAoB,IAAI,CAAC,IAAA,kDAAuB,EAAC,IAAI,CAAC,mBAAoB,EAAE,oBAAoB,CAAC,EAAE;gBAC1G,iBAAiB,CAAC,eAAe,CAAC,uBAAc,CAAC,8BAA8B,CAAC,CAAA;aACnF;iBAAM,IAAI,IAAI,CAAC,MAAM,CAAC,eAAe,CAAC,iBAAiB,CAAC,EAAE;gBACvD,iBAAiB,CAAC,eAAe,EAAE,CAAA;aACtC;iBAAM;gBACH,iBAAiB,CAAC,eAAe,CAAC,uBAAc,CAAC,oBAAoB,CAAC,CAAA;aACzE;SACJ;IACL,CAAC;IAEM,sBAAsB,CAAC,mBAAmC;QAC7D,IAAI,CAAC,mBAAmB,GAAG,mBAAmB,CAAA;IAClD,CAAC;IAEM,KAAK,CAAC,OAAO;QAChB,IAAI,CAAC,eAAe,CAAC,KAAK,EAAE,CAAA;QAC5B,IAAI,CAAC,eAAe,CAAC,OAAO,EAAE,CAAA;QAE9B,MAAM,QAAQ,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,sBAAsB,CAAC,MAAM,EAAE,CAAC,CAAA;QACjE,MAAM,OAAO,CAAC,UAAU,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAA;QAEnE,MAAM,QAAQ,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,qBAAqB,CAAC,MAAM,EAAE,CAAC,CAAA;QAChE,MAAM,OAAO,CAAC,UAAU,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAA;QACnE,MAAM,IAAI,CAAC,eAAe,EAAE,IAAI,EAAE,CAAA;IACtC,CAAC;;AA1RL,gDA2RC;AAzR2B,iDAA8B,GAAG,4BAA4B,AAA/B,CAA+B"}
@@ -8,7 +8,7 @@ import { Router } from './routing/Router';
8
8
  import { RecursiveOperationResult } from './recursive-operation/RecursiveOperationManager';
9
9
  import { IceServer } from '../connection/webrtc/WebrtcConnector';
10
10
  import { ServiceID } from '../types/ServiceID';
11
- import { NodeID } from '../helpers/nodeId';
11
+ import { DhtAddress } from '../identifiers';
12
12
  export interface DhtNodeEvents {
13
13
  newContact: (peerDescriptor: PeerDescriptor, closestPeers: PeerDescriptor[]) => void;
14
14
  contactRemoved: (peerDescriptor: PeerDescriptor, closestPeers: PeerDescriptor[]) => void;
@@ -72,17 +72,18 @@ export declare class DhtNode extends EventEmitter<Events> implements ITransport
72
72
  private handleMessage;
73
73
  private generatePeerDescriptorCallBack;
74
74
  getClosestContacts(limit?: number): PeerDescriptor[];
75
- getNodeId(): NodeID;
75
+ getNodeId(): DhtAddress;
76
76
  getNumberOfNeighbors(): number;
77
77
  removeContact(contact: PeerDescriptor): void;
78
78
  send(msg: Message): Promise<void>;
79
+ private getConnectedEntryPoints;
79
80
  joinDht(entryPointDescriptors: PeerDescriptor[], doAdditionalRandomPeerDiscovery?: boolean, retry?: boolean): Promise<void>;
80
- executeRecursiveOperation(key: Uint8Array, operation: RecursiveOperation, excludedPeer?: PeerDescriptor): Promise<RecursiveOperationResult>;
81
- storeDataToDht(key: Uint8Array, data: Any, creator?: NodeID): Promise<PeerDescriptor[]>;
82
- storeDataViaPeer(key: Uint8Array, data: Any, peer: PeerDescriptor): Promise<PeerDescriptor[]>;
83
- getDataFromDht(key: Uint8Array): Promise<DataEntry[]>;
84
- deleteDataFromDht(key: Uint8Array, waitForCompletion: boolean): Promise<void>;
85
- findDataViaPeer(key: Uint8Array, peer: PeerDescriptor): Promise<DataEntry[]>;
81
+ executeRecursiveOperation(key: DhtAddress, operation: RecursiveOperation, excludedPeer?: PeerDescriptor): Promise<RecursiveOperationResult>;
82
+ storeDataToDht(key: DhtAddress, data: Any, creator?: DhtAddress): Promise<PeerDescriptor[]>;
83
+ storeDataViaPeer(key: DhtAddress, data: Any, peer: PeerDescriptor): Promise<PeerDescriptor[]>;
84
+ getDataFromDht(key: DhtAddress): Promise<DataEntry[]>;
85
+ deleteDataFromDht(key: DhtAddress, waitForCompletion: boolean): Promise<void>;
86
+ findDataViaPeer(key: DhtAddress, peer: PeerDescriptor): Promise<DataEntry[]>;
86
87
  getTransport(): ITransport;
87
88
  getLocalPeerDescriptor(): PeerDescriptor;
88
89
  getAllConnectionPeerDescriptors(): PeerDescriptor[];
@@ -23,16 +23,16 @@ const ConnectorFacade_1 = require("../connection/ConnectorFacade");
23
23
  const DhtNodeRpcLocal_1 = require("./DhtNodeRpcLocal");
24
24
  const ExternalApiRpcLocal_1 = require("./ExternalApiRpcLocal");
25
25
  const PeerManager_1 = require("./PeerManager");
26
- const nodeId_1 = require("../helpers/nodeId");
26
+ const identifiers_1 = require("../identifiers");
27
27
  const StoreRpcRemote_1 = require("./store/StoreRpcRemote");
28
28
  const logger = new utils_1.Logger(module);
29
29
  const createPeerDescriptor = (msg, peerId) => {
30
30
  let nodeId;
31
31
  if (msg) {
32
- nodeId = (peerId !== undefined) ? (0, utils_1.hexToBinary)(peerId) : PeerID_1.PeerID.fromIp(msg.host).value;
32
+ nodeId = (peerId !== undefined) ? (0, identifiers_1.getRawFromDhtAddress)(peerId) : PeerID_1.PeerID.fromIp(msg.host).value;
33
33
  }
34
34
  else {
35
- nodeId = (0, utils_1.hexToBinary)(peerId);
35
+ nodeId = (0, identifiers_1.getRawFromDhtAddress)(peerId);
36
36
  }
37
37
  const nodeType = (0, isBrowserEnvironment_1.isBrowserEnvironment)() ? DhtRpc_1.NodeType.BROWSER : DhtRpc_1.NodeType.NODEJS;
38
38
  const ret = { nodeId, type: nodeType };
@@ -52,7 +52,7 @@ class DhtNode extends eventemitter3_1.EventEmitter {
52
52
  joinParallelism: 3,
53
53
  maxNeighborListSize: 200,
54
54
  numberOfNodesPerKBucket: 8,
55
- joinNoProgressLimit: 4,
55
+ joinNoProgressLimit: 5,
56
56
  dhtJoinTimeout: 60000,
57
57
  peerDiscoveryQueryBatchSize: 5,
58
58
  maxConnections: 80,
@@ -164,11 +164,11 @@ class DhtNode extends eventemitter3_1.EventEmitter {
164
164
  highestTtl: this.config.storeHighestTtl,
165
165
  redundancyFactor: this.config.storageRedundancyFactor,
166
166
  localDataStore: this.localDataStore,
167
- getClosestNeighborsTo: (id, n) => {
168
- return this.peerManager.getClosestNeighborsTo((0, nodeId_1.getNodeIdFromBinary)(id), n).map((n) => n.getPeerDescriptor());
167
+ getClosestNeighborsTo: (key, n) => {
168
+ return this.peerManager.getClosestNeighborsTo(key, n).map((n) => n.getPeerDescriptor());
169
169
  },
170
170
  createRpcRemote: (contact) => {
171
- return new StoreRpcRemote_1.StoreRpcRemote(this.localPeerDescriptor, contact, this.config.serviceId, this.rpcCommunicator, DhtRpc_client_1.StoreRpcClient, this.config.rpcRequestTimeout);
171
+ return new StoreRpcRemote_1.StoreRpcRemote(this.localPeerDescriptor, contact, this.rpcCommunicator, DhtRpc_client_1.StoreRpcClient, this.config.rpcRequestTimeout);
172
172
  }
173
173
  });
174
174
  this.on('newContact', (peerDescriptor) => {
@@ -220,8 +220,8 @@ class DhtNode extends eventemitter3_1.EventEmitter {
220
220
  }
221
221
  const dhtNodeRpcLocal = new DhtNodeRpcLocal_1.DhtNodeRpcLocal({
222
222
  peerDiscoveryQueryBatchSize: this.config.peerDiscoveryQueryBatchSize,
223
- getClosestPeersTo: (kademliaId, limit) => {
224
- return this.peerManager.getClosestNeighborsTo((0, nodeId_1.getNodeIdFromBinary)(kademliaId), limit)
223
+ getClosestPeersTo: (nodeId, limit) => {
224
+ return this.peerManager.getClosestNeighborsTo(nodeId, limit)
225
225
  .map((dhtPeer) => dhtPeer.getPeerDescriptor());
226
226
  },
227
227
  addNewContact: (contact) => this.peerManager.handleNewPeers([contact]),
@@ -229,7 +229,7 @@ class DhtNode extends eventemitter3_1.EventEmitter {
229
229
  });
230
230
  this.rpcCommunicator.registerRpcMethod(DhtRpc_1.ClosestPeersRequest, DhtRpc_1.ClosestPeersResponse, 'getClosestPeers', (req, context) => dhtNodeRpcLocal.getClosestPeers(req, context));
231
231
  this.rpcCommunicator.registerRpcMethod(DhtRpc_1.PingRequest, DhtRpc_1.PingResponse, 'ping', (req, context) => dhtNodeRpcLocal.ping(req, context));
232
- this.rpcCommunicator.registerRpcNotification(DhtRpc_1.LeaveNotice, 'leaveNotice', (req, context) => dhtNodeRpcLocal.leaveNotice(req, context));
232
+ this.rpcCommunicator.registerRpcNotification(DhtRpc_1.LeaveNotice, 'leaveNotice', (_req, context) => dhtNodeRpcLocal.leaveNotice(context));
233
233
  const externalApiRpcLocal = new ExternalApiRpcLocal_1.ExternalApiRpcLocal({
234
234
  executeRecursiveOperation: (key, operation, excludedPeer) => {
235
235
  return this.executeRecursiveOperation(key, operation, excludedPeer);
@@ -281,14 +281,17 @@ class DhtNode extends eventemitter3_1.EventEmitter {
281
281
  if (!this.started || this.abortController.signal.aborted) {
282
282
  return;
283
283
  }
284
- const reachableThrough = this.peerDiscovery.isJoinOngoing() ? this.config.entryPoints ?? [] : [];
284
+ const reachableThrough = this.peerDiscovery.isJoinOngoing() ? this.getConnectedEntryPoints() : [];
285
285
  this.router.send(msg, reachableThrough);
286
286
  }
287
+ getConnectedEntryPoints() {
288
+ return this.config.entryPoints !== undefined ? this.config.entryPoints.filter((entryPoint) => this.peerManager.connections.has((0, peerIdFromPeerDescriptor_1.getNodeIdFromPeerDescriptor)(entryPoint))) : [];
289
+ }
287
290
  async joinDht(entryPointDescriptors, doAdditionalRandomPeerDiscovery, retry) {
288
291
  if (!this.started) {
289
292
  throw new Error('Cannot join DHT before calling start() on DhtNode');
290
293
  }
291
- await Promise.all(entryPointDescriptors.map((entryPoint) => this.peerDiscovery.joinDht(entryPoint, doAdditionalRandomPeerDiscovery, retry)));
294
+ await this.peerDiscovery.joinDht(entryPointDescriptors, doAdditionalRandomPeerDiscovery, retry);
292
295
  }
293
296
  // TODO make this private and unify the public API of find/fetch/store/delete methods
294
297
  // (we already have storeDataToDht etc. here)
@@ -296,18 +299,20 @@ class DhtNode extends eventemitter3_1.EventEmitter {
296
299
  return this.recursiveOperationManager.execute(key, operation, excludedPeer);
297
300
  }
298
301
  async storeDataToDht(key, data, creator) {
299
- if (this.peerDiscovery.isJoinOngoing() && this.config.entryPoints && this.config.entryPoints.length > 0) {
300
- return this.storeDataViaPeer(key, data, (0, lodash_1.sample)(this.config.entryPoints));
302
+ const connectedEntryPoints = this.getConnectedEntryPoints();
303
+ if (this.peerDiscovery.isJoinOngoing() && connectedEntryPoints.length > 0) {
304
+ return this.storeDataViaPeer(key, data, (0, lodash_1.sample)(connectedEntryPoints));
301
305
  }
302
306
  return this.storeManager.storeDataToDht(key, data, creator ?? (0, peerIdFromPeerDescriptor_1.getNodeIdFromPeerDescriptor)(this.localPeerDescriptor));
303
307
  }
304
308
  async storeDataViaPeer(key, data, peer) {
305
- const rpcRemote = new ExternalApiRpcRemote_1.ExternalApiRpcRemote(this.localPeerDescriptor, peer, this.config.serviceId, this.rpcCommunicator, DhtRpc_client_1.ExternalApiRpcClient);
309
+ const rpcRemote = new ExternalApiRpcRemote_1.ExternalApiRpcRemote(this.localPeerDescriptor, peer, this.rpcCommunicator, DhtRpc_client_1.ExternalApiRpcClient);
306
310
  return await rpcRemote.storeData(key, data);
307
311
  }
308
312
  async getDataFromDht(key) {
309
- if (this.peerDiscovery.isJoinOngoing() && this.config.entryPoints && this.config.entryPoints.length > 0) {
310
- return this.findDataViaPeer(key, (0, lodash_1.sample)(this.config.entryPoints));
313
+ const connectedEntryPoints = this.getConnectedEntryPoints();
314
+ if (this.peerDiscovery.isJoinOngoing() && connectedEntryPoints.length > 0) {
315
+ return this.findDataViaPeer(key, (0, lodash_1.sample)(connectedEntryPoints));
311
316
  }
312
317
  const result = await this.recursiveOperationManager.execute(key, DhtRpc_1.RecursiveOperation.FETCH_DATA);
313
318
  return result.dataEntries ?? []; // TODO is this fallback needed?
@@ -318,7 +323,7 @@ class DhtNode extends eventemitter3_1.EventEmitter {
318
323
  }
319
324
  }
320
325
  async findDataViaPeer(key, peer) {
321
- const rpcRemote = new ExternalApiRpcRemote_1.ExternalApiRpcRemote(this.localPeerDescriptor, peer, this.config.serviceId, this.rpcCommunicator, DhtRpc_client_1.ExternalApiRpcClient);
326
+ const rpcRemote = new ExternalApiRpcRemote_1.ExternalApiRpcRemote(this.localPeerDescriptor, peer, this.rpcCommunicator, DhtRpc_client_1.ExternalApiRpcClient);
322
327
  return await rpcRemote.externalFindData(key);
323
328
  }
324
329
  getTransport() {
@@ -1 +1 @@
1
- {"version":3,"file":"DhtNode.js","sourceRoot":"","sources":["../../../src/dht/DhtNode.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"DhtNode.js","sourceRoot":"","sources":["../../../src/dht/DhtNode.ts"],"names":[],"mappings":"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"}
@@ -1,10 +1,11 @@
1
1
  import { ServerCallContext } from '@protobuf-ts/runtime-rpc';
2
2
  import { Empty } from '../proto/google/protobuf/empty';
3
- import { ClosestPeersRequest, ClosestPeersResponse, LeaveNotice, PeerDescriptor, PingRequest, PingResponse } from '../proto/packages/dht/protos/DhtRpc';
3
+ import { ClosestPeersRequest, ClosestPeersResponse, PeerDescriptor, PingRequest, PingResponse } from '../proto/packages/dht/protos/DhtRpc';
4
4
  import { IDhtNodeRpc } from '../proto/packages/dht/protos/DhtRpc.server';
5
+ import { DhtAddress } from '../identifiers';
5
6
  interface DhtNodeRpcLocalConfig {
6
7
  peerDiscoveryQueryBatchSize: number;
7
- getClosestPeersTo: (nodeId: Uint8Array, limit: number) => PeerDescriptor[];
8
+ getClosestPeersTo: (nodeId: DhtAddress, limit: number) => PeerDescriptor[];
8
9
  addNewContact: (contact: PeerDescriptor) => void;
9
10
  removeContact: (contact: PeerDescriptor) => void;
10
11
  }
@@ -13,6 +14,6 @@ export declare class DhtNodeRpcLocal implements IDhtNodeRpc {
13
14
  constructor(config: DhtNodeRpcLocalConfig);
14
15
  getClosestPeers(request: ClosestPeersRequest, context: ServerCallContext): Promise<ClosestPeersResponse>;
15
16
  ping(request: PingRequest, context: ServerCallContext): Promise<PingResponse>;
16
- leaveNotice(_request: LeaveNotice, context: ServerCallContext): Promise<Empty>;
17
+ leaveNotice(context: ServerCallContext): Promise<Empty>;
17
18
  }
18
19
  export {};
@@ -3,6 +3,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.DhtNodeRpcLocal = void 0;
4
4
  const utils_1 = require("@streamr/utils");
5
5
  const peerIdFromPeerDescriptor_1 = require("../helpers/peerIdFromPeerDescriptor");
6
+ const identifiers_1 = require("../identifiers");
6
7
  const logger = new utils_1.Logger(module);
7
8
  class DhtNodeRpcLocal {
8
9
  constructor(config) {
@@ -11,7 +12,7 @@ class DhtNodeRpcLocal {
11
12
  async getClosestPeers(request, context) {
12
13
  this.config.addNewContact(context.incomingSourceDescriptor);
13
14
  const response = {
14
- peers: this.config.getClosestPeersTo(request.nodeId, this.config.peerDiscoveryQueryBatchSize),
15
+ peers: this.config.getClosestPeersTo((0, identifiers_1.getDhtAddressFromRaw)(request.nodeId), this.config.peerDiscoveryQueryBatchSize),
15
16
  requestId: request.requestId
16
17
  };
17
18
  return response;
@@ -26,7 +27,7 @@ class DhtNodeRpcLocal {
26
27
  };
27
28
  return response;
28
29
  }
29
- async leaveNotice(_request, context) {
30
+ async leaveNotice(context) {
30
31
  // TODO check signature??
31
32
  const sender = context.incomingSourceDescriptor;
32
33
  logger.trace('received leave notice: ' + (0, peerIdFromPeerDescriptor_1.getNodeIdFromPeerDescriptor)(sender));
@@ -1 +1 @@
1
- {"version":3,"file":"DhtNodeRpcLocal.js","sourceRoot":"","sources":["../../../src/dht/DhtNodeRpcLocal.ts"],"names":[],"mappings":";;;AACA,0CAAuC;AACvC,kFAAiF;AAoBjF,MAAM,MAAM,GAAG,IAAI,cAAM,CAAC,MAAM,CAAC,CAAA;AAEjC,MAAa,eAAe;IAIxB,YAAY,MAA6B;QACrC,IAAI,CAAC,MAAM,GAAG,MAAM,CAAA;IACxB,CAAC;IAED,KAAK,CAAC,eAAe,CAAC,OAA4B,EAAE,OAA0B;QAC1E,IAAI,CAAC,MAAM,CAAC,aAAa,CAAE,OAA0B,CAAC,wBAAyB,CAAC,CAAA;QAChF,MAAM,QAAQ,GAAG;YACb,KAAK,EAAE,IAAI,CAAC,MAAM,CAAC,iBAAiB,CAAC,OAAO,CAAC,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC,2BAA2B,CAAC;YAC7F,SAAS,EAAE,OAAO,CAAC,SAAS;SAC/B,CAAA;QACD,OAAO,QAAQ,CAAA;IACnB,CAAC;IAED,KAAK,CAAC,IAAI,CAAC,OAAoB,EAAE,OAA0B;QACvD,MAAM,CAAC,KAAK,CAAC,yBAAyB,GAAG,IAAA,sDAA2B,EAAE,OAA0B,CAAC,wBAAyB,CAAC,CAAC,CAAA;QAC5H,YAAY,CAAC,GAAG,EAAE;YACd,IAAI,CAAC,MAAM,CAAC,aAAa,CAAE,OAA0B,CAAC,wBAAyB,CAAC,CAAA;QACpF,CAAC,CAAC,CAAA;QACF,MAAM,QAAQ,GAAiB;YAC3B,SAAS,EAAE,OAAO,CAAC,SAAS;SAC/B,CAAA;QACD,OAAO,QAAQ,CAAA;IACnB,CAAC;IAED,KAAK,CAAC,WAAW,CAAC,QAAqB,EAAE,OAA0B;QAC/D,yBAAyB;QACzB,MAAM,MAAM,GAAI,OAA0B,CAAC,wBAAyB,CAAA;QACpE,MAAM,CAAC,KAAK,CAAC,yBAAyB,GAAG,IAAA,sDAA2B,EAAC,MAAM,CAAC,CAAC,CAAA;QAC7E,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,MAAM,CAAC,CAAA;QACjC,OAAO,EAAE,CAAA;IACb,CAAC;CACJ;AAnCD,0CAmCC"}
1
+ {"version":3,"file":"DhtNodeRpcLocal.js","sourceRoot":"","sources":["../../../src/dht/DhtNodeRpcLocal.ts"],"names":[],"mappings":";;;AACA,0CAAuC;AACvC,kFAAiF;AAWjF,gDAAiE;AASjE,MAAM,MAAM,GAAG,IAAI,cAAM,CAAC,MAAM,CAAC,CAAA;AAEjC,MAAa,eAAe;IAIxB,YAAY,MAA6B;QACrC,IAAI,CAAC,MAAM,GAAG,MAAM,CAAA;IACxB,CAAC;IAED,KAAK,CAAC,eAAe,CAAC,OAA4B,EAAE,OAA0B;QAC1E,IAAI,CAAC,MAAM,CAAC,aAAa,CAAE,OAA0B,CAAC,wBAAyB,CAAC,CAAA;QAChF,MAAM,QAAQ,GAAG;YACb,KAAK,EAAE,IAAI,CAAC,MAAM,CAAC,iBAAiB,CAAC,IAAA,kCAAoB,EAAC,OAAO,CAAC,MAAM,CAAC,EAAE,IAAI,CAAC,MAAM,CAAC,2BAA2B,CAAC;YACnH,SAAS,EAAE,OAAO,CAAC,SAAS;SAC/B,CAAA;QACD,OAAO,QAAQ,CAAA;IACnB,CAAC;IAED,KAAK,CAAC,IAAI,CAAC,OAAoB,EAAE,OAA0B;QACvD,MAAM,CAAC,KAAK,CAAC,yBAAyB,GAAG,IAAA,sDAA2B,EAAE,OAA0B,CAAC,wBAAyB,CAAC,CAAC,CAAA;QAC5H,YAAY,CAAC,GAAG,EAAE;YACd,IAAI,CAAC,MAAM,CAAC,aAAa,CAAE,OAA0B,CAAC,wBAAyB,CAAC,CAAA;QACpF,CAAC,CAAC,CAAA;QACF,MAAM,QAAQ,GAAiB;YAC3B,SAAS,EAAE,OAAO,CAAC,SAAS;SAC/B,CAAA;QACD,OAAO,QAAQ,CAAA;IACnB,CAAC;IAED,KAAK,CAAC,WAAW,CAAC,OAA0B;QACxC,yBAAyB;QACzB,MAAM,MAAM,GAAI,OAA0B,CAAC,wBAAyB,CAAA;QACpE,MAAM,CAAC,KAAK,CAAC,yBAAyB,GAAG,IAAA,sDAA2B,EAAC,MAAM,CAAC,CAAC,CAAA;QAC7E,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,MAAM,CAAC,CAAA;QACjC,OAAO,EAAE,CAAA;IACb,CAAC;CACJ;AAnCD,0CAmCC"}
@@ -1,20 +1,21 @@
1
1
  import { RpcCommunicator } from '@streamr/proto-rpc';
2
- import { NodeID } from '../helpers/nodeId';
2
+ import { DhtAddress, DhtAddressRaw } from '../identifiers';
3
3
  import { PeerDescriptor } from '../proto/packages/dht/protos/DhtRpc';
4
4
  import { DhtNodeRpcClient } from '../proto/packages/dht/protos/DhtRpc.client';
5
5
  import { ServiceID } from '../types/ServiceID';
6
6
  import { RpcRemote } from './contact/RpcRemote';
7
7
  export interface KBucketContact {
8
- id: Uint8Array;
8
+ id: DhtAddressRaw;
9
9
  vectorClock: number;
10
10
  }
11
11
  export declare class DhtNodeRpcRemote extends RpcRemote<DhtNodeRpcClient> implements KBucketContact {
12
12
  private static counter;
13
13
  vectorClock: number;
14
- readonly id: Uint8Array;
14
+ readonly id: DhtAddressRaw;
15
+ private readonly serviceId;
15
16
  constructor(localPeerDescriptor: PeerDescriptor, peerDescriptor: PeerDescriptor, serviceId: ServiceID, rpcCommunicator: RpcCommunicator, rpcRequestTimeout?: number);
16
- getClosestPeers(nodeId: Uint8Array): Promise<PeerDescriptor[]>;
17
+ getClosestPeers(nodeId: DhtAddress): Promise<PeerDescriptor[]>;
17
18
  ping(): Promise<boolean>;
18
19
  leaveNotice(): void;
19
- getNodeId(): NodeID;
20
+ getNodeId(): DhtAddress;
20
21
  }
@@ -3,20 +3,22 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.DhtNodeRpcRemote = void 0;
4
4
  const utils_1 = require("@streamr/utils");
5
5
  const uuid_1 = require("uuid");
6
+ const identifiers_1 = require("../identifiers");
6
7
  const peerIdFromPeerDescriptor_1 = require("../helpers/peerIdFromPeerDescriptor");
7
8
  const DhtRpc_client_1 = require("../proto/packages/dht/protos/DhtRpc.client");
8
9
  const RpcRemote_1 = require("./contact/RpcRemote");
9
10
  const logger = new utils_1.Logger(module);
10
11
  class DhtNodeRpcRemote extends RpcRemote_1.RpcRemote {
11
12
  constructor(localPeerDescriptor, peerDescriptor, serviceId, rpcCommunicator, rpcRequestTimeout) {
12
- super(localPeerDescriptor, peerDescriptor, serviceId, rpcCommunicator, DhtRpc_client_1.DhtNodeRpcClient, rpcRequestTimeout);
13
+ super(localPeerDescriptor, peerDescriptor, rpcCommunicator, DhtRpc_client_1.DhtNodeRpcClient, rpcRequestTimeout);
13
14
  this.id = this.getPeerDescriptor().nodeId;
14
15
  this.vectorClock = DhtNodeRpcRemote.counter++;
16
+ this.serviceId = serviceId;
15
17
  }
16
18
  async getClosestPeers(nodeId) {
17
- logger.trace(`Requesting getClosestPeers on ${this.getServiceId()} from ${(0, peerIdFromPeerDescriptor_1.getNodeIdFromPeerDescriptor)(this.getPeerDescriptor())}`);
19
+ logger.trace(`Requesting getClosestPeers on ${this.serviceId} from ${(0, peerIdFromPeerDescriptor_1.getNodeIdFromPeerDescriptor)(this.getPeerDescriptor())}`);
18
20
  const request = {
19
- nodeId,
21
+ nodeId: (0, identifiers_1.getRawFromDhtAddress)(nodeId),
20
22
  requestId: (0, uuid_1.v4)()
21
23
  };
22
24
  try {
@@ -24,12 +26,12 @@ class DhtNodeRpcRemote extends RpcRemote_1.RpcRemote {
24
26
  return peers.peers;
25
27
  }
26
28
  catch (err) {
27
- logger.trace(`getClosestPeers error ${this.getServiceId()}`, { err });
29
+ logger.trace(`getClosestPeers error ${this.serviceId}`, { err });
28
30
  throw err;
29
31
  }
30
32
  }
31
33
  async ping() {
32
- logger.trace(`Requesting ping on ${this.getServiceId()} from ${(0, peerIdFromPeerDescriptor_1.getNodeIdFromPeerDescriptor)(this.getPeerDescriptor())}`);
34
+ logger.trace(`Requesting ping on ${this.serviceId} from ${(0, peerIdFromPeerDescriptor_1.getNodeIdFromPeerDescriptor)(this.getPeerDescriptor())}`);
33
35
  const request = {
34
36
  requestId: (0, uuid_1.v4)()
35
37
  };
@@ -41,19 +43,16 @@ class DhtNodeRpcRemote extends RpcRemote_1.RpcRemote {
41
43
  }
42
44
  }
43
45
  catch (err) {
44
- logger.trace(`ping failed on ${this.getServiceId()} to ${(0, peerIdFromPeerDescriptor_1.getNodeIdFromPeerDescriptor)(this.getPeerDescriptor())}: ${err}`);
46
+ logger.trace(`ping failed on ${this.serviceId} to ${(0, peerIdFromPeerDescriptor_1.getNodeIdFromPeerDescriptor)(this.getPeerDescriptor())}: ${err}`);
45
47
  }
46
48
  return false;
47
49
  }
48
50
  leaveNotice() {
49
- logger.trace(`Sending leaveNotice on ${this.getServiceId()} from ${(0, peerIdFromPeerDescriptor_1.getNodeIdFromPeerDescriptor)(this.getPeerDescriptor())}`);
50
- const request = {
51
- serviceId: this.getServiceId()
52
- };
51
+ logger.trace(`Sending leaveNotice on ${this.serviceId} from ${(0, peerIdFromPeerDescriptor_1.getNodeIdFromPeerDescriptor)(this.getPeerDescriptor())}`);
53
52
  const options = this.formDhtRpcOptions({
54
53
  notification: true
55
54
  });
56
- this.getClient().leaveNotice(request, options).catch((e) => {
55
+ this.getClient().leaveNotice({}, options).catch((e) => {
57
56
  logger.trace('Failed to send leaveNotice' + e);
58
57
  });
59
58
  }
@@ -1 +1 @@
1
- {"version":3,"file":"DhtNodeRpcRemote.js","sourceRoot":"","sources":["../../../src/dht/DhtNodeRpcRemote.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"DhtNodeRpcRemote.js","sourceRoot":"","sources":["../../../src/dht/DhtNodeRpcRemote.ts"],"names":[],"mappings":"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"}
@@ -3,10 +3,10 @@ import { ExternalFindDataRequest, ExternalFindDataResponse, ExternalStoreDataReq
3
3
  import { ServerCallContext } from '@protobuf-ts/runtime-rpc';
4
4
  import { RecursiveOperationResult } from './recursive-operation/RecursiveOperationManager';
5
5
  import { Any } from '../proto/google/protobuf/any';
6
- import { NodeID } from '../helpers/nodeId';
6
+ import { DhtAddress } from '../identifiers';
7
7
  interface ExternalApiRpcLocalConfig {
8
- executeRecursiveOperation: (targetId: Uint8Array, operation: RecursiveOperation, excludedPeer: PeerDescriptor) => Promise<RecursiveOperationResult>;
9
- storeDataToDht: (key: Uint8Array, data: Any, creator: NodeID) => Promise<PeerDescriptor[]>;
8
+ executeRecursiveOperation: (targetId: DhtAddress, operation: RecursiveOperation, excludedPeer: PeerDescriptor) => Promise<RecursiveOperationResult>;
9
+ storeDataToDht: (key: DhtAddress, data: Any, creator: DhtAddress) => Promise<PeerDescriptor[]>;
10
10
  }
11
11
  export declare class ExternalApiRpcLocal implements IExternalApiRpc {
12
12
  private readonly config;
@@ -3,18 +3,19 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.ExternalApiRpcLocal = void 0;
4
4
  const DhtRpc_1 = require("../proto/packages/dht/protos/DhtRpc");
5
5
  const peerIdFromPeerDescriptor_1 = require("../helpers/peerIdFromPeerDescriptor");
6
+ const identifiers_1 = require("../identifiers");
6
7
  class ExternalApiRpcLocal {
7
8
  constructor(config) {
8
9
  this.config = config;
9
10
  }
10
11
  async externalFindData(findDataRequest, context) {
11
12
  const senderPeerDescriptor = context.incomingSourceDescriptor;
12
- const result = await this.config.executeRecursiveOperation(findDataRequest.key, DhtRpc_1.RecursiveOperation.FETCH_DATA, senderPeerDescriptor);
13
+ const result = await this.config.executeRecursiveOperation((0, identifiers_1.getDhtAddressFromRaw)(findDataRequest.key), DhtRpc_1.RecursiveOperation.FETCH_DATA, senderPeerDescriptor);
13
14
  return DhtRpc_1.ExternalFindDataResponse.create({ entries: result.dataEntries ?? [] });
14
15
  }
15
16
  async externalStoreData(request, context) {
16
17
  const senderPeerDescriptor = context.incomingSourceDescriptor;
17
- const result = await this.config.storeDataToDht(request.key, request.data, (0, peerIdFromPeerDescriptor_1.getNodeIdFromPeerDescriptor)(senderPeerDescriptor));
18
+ const result = await this.config.storeDataToDht((0, identifiers_1.getDhtAddressFromRaw)(request.key), request.data, (0, peerIdFromPeerDescriptor_1.getNodeIdFromPeerDescriptor)(senderPeerDescriptor));
18
19
  return DhtRpc_1.ExternalStoreDataResponse.create({
19
20
  storers: result
20
21
  });
@@ -1 +1 @@
1
- {"version":3,"file":"ExternalApiRpcLocal.js","sourceRoot":"","sources":["../../../src/dht/ExternalApiRpcLocal.ts"],"names":[],"mappings":";;;AACA,gEAO4C;AAM5C,kFAAiF;AAejF,MAAa,mBAAmB;IAI5B,YAAY,MAAiC;QACzC,IAAI,CAAC,MAAM,GAAG,MAAM,CAAA;IACxB,CAAC;IAED,KAAK,CAAC,gBAAgB,CAAC,eAAwC,EAAE,OAA0B;QACvF,MAAM,oBAAoB,GAAI,OAA0B,CAAC,wBAAyB,CAAA;QAClF,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,yBAAyB,CAAC,eAAe,CAAC,GAAG,EAAE,2BAAkB,CAAC,UAAU,EAAE,oBAAoB,CAAC,CAAA;QACpI,OAAO,iCAAwB,CAAC,MAAM,CAAC,EAAE,OAAO,EAAE,MAAM,CAAC,WAAW,IAAI,EAAE,EAAE,CAAC,CAAA;IACjF,CAAC;IAED,KAAK,CAAC,iBAAiB,CAAC,OAAiC,EAAE,OAA0B;QACjF,MAAM,oBAAoB,GAAI,OAA0B,CAAC,wBAAyB,CAAA;QAClF,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,cAAc,CAAC,OAAO,CAAC,GAAG,EAAE,OAAO,CAAC,IAAK,EAAE,IAAA,sDAA2B,EAAC,oBAAoB,CAAC,CAAC,CAAA;QAC9H,OAAO,kCAAyB,CAAC,MAAM,CAAC;YACpC,OAAO,EAAE,MAAM;SAClB,CAAC,CAAA;IACN,CAAC;CACJ;AArBD,kDAqBC"}
1
+ {"version":3,"file":"ExternalApiRpcLocal.js","sourceRoot":"","sources":["../../../src/dht/ExternalApiRpcLocal.ts"],"names":[],"mappings":";;;AACA,gEAO4C;AAM5C,kFAAiF;AACjF,gDAAqD;AAerD,MAAa,mBAAmB;IAI5B,YAAY,MAAiC;QACzC,IAAI,CAAC,MAAM,GAAG,MAAM,CAAA;IACxB,CAAC;IAED,KAAK,CAAC,gBAAgB,CAAC,eAAwC,EAAE,OAA0B;QACvF,MAAM,oBAAoB,GAAI,OAA0B,CAAC,wBAAyB,CAAA;QAClF,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,yBAAyB,CACtD,IAAA,kCAAoB,EAAC,eAAe,CAAC,GAAG,CAAC,EACzC,2BAAkB,CAAC,UAAU,EAC7B,oBAAoB,CACvB,CAAA;QACD,OAAO,iCAAwB,CAAC,MAAM,CAAC,EAAE,OAAO,EAAE,MAAM,CAAC,WAAW,IAAI,EAAE,EAAE,CAAC,CAAA;IACjF,CAAC;IAED,KAAK,CAAC,iBAAiB,CAAC,OAAiC,EAAE,OAA0B;QACjF,MAAM,oBAAoB,GAAI,OAA0B,CAAC,wBAAyB,CAAA;QAClF,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,cAAc,CAC3C,IAAA,kCAAoB,EAAC,OAAO,CAAC,GAAG,CAAC,EACjC,OAAO,CAAC,IAAK,EACb,IAAA,sDAA2B,EAAC,oBAAoB,CAAC,CACpD,CAAA;QACD,OAAO,kCAAyB,CAAC,MAAM,CAAC;YACpC,OAAO,EAAE,MAAM;SAClB,CAAC,CAAA;IACN,CAAC;CACJ;AA7BD,kDA6BC"}
@@ -1,8 +1,9 @@
1
+ import { DhtAddress } from '../identifiers';
1
2
  import { Any } from '../proto/google/protobuf/any';
2
3
  import { DataEntry, PeerDescriptor } from '../proto/packages/dht/protos/DhtRpc';
3
4
  import { ExternalApiRpcClient } from '../proto/packages/dht/protos/DhtRpc.client';
4
5
  import { RpcRemote } from './contact/RpcRemote';
5
6
  export declare class ExternalApiRpcRemote extends RpcRemote<ExternalApiRpcClient> {
6
- externalFindData(key: Uint8Array): Promise<DataEntry[]>;
7
- storeData(key: Uint8Array, data: Any): Promise<PeerDescriptor[]>;
7
+ externalFindData(key: DhtAddress): Promise<DataEntry[]>;
8
+ storeData(key: DhtAddress, data: Any): Promise<PeerDescriptor[]>;
8
9
  }
@@ -1,11 +1,12 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.ExternalApiRpcRemote = void 0;
4
+ const identifiers_1 = require("../identifiers");
4
5
  const RpcRemote_1 = require("./contact/RpcRemote");
5
6
  class ExternalApiRpcRemote extends RpcRemote_1.RpcRemote {
6
7
  async externalFindData(key) {
7
8
  const request = {
8
- key
9
+ key: (0, identifiers_1.getRawFromDhtAddress)(key)
9
10
  };
10
11
  const options = this.formDhtRpcOptions({
11
12
  // TODO use config option or named constant?
@@ -21,7 +22,7 @@ class ExternalApiRpcRemote extends RpcRemote_1.RpcRemote {
21
22
  }
22
23
  async storeData(key, data) {
23
24
  const request = {
24
- key,
25
+ key: (0, identifiers_1.getRawFromDhtAddress)(key),
25
26
  data
26
27
  };
27
28
  const options = this.formDhtRpcOptions({
@@ -1 +1 @@
1
- {"version":3,"file":"ExternalApiRpcRemote.js","sourceRoot":"","sources":["../../../src/dht/ExternalApiRpcRemote.ts"],"names":[],"mappings":";;;AAGA,mDAA+C;AAE/C,MAAa,oBAAqB,SAAQ,qBAA+B;IAErE,KAAK,CAAC,gBAAgB,CAAC,GAAe;QAClC,MAAM,OAAO,GAA4B;YACrC,GAAG;SACN,CAAA;QACD,MAAM,OAAO,GAAG,IAAI,CAAC,iBAAiB,CAAC;YACnC,4CAA4C;YAC5C,OAAO,EAAE,KAAK;SACjB,CAAC,CAAA;QACF,IAAI;YACA,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,SAAS,EAAE,CAAC,gBAAgB,CAAC,OAAO,EAAE,OAAO,CAAC,CAAA;YACtE,OAAO,IAAI,CAAC,OAAO,CAAA;SACtB;QAAC,OAAO,GAAG,EAAE;YACV,OAAO,EAAE,CAAA;SACZ;IACL,CAAC;IAED,KAAK,CAAC,SAAS,CAAC,GAAe,EAAE,IAAS;QACtC,MAAM,OAAO,GAA6B;YACtC,GAAG;YACH,IAAI;SACP,CAAA;QACD,MAAM,OAAO,GAAG,IAAI,CAAC,iBAAiB,CAAC;YACnC,4CAA4C;YAC5C,OAAO,EAAE,KAAK;SACjB,CAAC,CAAA;QACF,IAAI;YACA,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,SAAS,EAAE,CAAC,iBAAiB,CAAC,OAAO,EAAE,OAAO,CAAC,CAAA;YAC3E,OAAO,QAAQ,CAAC,OAAO,CAAA;SAC1B;QAAC,OAAO,GAAG,EAAE;YACV,OAAO,EAAE,CAAA;SACZ;IACL,CAAC;CACJ;AAlCD,oDAkCC"}
1
+ {"version":3,"file":"ExternalApiRpcRemote.js","sourceRoot":"","sources":["../../../src/dht/ExternalApiRpcRemote.ts"],"names":[],"mappings":";;;AAAA,gDAAiE;AAIjE,mDAA+C;AAE/C,MAAa,oBAAqB,SAAQ,qBAA+B;IAErE,KAAK,CAAC,gBAAgB,CAAC,GAAe;QAClC,MAAM,OAAO,GAA4B;YACrC,GAAG,EAAE,IAAA,kCAAoB,EAAC,GAAG,CAAC;SACjC,CAAA;QACD,MAAM,OAAO,GAAG,IAAI,CAAC,iBAAiB,CAAC;YACnC,4CAA4C;YAC5C,OAAO,EAAE,KAAK;SACjB,CAAC,CAAA;QACF,IAAI;YACA,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,SAAS,EAAE,CAAC,gBAAgB,CAAC,OAAO,EAAE,OAAO,CAAC,CAAA;YACtE,OAAO,IAAI,CAAC,OAAO,CAAA;SACtB;QAAC,OAAO,GAAG,EAAE;YACV,OAAO,EAAE,CAAA;SACZ;IACL,CAAC;IAED,KAAK,CAAC,SAAS,CAAC,GAAe,EAAE,IAAS;QACtC,MAAM,OAAO,GAA6B;YACtC,GAAG,EAAE,IAAA,kCAAoB,EAAC,GAAG,CAAC;YAC9B,IAAI;SACP,CAAA;QACD,MAAM,OAAO,GAAG,IAAI,CAAC,iBAAiB,CAAC;YACnC,4CAA4C;YAC5C,OAAO,EAAE,KAAK;SACjB,CAAC,CAAA;QACF,IAAI;YACA,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,SAAS,EAAE,CAAC,iBAAiB,CAAC,OAAO,EAAE,OAAO,CAAC,CAAA;YAC3E,OAAO,QAAQ,CAAC,OAAO,CAAA;SAC1B;QAAC,OAAO,GAAG,EAAE;YACV,OAAO,EAAE,CAAA;SACZ;IACL,CAAC;CACJ;AAlCD,oDAkCC"}