@streamr/trackerless-network 101.0.1 → 101.1.0

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 (37) hide show
  1. package/dist/package.json +6 -6
  2. package/dist/src/NetworkNode.d.ts +7 -0
  3. package/dist/src/NetworkNode.js +10 -0
  4. package/dist/src/NetworkNode.js.map +1 -1
  5. package/dist/src/exports.d.ts +1 -0
  6. package/dist/src/logic/ExternalNetworkRpc.d.ts +16 -0
  7. package/dist/src/logic/ExternalNetworkRpc.js +23 -0
  8. package/dist/src/logic/ExternalNetworkRpc.js.map +1 -0
  9. package/dist/src/logic/PeerDescriptorStoreManager.js +3 -3
  10. package/dist/src/logic/PeerDescriptorStoreManager.js.map +1 -1
  11. package/dist/src/logic/StreamPartNetworkSplitAvoidance.js +1 -1
  12. package/dist/src/logic/StreamPartNetworkSplitAvoidance.js.map +1 -1
  13. package/dist/src/logic/StreamPartReconnect.js +3 -1
  14. package/dist/src/logic/StreamPartReconnect.js.map +1 -1
  15. package/dist/src/logic/inspect/Inspector.js +1 -1
  16. package/dist/src/logic/inspect/Inspector.js.map +1 -1
  17. package/dist/src/logic/propagation/FifoMapWithTTL.d.ts +1 -8
  18. package/dist/src/logic/propagation/FifoMapWithTTL.js +9 -1
  19. package/dist/src/logic/propagation/FifoMapWithTTL.js.map +1 -1
  20. package/dist/src/logic/propagation/PropagationTaskStore.js +1 -1
  21. package/dist/src/logic/propagation/PropagationTaskStore.js.map +1 -1
  22. package/dist/src/logic/proxy/ProxyClient.js +1 -1
  23. package/dist/src/logic/proxy/ProxyClient.js.map +1 -1
  24. package/package.json +6 -6
  25. package/src/NetworkNode.ts +26 -0
  26. package/src/exports.ts +1 -1
  27. package/src/logic/ExternalNetworkRpc.ts +43 -0
  28. package/src/logic/PeerDescriptorStoreManager.ts +3 -3
  29. package/src/logic/StreamPartNetworkSplitAvoidance.ts +1 -1
  30. package/src/logic/StreamPartReconnect.ts +3 -2
  31. package/src/logic/inspect/Inspector.ts +1 -1
  32. package/src/logic/propagation/FifoMapWithTTL.ts +10 -2
  33. package/src/logic/propagation/PropagationTaskStore.ts +1 -1
  34. package/src/logic/proxy/ProxyClient.ts +1 -1
  35. package/test/end-to-end/external-network-rpc.test.ts +67 -0
  36. package/test/unit/ExternalNetworkRpc.test.ts +48 -0
  37. package/test/unit/FifoMapWithTtl.test.ts +24 -0
package/dist/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@streamr/trackerless-network",
3
- "version": "101.0.1",
3
+ "version": "101.1.0",
4
4
  "description": "Minimal and extendable implementation of the Streamr Network node.",
5
5
  "repository": {
6
6
  "type": "git",
@@ -30,10 +30,10 @@
30
30
  "dependencies": {
31
31
  "@protobuf-ts/runtime": "^2.8.2",
32
32
  "@protobuf-ts/runtime-rpc": "^2.8.2",
33
- "@streamr/dht": "101.0.1",
34
- "@streamr/proto-rpc": "101.0.1",
35
- "@streamr/test-utils": "101.0.1",
36
- "@streamr/utils": "101.0.1",
33
+ "@streamr/dht": "101.1.0",
34
+ "@streamr/proto-rpc": "101.1.0",
35
+ "@streamr/test-utils": "101.1.0",
36
+ "@streamr/utils": "101.1.0",
37
37
  "eventemitter3": "^5.0.0",
38
38
  "lodash": "^4.17.21",
39
39
  "uuid": "^10.0.0",
@@ -41,7 +41,7 @@
41
41
  },
42
42
  "devDependencies": {
43
43
  "@streamr/browser-test-runner": "^0.0.1",
44
- "@types/lodash": "^4.17.6",
44
+ "@types/lodash": "^4.17.7",
45
45
  "@types/uuid": "^10.0.0",
46
46
  "@types/yallist": "^4.0.1",
47
47
  "expect": "^29.6.2",
@@ -2,6 +2,10 @@ import { DhtAddress, PeerDescriptor } from '@streamr/dht';
2
2
  import { EthereumAddress, MetricsContext, StreamPartID } from '@streamr/utils';
3
3
  import { NetworkOptions, NetworkStack, NodeInfo } from './NetworkStack';
4
4
  import { ProxyDirection, StreamMessage } from './proto/packages/trackerless-network/protos/NetworkRpc';
5
+ import { ExternalRpcClient, ExternalRpcClientClass } from './logic/ExternalNetworkRpc';
6
+ import { IMessageType } from '@protobuf-ts/runtime';
7
+ import { ServerCallContext } from '@protobuf-ts/runtime-rpc';
8
+ import { ProtoRpcClient } from '@streamr/proto-rpc';
5
9
  export declare const createNetworkNode: (opts: NetworkOptions) => NetworkNode;
6
10
  /**
7
11
  * Convenience wrapper for building client-facing functionality. Used by client.
@@ -9,6 +13,7 @@ export declare const createNetworkNode: (opts: NetworkOptions) => NetworkNode;
9
13
  export declare class NetworkNode {
10
14
  readonly stack: NetworkStack;
11
15
  private stopped;
16
+ private externalNetworkRpc?;
12
17
  start(doJoin?: boolean): Promise<void>;
13
18
  inspect(node: PeerDescriptor, streamPartId: StreamPartID): Promise<boolean>;
14
19
  broadcast(msg: StreamMessage): Promise<void>;
@@ -32,4 +37,6 @@ export declare class NetworkNode {
32
37
  getStreamParts(): StreamPartID[];
33
38
  fetchNodeInfo(node: PeerDescriptor): Promise<NodeInfo>;
34
39
  getDiagnosticInfo(): Record<string, unknown>;
40
+ registerExternalNetworkRpcMethod<RequestClass extends IMessageType<RequestType>, ResponseClass extends IMessageType<ResponseType>, RequestType extends object, ResponseType extends object>(request: RequestClass, response: ResponseClass, name: string, fn: (req: RequestType, context: ServerCallContext) => Promise<ResponseType>): void;
41
+ createExternalRpcClient<T extends ExternalRpcClient>(clientClass: ExternalRpcClientClass<T>): ProtoRpcClient<T>;
35
42
  }
@@ -2,6 +2,7 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.NetworkNode = exports.createNetworkNode = void 0;
4
4
  const NetworkStack_1 = require("./NetworkStack");
5
+ const ExternalNetworkRpc_1 = require("./logic/ExternalNetworkRpc");
5
6
  const createNetworkNode = (opts) => {
6
7
  return new NetworkNode(new NetworkStack_1.NetworkStack(opts));
7
8
  };
@@ -12,12 +13,14 @@ exports.createNetworkNode = createNetworkNode;
12
13
  class NetworkNode {
13
14
  stack;
14
15
  stopped = false;
16
+ externalNetworkRpc;
15
17
  /** @internal */
16
18
  constructor(stack) {
17
19
  this.stack = stack;
18
20
  }
19
21
  async start(doJoin) {
20
22
  await this.stack.start(doJoin);
23
+ this.externalNetworkRpc = new ExternalNetworkRpc_1.ExternalNetworkRpc(this.stack.getControlLayerNode().getTransport());
21
24
  }
22
25
  async inspect(node, streamPartId) {
23
26
  return this.stack.getContentDeliveryManager().inspect(node, streamPartId);
@@ -57,6 +60,7 @@ class NetworkNode {
57
60
  }
58
61
  async stop() {
59
62
  this.stopped = true;
63
+ this.externalNetworkRpc.destroy();
60
64
  await this.stack.stop();
61
65
  }
62
66
  getPeerDescriptor() {
@@ -81,6 +85,12 @@ class NetworkNode {
81
85
  getDiagnosticInfo() {
82
86
  return {};
83
87
  }
88
+ registerExternalNetworkRpcMethod(request, response, name, fn) {
89
+ this.externalNetworkRpc.registerRpcMethod(request, response, name, fn);
90
+ }
91
+ createExternalRpcClient(clientClass) {
92
+ return this.externalNetworkRpc.createRpcClient(clientClass);
93
+ }
84
94
  }
85
95
  exports.NetworkNode = NetworkNode;
86
96
  //# sourceMappingURL=NetworkNode.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"NetworkNode.js","sourceRoot":"","sources":["../../src/NetworkNode.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"NetworkNode.js","sourceRoot":"","sources":["../../src/NetworkNode.ts"],"names":[],"mappings":"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"}
@@ -2,3 +2,4 @@ export { NetworkNode, createNetworkNode } from './NetworkNode';
2
2
  export { NetworkOptions, NetworkStack, NodeInfo } from './NetworkStack';
3
3
  export { ContentDeliveryManagerOptions, streamPartIdToDataKey } from './logic/ContentDeliveryManager';
4
4
  export { ContentType, EncryptionType, GroupKey, GroupKeyRequest, GroupKeyResponse, MessageID, MessageRef, ProxyDirection, SignatureType, StreamMessage } from './proto/packages/trackerless-network/protos/NetworkRpc';
5
+ export { ExternalRpcClient, ExternalRpcClientClass } from './logic/ExternalNetworkRpc';
@@ -0,0 +1,16 @@
1
+ import { IMessageType } from '@protobuf-ts/runtime';
2
+ import { ServerCallContext, ServiceInfo } from '@protobuf-ts/runtime-rpc';
3
+ import { ITransport } from '@streamr/dht';
4
+ import { ClassType, ClientTransport, ProtoRpcClient } from '@streamr/proto-rpc';
5
+ export declare const SERVICE_ID = "external-network-service";
6
+ export type ExternalRpcClient = ServiceInfo & ClassType;
7
+ export type ExternalRpcClientClass<T extends ExternalRpcClient> = {
8
+ new (clientTransport: ClientTransport): T;
9
+ };
10
+ export declare class ExternalNetworkRpc {
11
+ private readonly rpcCommunicator;
12
+ constructor(transport: ITransport);
13
+ registerRpcMethod<RequestClass extends IMessageType<RequestType>, ResponseClass extends IMessageType<ResponseType>, RequestType extends object, ResponseType extends object>(request: RequestClass, response: ResponseClass, name: string, fn: (req: RequestType, context: ServerCallContext) => Promise<ResponseType>): void;
14
+ createRpcClient<T extends ExternalRpcClient>(clientClass: ExternalRpcClientClass<T>): ProtoRpcClient<T>;
15
+ destroy(): void;
16
+ }
@@ -0,0 +1,23 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.ExternalNetworkRpc = exports.SERVICE_ID = void 0;
4
+ const dht_1 = require("@streamr/dht");
5
+ const proto_rpc_1 = require("@streamr/proto-rpc");
6
+ exports.SERVICE_ID = 'external-network-service';
7
+ class ExternalNetworkRpc {
8
+ rpcCommunicator;
9
+ constructor(transport) {
10
+ this.rpcCommunicator = new dht_1.ListeningRpcCommunicator(exports.SERVICE_ID, transport);
11
+ }
12
+ registerRpcMethod(request, response, name, fn) {
13
+ this.rpcCommunicator.registerRpcMethod(request, response, name, fn);
14
+ }
15
+ createRpcClient(clientClass) {
16
+ return (0, proto_rpc_1.toProtoRpcClient)(new clientClass(this.rpcCommunicator.getRpcClientTransport()));
17
+ }
18
+ destroy() {
19
+ this.rpcCommunicator.destroy();
20
+ }
21
+ }
22
+ exports.ExternalNetworkRpc = ExternalNetworkRpc;
23
+ //# sourceMappingURL=ExternalNetworkRpc.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ExternalNetworkRpc.js","sourceRoot":"","sources":["../../../src/logic/ExternalNetworkRpc.ts"],"names":[],"mappings":";;;AAEA,sCAAmE;AACnE,kDAAiG;AAEpF,QAAA,UAAU,GAAG,0BAA0B,CAAA;AAOpD,MAAa,kBAAkB;IAEV,eAAe,CAA0B;IAE1D,YAAY,SAAqB;QAC7B,IAAI,CAAC,eAAe,GAAG,IAAI,8BAAwB,CAAC,kBAAU,EAAE,SAAS,CAAC,CAAA;IAC9E,CAAC;IAED,iBAAiB,CAMb,OAAqB,EACrB,QAAuB,EACvB,IAAY,EACZ,EAA2E;QAE3E,IAAI,CAAC,eAAe,CAAC,iBAAiB,CAAC,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,EAAE,CAAC,CAAA;IACvE,CAAC;IAED,eAAe,CAA8B,WAAsC;QAC/E,OAAO,IAAA,4BAAgB,EAAC,IAAI,WAAW,CAAC,IAAI,CAAC,eAAe,CAAC,qBAAqB,EAAE,CAAC,CAAC,CAAA;IAC1F,CAAC;IAED,OAAO;QACH,IAAI,CAAC,eAAe,CAAC,OAAO,EAAE,CAAA;IAClC,CAAC;CAEJ;AA9BD,gDA8BC"}
@@ -28,7 +28,7 @@ class PeerDescriptorStoreManager {
28
28
  const result = await this.options.fetchDataFromDht(this.options.key);
29
29
  return parsePeerDescriptor(result);
30
30
  }
31
- catch (err) {
31
+ catch {
32
32
  return [];
33
33
  }
34
34
  }
@@ -47,7 +47,7 @@ class PeerDescriptorStoreManager {
47
47
  try {
48
48
  await this.options.storeDataToDht(this.options.key, dataToStore);
49
49
  }
50
- catch (err) {
50
+ catch {
51
51
  logger.warn('Failed to store local node', { key: this.options.key });
52
52
  }
53
53
  }
@@ -61,7 +61,7 @@ class PeerDescriptorStoreManager {
61
61
  await this.storeLocalNode();
62
62
  }
63
63
  }
64
- catch (err) {
64
+ catch {
65
65
  logger.debug('Failed to keep local node', { key: this.options.key });
66
66
  }
67
67
  }, this.options.storeInterval ?? 60000, false, this.abortController.signal);
@@ -1 +1 @@
1
- {"version":3,"file":"PeerDescriptorStoreManager.js","sourceRoot":"","sources":["../../../src/logic/PeerDescriptorStoreManager.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"PeerDescriptorStoreManager.js","sourceRoot":"","sources":["../../../src/logic/PeerDescriptorStoreManager.ts"],"names":[],"mappings":"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"}
@@ -21,7 +21,7 @@ const exponentialRunOff = async (task, description, abortSignal, baseDelay = 500
21
21
  try {
22
22
  await task();
23
23
  }
24
- catch (e) {
24
+ catch {
25
25
  logger.debug(`${description} failed, retrying in ${delay} ms`);
26
26
  }
27
27
  try { // Abort controller throws unexpected errors in destroy?
@@ -1 +1 @@
1
- {"version":3,"file":"StreamPartNetworkSplitAvoidance.js","sourceRoot":"","sources":["../../../src/logic/StreamPartNetworkSplitAvoidance.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"StreamPartNetworkSplitAvoidance.js","sourceRoot":"","sources":["../../../src/logic/StreamPartNetworkSplitAvoidance.ts"],"names":[],"mappings":"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"}
@@ -2,6 +2,7 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.StreamPartReconnect = void 0;
4
4
  const utils_1 = require("@streamr/utils");
5
+ const PeerDescriptorStoreManager_1 = require("./PeerDescriptorStoreManager");
5
6
  const DEFAULT_RECONNECT_INTERVAL = 30 * 1000;
6
7
  class StreamPartReconnect {
7
8
  abortController;
@@ -16,7 +17,8 @@ class StreamPartReconnect {
16
17
  await (0, utils_1.scheduleAtInterval)(async () => {
17
18
  const entryPoints = await this.peerDescriptorStoreManager.fetchNodes();
18
19
  await this.discoveryLayerNode.joinDht(entryPoints);
19
- if (this.peerDescriptorStoreManager.isLocalNodeStored()) {
20
+ // Is is necessary to store the node as an entry point here?
21
+ if (!this.peerDescriptorStoreManager.isLocalNodeStored() && entryPoints.length < PeerDescriptorStoreManager_1.MAX_NODE_COUNT) {
20
22
  await this.peerDescriptorStoreManager.storeAndKeepLocalNode();
21
23
  }
22
24
  if (this.discoveryLayerNode.getNeighborCount() > 0) {
@@ -1 +1 @@
1
- {"version":3,"file":"StreamPartReconnect.js","sourceRoot":"","sources":["../../../src/logic/StreamPartReconnect.ts"],"names":[],"mappings":";;;AAAA,0CAAmD;AAInD,MAAM,0BAA0B,GAAG,EAAE,GAAG,IAAI,CAAA;AAC5C,MAAa,mBAAmB;IACpB,eAAe,CAAkB;IACxB,kBAAkB,CAAoB;IACtC,0BAA0B,CAA4B;IAEvE,YAAY,kBAAsC,EAAE,0BAAsD;QACtG,IAAI,CAAC,kBAAkB,GAAG,kBAAkB,CAAA;QAC5C,IAAI,CAAC,0BAA0B,GAAG,0BAA0B,CAAA;IAChE,CAAC;IAED,KAAK,CAAC,SAAS,CAAC,OAAO,GAAG,0BAA0B;QAChD,IAAI,CAAC,eAAe,GAAG,IAAI,eAAe,EAAE,CAAA;QAC5C,MAAM,IAAA,0BAAkB,EAAC,KAAK,IAAI,EAAE;YAChC,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC,0BAA0B,CAAC,UAAU,EAAE,CAAA;YACtE,MAAM,IAAI,CAAC,kBAAkB,CAAC,OAAO,CAAC,WAAW,CAAC,CAAA;YAClD,IAAI,IAAI,CAAC,0BAA0B,CAAC,iBAAiB,EAAE,EAAE,CAAC;gBACtD,MAAM,IAAI,CAAC,0BAA0B,CAAC,qBAAqB,EAAE,CAAA;YACjE,CAAC;YACD,IAAI,IAAI,CAAC,kBAAkB,CAAC,gBAAgB,EAAE,GAAG,CAAC,EAAE,CAAC;gBACjD,IAAI,CAAC,eAAgB,CAAC,KAAK,EAAE,CAAA;YACjC,CAAC;QACL,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,IAAI,CAAC,eAAe,CAAC,MAAM,CAAC,CAAA;IAClD,CAAC;IAED,SAAS;QACL,OAAO,IAAI,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,eAAe,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,CAAA;IAC9E,CAAC;IAED,OAAO;QACH,IAAI,CAAC,eAAe,EAAE,KAAK,EAAE,CAAA;IACjC,CAAC;CACJ;AA/BD,kDA+BC"}
1
+ {"version":3,"file":"StreamPartReconnect.js","sourceRoot":"","sources":["../../../src/logic/StreamPartReconnect.ts"],"names":[],"mappings":";;;AAAA,0CAAmD;AACnD,6EAAyF;AAGzF,MAAM,0BAA0B,GAAG,EAAE,GAAG,IAAI,CAAA;AAC5C,MAAa,mBAAmB;IACpB,eAAe,CAAkB;IACxB,kBAAkB,CAAoB;IACtC,0BAA0B,CAA4B;IAEvE,YAAY,kBAAsC,EAAE,0BAAsD;QACtG,IAAI,CAAC,kBAAkB,GAAG,kBAAkB,CAAA;QAC5C,IAAI,CAAC,0BAA0B,GAAG,0BAA0B,CAAA;IAChE,CAAC;IAED,KAAK,CAAC,SAAS,CAAC,OAAO,GAAG,0BAA0B;QAChD,IAAI,CAAC,eAAe,GAAG,IAAI,eAAe,EAAE,CAAA;QAC5C,MAAM,IAAA,0BAAkB,EAAC,KAAK,IAAI,EAAE;YAChC,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC,0BAA0B,CAAC,UAAU,EAAE,CAAA;YACtE,MAAM,IAAI,CAAC,kBAAkB,CAAC,OAAO,CAAC,WAAW,CAAC,CAAA;YAClD,4DAA4D;YAC5D,IAAI,CAAC,IAAI,CAAC,0BAA0B,CAAC,iBAAiB,EAAE,IAAI,WAAW,CAAC,MAAM,GAAG,2CAAc,EAAE,CAAC;gBAC9F,MAAM,IAAI,CAAC,0BAA0B,CAAC,qBAAqB,EAAE,CAAA;YACjE,CAAC;YACD,IAAI,IAAI,CAAC,kBAAkB,CAAC,gBAAgB,EAAE,GAAG,CAAC,EAAE,CAAC;gBACjD,IAAI,CAAC,eAAgB,CAAC,KAAK,EAAE,CAAA;YACjC,CAAC;QACL,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,IAAI,CAAC,eAAe,CAAC,MAAM,CAAC,CAAA;IAClD,CAAC;IAED,SAAS;QACL,OAAO,IAAI,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,eAAe,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,CAAA;IAC9E,CAAC;IAED,OAAO;QACH,IAAI,CAAC,eAAe,EAAE,KAAK,EAAE,CAAA;IACjC,CAAC;CACJ;AAhCD,kDAgCC"}
@@ -49,7 +49,7 @@ class Inspector {
49
49
  await (0, utils_1.waitForEvent3)(session, 'done', this.inspectionTimeout);
50
50
  success = true;
51
51
  }
52
- catch (err) {
52
+ catch {
53
53
  logger.trace('Inspect session timed out, removing');
54
54
  }
55
55
  finally {
@@ -1 +1 @@
1
- {"version":3,"file":"Inspector.js","sourceRoot":"","sources":["../../../../src/logic/inspect/Inspector.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Inspector.js","sourceRoot":"","sources":["../../../../src/logic/inspect/Inspector.ts"],"names":[],"mappings":";;;AAAA,sCAA0I;AAC1I,0CAAoE;AAEpE,yGAAgH;AAChH,uGAAmG;AACnG,qDAAiF;AAYjF,MAAM,MAAM,GAAG,IAAI,cAAM,CAAC,MAAM,CAAC,CAAA;AACjC,MAAM,eAAe,GAAG,EAAE,GAAG,IAAI,CAAA;AAEjC,MAAa,SAAS;IAED,QAAQ,GAAoC,IAAI,GAAG,EAAE,CAAA;IACrD,YAAY,CAAc;IAC1B,mBAAmB,CAAgB;IACnC,eAAe,CAA0B;IACzC,gBAAgB,CAAkB;IAClC,iBAAiB,CAAQ;IACzB,qBAAqB,CAAmE;IACxF,sBAAsB,CAAmE;IAE1G,YAAY,OAAyB;QACjC,IAAI,CAAC,YAAY,GAAG,OAAO,CAAC,YAAY,CAAA;QACxC,IAAI,CAAC,mBAAmB,GAAG,OAAO,CAAC,mBAAmB,CAAA;QACtD,IAAI,CAAC,eAAe,GAAG,OAAO,CAAC,eAAe,CAAA;QAC9C,IAAI,CAAC,gBAAgB,GAAG,OAAO,CAAC,gBAAgB,CAAA;QAChD,IAAI,CAAC,iBAAiB,GAAG,OAAO,CAAC,iBAAiB,IAAI,eAAe,CAAA;QACrE,IAAI,CAAC,qBAAqB,GAAG,OAAO,CAAC,qBAAqB,IAAI,IAAI,CAAC,4BAA4B,CAAA;QAC/F,IAAI,CAAC,sBAAsB,GAAG,OAAO,CAAC,sBAAsB,IAAI,IAAI,CAAC,6BAA6B,CAAA;IACtG,CAAC;IAED,KAAK,CAAC,4BAA4B,CAAC,cAA8B,EAAE,MAAc;QAC7E,MAAM,SAAS,GAAG,IAAI,2DAA4B,CAC9C,IAAI,CAAC,mBAAmB,EACxB,cAAc,EACd,IAAI,CAAC,eAAe,EACpB,gDAA4B,CAC/B,CAAA;QACD,MAAM,SAAS,CAAC,cAAc,EAAE,CAAA;QAChC,IAAI,CAAC,gBAAgB,CAAC,kBAAkB,CAAC,IAAA,iCAA2B,EAAC,cAAc,CAAC,EAAE,MAAM,CAAC,CAAA;IACjG,CAAC;IAED,KAAK,CAAC,6BAA6B,CAAC,cAA8B,EAAE,MAAc;QAC9E,MAAM,SAAS,GAAG,IAAI,2DAA4B,CAC9C,IAAI,CAAC,mBAAmB,EACxB,cAAc,EACd,IAAI,CAAC,eAAe,EACpB,gDAA4B,CAC/B,CAAA;QACD,MAAM,SAAS,CAAC,eAAe,EAAE,CAAA;QACjC,IAAI,CAAC,gBAAgB,CAAC,oBAAoB,CAAC,IAAA,iCAA2B,EAAC,cAAc,CAAC,EAAE,MAAM,CAAC,CAAA;IACnG,CAAC;IAED,KAAK,CAAC,OAAO,CAAC,cAA8B;QACxC,MAAM,MAAM,GAAG,IAAA,iCAA2B,EAAC,cAAc,CAAC,CAAA;QAC1D,MAAM,OAAO,GAAG,IAAI,+BAAc,CAAC;YAC/B,aAAa,EAAE,MAAM;SACxB,CAAC,CAAA;QACF,MAAM,MAAM,GAAG,aAAa,IAAI,CAAC,YAAY,EAAE,CAAA;QAC/C,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;QAClC,MAAM,IAAI,CAAC,qBAAqB,CAAC,cAAc,EAAE,MAAM,CAAC,CAAA;QACxD,IAAI,OAAO,GAAG,KAAK,CAAA;QACnB,IAAI,CAAC;YACD,MAAM,IAAA,qBAAa,EAAuB,OAAO,EAAE,MAAM,EAAE,IAAI,CAAC,iBAAiB,CAAC,CAAA;YAClF,OAAO,GAAG,IAAI,CAAA;QAClB,CAAC;QAAC,MAAM,CAAC;YACL,MAAM,CAAC,KAAK,CAAC,qCAAqC,CAAC,CAAA;QACvD,CAAC;gBAAS,CAAC;YACP,MAAM,IAAI,CAAC,sBAAsB,CAAC,cAAc,EAAE,MAAM,CAAC,CAAA;YACzD,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,MAAM,CAAC,CAAA;QAChC,CAAC;QACD,OAAO,OAAO,IAAI,OAAO,CAAC,wBAAwB,EAAE,GAAG,CAAC,IAAI,OAAO,CAAC,yBAAyB,EAAE,CAAA;IACnG,CAAC;IAED,WAAW,CAAC,MAAkB,EAAE,SAAoB;QAChD,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,WAAW,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC,CAAA;IAC9E,CAAC;IAED,WAAW,CAAC,MAAkB;QAC1B,OAAO,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,MAAM,CAAC,CAAA;IACpC,CAAC;IAED,IAAI;QACA,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE;YAC9B,OAAO,CAAC,IAAI,EAAE,CAAA;QAClB,CAAC,CAAC,CAAA;QACF,IAAI,CAAC,QAAQ,CAAC,KAAK,EAAE,CAAA;IACzB,CAAC;CAEJ;AA/ED,8BA+EC"}
@@ -1,9 +1,3 @@
1
- import { Node } from 'yallist';
2
- interface Item<K, V> {
3
- value: V;
4
- dropQueueNode: Node<K>;
5
- expiresAt: number;
6
- }
7
1
  export interface FifoMapWithTtlOptions<K> {
8
2
  ttlInMs: number;
9
3
  maxSize: number;
@@ -31,6 +25,5 @@ export declare class FifoMapWithTTL<K, V> {
31
25
  set(key: K, value: V): void;
32
26
  delete(key: K): void;
33
27
  get(key: K): V | undefined;
34
- values(): Item<K, V>[];
28
+ values(): V[];
35
29
  }
36
- export {};
@@ -78,7 +78,15 @@ class FifoMapWithTTL {
78
78
  return item.value;
79
79
  }
80
80
  values() {
81
- return [...this.items.values()];
81
+ const keys = [...this.items.keys()];
82
+ const values = [];
83
+ for (const key of keys) {
84
+ const value = this.get(key);
85
+ if (value !== undefined) {
86
+ values.push(value);
87
+ }
88
+ }
89
+ return values;
82
90
  }
83
91
  }
84
92
  exports.FifoMapWithTTL = FifoMapWithTTL;
@@ -1 +1 @@
1
- {"version":3,"file":"FifoMapWithTTL.js","sourceRoot":"","sources":["../../../../src/logic/propagation/FifoMapWithTTL.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"FifoMapWithTTL.js","sourceRoot":"","sources":["../../../../src/logic/propagation/FifoMapWithTTL.ts"],"names":[],"mappings":"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"}
@@ -19,7 +19,7 @@ class PropagationTaskStore {
19
19
  });
20
20
  }
21
21
  get() {
22
- return this.tasks.values().map((task) => task.value);
22
+ return this.tasks.values();
23
23
  }
24
24
  add(task) {
25
25
  const messageId = task.message.messageId;
@@ -1 +1 @@
1
- {"version":3,"file":"PropagationTaskStore.js","sourceRoot":"","sources":["../../../../src/logic/propagation/PropagationTaskStore.ts"],"names":[],"mappings":";;;AAEA,qDAAiD;AAQjD;;;;;;;GAOG;AACH,MAAa,oBAAoB;IACZ,KAAK,CAA6C;IAEnE,YAAY,OAAe,EAAE,QAAgB;QACzC,IAAI,CAAC,KAAK,GAAG,IAAI,+BAAc,CAA8B;YACzD,OAAO;YACP,OAAO,EAAE,QAAQ;SACpB,CAAC,CAAA;IACN,CAAC;IAED,GAAG;QACC,OAAO,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;IACxD,CAAC;IAED,GAAG,CAAC,IAAqB;QACrB,MAAM,SAAS,GAAG,IAAI,CAAC,OAAO,CAAC,SAAU,CAAA;QACzC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,SAAS,EAAE,IAAI,CAAC,CAAA;IACnC,CAAC;IAED,MAAM,CAAC,SAAqB;QACxB,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,SAAS,CAAC,CAAA,CAAC,sCAAsC;IACvE,CAAC;CACJ;AAtBD,oDAsBC"}
1
+ {"version":3,"file":"PropagationTaskStore.js","sourceRoot":"","sources":["../../../../src/logic/propagation/PropagationTaskStore.ts"],"names":[],"mappings":";;;AAEA,qDAAiD;AAQjD;;;;;;;GAOG;AACH,MAAa,oBAAoB;IACZ,KAAK,CAA6C;IAEnE,YAAY,OAAe,EAAE,QAAgB;QACzC,IAAI,CAAC,KAAK,GAAG,IAAI,+BAAc,CAA8B;YACzD,OAAO;YACP,OAAO,EAAE,QAAQ;SACpB,CAAC,CAAA;IACN,CAAC;IAED,GAAG;QACC,OAAO,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE,CAAA;IAC9B,CAAC;IAED,GAAG,CAAC,IAAqB;QACrB,MAAM,SAAS,GAAG,IAAI,CAAC,OAAO,CAAC,SAAU,CAAA;QACzC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,SAAS,EAAE,IAAI,CAAC,CAAA;IACnC,CAAC;IAED,MAAM,CAAC,SAAqB;QACxB,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,SAAS,CAAC,CAAA,CAAC,sCAAsC;IACvE,CAAC;CACJ;AAtBD,oDAsBC"}
@@ -22,7 +22,7 @@ const retry = async (task, description, abortSignal, delay = 10000) => {
22
22
  const result = await task();
23
23
  return result;
24
24
  }
25
- catch (e) {
25
+ catch {
26
26
  logger.warn(`Failed ${description} (retrying after delay)`, {
27
27
  delayInMs: delay
28
28
  });
@@ -1 +1 @@
1
- {"version":3,"file":"ProxyClient.js","sourceRoot":"","sources":["../../../../src/logic/proxy/ProxyClient.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ProxyClient.js","sourceRoot":"","sources":["../../../../src/logic/proxy/ProxyClient.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@streamr/trackerless-network",
3
- "version": "101.0.1",
3
+ "version": "101.1.0",
4
4
  "description": "Minimal and extendable implementation of the Streamr Network node.",
5
5
  "repository": {
6
6
  "type": "git",
@@ -30,10 +30,10 @@
30
30
  "dependencies": {
31
31
  "@protobuf-ts/runtime": "^2.8.2",
32
32
  "@protobuf-ts/runtime-rpc": "^2.8.2",
33
- "@streamr/dht": "101.0.1",
34
- "@streamr/proto-rpc": "101.0.1",
35
- "@streamr/test-utils": "101.0.1",
36
- "@streamr/utils": "101.0.1",
33
+ "@streamr/dht": "101.1.0",
34
+ "@streamr/proto-rpc": "101.1.0",
35
+ "@streamr/test-utils": "101.1.0",
36
+ "@streamr/utils": "101.1.0",
37
37
  "eventemitter3": "^5.0.0",
38
38
  "lodash": "^4.17.21",
39
39
  "uuid": "^10.0.0",
@@ -41,7 +41,7 @@
41
41
  },
42
42
  "devDependencies": {
43
43
  "@streamr/browser-test-runner": "^0.0.1",
44
- "@types/lodash": "^4.17.6",
44
+ "@types/lodash": "^4.17.7",
45
45
  "@types/uuid": "^10.0.0",
46
46
  "@types/yallist": "^4.0.1",
47
47
  "expect": "^29.6.2",
@@ -2,6 +2,10 @@ import { DhtAddress, PeerDescriptor } from '@streamr/dht'
2
2
  import { EthereumAddress, MetricsContext, StreamPartID } from '@streamr/utils'
3
3
  import { NetworkOptions, NetworkStack, NodeInfo } from './NetworkStack'
4
4
  import { ProxyDirection, StreamMessage } from './proto/packages/trackerless-network/protos/NetworkRpc'
5
+ import { ExternalNetworkRpc, ExternalRpcClient, ExternalRpcClientClass } from './logic/ExternalNetworkRpc'
6
+ import { IMessageType } from '@protobuf-ts/runtime'
7
+ import { ServerCallContext } from '@protobuf-ts/runtime-rpc'
8
+ import { ProtoRpcClient } from '@streamr/proto-rpc'
5
9
 
6
10
  export const createNetworkNode = (opts: NetworkOptions): NetworkNode => {
7
11
  return new NetworkNode(new NetworkStack(opts))
@@ -14,6 +18,7 @@ export class NetworkNode {
14
18
 
15
19
  readonly stack: NetworkStack
16
20
  private stopped = false
21
+ private externalNetworkRpc?: ExternalNetworkRpc
17
22
 
18
23
  /** @internal */
19
24
  constructor(stack: NetworkStack) {
@@ -22,6 +27,7 @@ export class NetworkNode {
22
27
 
23
28
  async start(doJoin?: boolean): Promise<void> {
24
29
  await this.stack.start(doJoin)
30
+ this.externalNetworkRpc = new ExternalNetworkRpc(this.stack.getControlLayerNode().getTransport())
25
31
  }
26
32
 
27
33
  async inspect(node: PeerDescriptor, streamPartId: StreamPartID): Promise<boolean> {
@@ -79,6 +85,7 @@ export class NetworkNode {
79
85
 
80
86
  async stop(): Promise<void> {
81
87
  this.stopped = true
88
+ this.externalNetworkRpc!.destroy()
82
89
  await this.stack.stop()
83
90
  }
84
91
 
@@ -110,4 +117,23 @@ export class NetworkNode {
110
117
  getDiagnosticInfo(): Record<string, unknown> {
111
118
  return {}
112
119
  }
120
+
121
+ registerExternalNetworkRpcMethod<
122
+ RequestClass extends IMessageType<RequestType>,
123
+ ResponseClass extends IMessageType<ResponseType>,
124
+ RequestType extends object,
125
+ ResponseType extends object
126
+ >(
127
+ request: RequestClass,
128
+ response: ResponseClass,
129
+ name: string,
130
+ fn: (req: RequestType, context: ServerCallContext) => Promise<ResponseType>
131
+ ): void {
132
+ this.externalNetworkRpc!.registerRpcMethod(request, response, name, fn)
133
+ }
134
+
135
+ createExternalRpcClient<T extends ExternalRpcClient>(clientClass: ExternalRpcClientClass<T> ): ProtoRpcClient<T> {
136
+ return this.externalNetworkRpc!.createRpcClient(clientClass)
137
+ }
138
+
113
139
  }
package/src/exports.ts CHANGED
@@ -13,4 +13,4 @@ export {
13
13
  SignatureType,
14
14
  StreamMessage
15
15
  } from './proto/packages/trackerless-network/protos/NetworkRpc'
16
-
16
+ export { ExternalRpcClient, ExternalRpcClientClass } from './logic/ExternalNetworkRpc'
@@ -0,0 +1,43 @@
1
+ import { IMessageType } from '@protobuf-ts/runtime'
2
+ import { ServerCallContext, ServiceInfo } from '@protobuf-ts/runtime-rpc'
3
+ import { ITransport, ListeningRpcCommunicator } from '@streamr/dht'
4
+ import { ClassType, ClientTransport, ProtoRpcClient, toProtoRpcClient } from '@streamr/proto-rpc'
5
+
6
+ export const SERVICE_ID = 'external-network-service'
7
+
8
+ // eslint-disable-next-line @typescript-eslint/consistent-type-definitions
9
+ export type ExternalRpcClient = ServiceInfo & ClassType
10
+ // eslint-disable-next-line @typescript-eslint/prefer-function-type, @typescript-eslint/consistent-type-definitions
11
+ export type ExternalRpcClientClass<T extends ExternalRpcClient> = { new (clientTransport: ClientTransport): T }
12
+
13
+ export class ExternalNetworkRpc {
14
+
15
+ private readonly rpcCommunicator: ListeningRpcCommunicator
16
+
17
+ constructor(transport: ITransport) {
18
+ this.rpcCommunicator = new ListeningRpcCommunicator(SERVICE_ID, transport)
19
+ }
20
+
21
+ registerRpcMethod<
22
+ RequestClass extends IMessageType<RequestType>,
23
+ ResponseClass extends IMessageType<ResponseType>,
24
+ RequestType extends object,
25
+ ResponseType extends object
26
+ >(
27
+ request: RequestClass,
28
+ response: ResponseClass,
29
+ name: string,
30
+ fn: (req: RequestType, context: ServerCallContext) => Promise<ResponseType>
31
+ ): void {
32
+ this.rpcCommunicator.registerRpcMethod(request, response, name, fn)
33
+ }
34
+
35
+ createRpcClient<T extends ExternalRpcClient>(clientClass: ExternalRpcClientClass<T>): ProtoRpcClient<T> {
36
+ return toProtoRpcClient(new clientClass(this.rpcCommunicator.getRpcClientTransport()))
37
+ }
38
+
39
+ destroy(): void {
40
+ this.rpcCommunicator.destroy()
41
+ }
42
+
43
+ }
@@ -45,7 +45,7 @@ export class PeerDescriptorStoreManager {
45
45
  try {
46
46
  const result = await this.options.fetchDataFromDht(this.options.key)
47
47
  return parsePeerDescriptor(result)
48
- } catch (err) {
48
+ } catch {
49
49
  return []
50
50
  }
51
51
  }
@@ -65,7 +65,7 @@ export class PeerDescriptorStoreManager {
65
65
  const dataToStore = Any.pack(localPeerDescriptor, PeerDescriptor)
66
66
  try {
67
67
  await this.options.storeDataToDht(this.options.key, dataToStore)
68
- } catch (err) {
68
+ } catch {
69
69
  logger.warn('Failed to store local node', { key: this.options.key })
70
70
  }
71
71
  }
@@ -79,7 +79,7 @@ export class PeerDescriptorStoreManager {
79
79
  || discovered.some((peerDescriptor) => areEqualPeerDescriptors(peerDescriptor, this.options.localPeerDescriptor))) {
80
80
  await this.storeLocalNode()
81
81
  }
82
- } catch (err) {
82
+ } catch {
83
83
  logger.debug('Failed to keep local node', { key: this.options.key })
84
84
  }
85
85
  }, this.options.storeInterval ?? 60000, false, this.abortController.signal)
@@ -27,7 +27,7 @@ const exponentialRunOff = async (
27
27
  const delay = baseDelay * factor
28
28
  try {
29
29
  await task()
30
- } catch (e: any) {
30
+ } catch {
31
31
  logger.debug(`${description} failed, retrying in ${delay} ms`)
32
32
  }
33
33
  try { // Abort controller throws unexpected errors in destroy?
@@ -1,5 +1,5 @@
1
1
  import { scheduleAtInterval } from '@streamr/utils'
2
- import { PeerDescriptorStoreManager } from './PeerDescriptorStoreManager'
2
+ import { MAX_NODE_COUNT, PeerDescriptorStoreManager } from './PeerDescriptorStoreManager'
3
3
  import { DiscoveryLayerNode } from './DiscoveryLayerNode'
4
4
 
5
5
  const DEFAULT_RECONNECT_INTERVAL = 30 * 1000
@@ -18,7 +18,8 @@ export class StreamPartReconnect {
18
18
  await scheduleAtInterval(async () => {
19
19
  const entryPoints = await this.peerDescriptorStoreManager.fetchNodes()
20
20
  await this.discoveryLayerNode.joinDht(entryPoints)
21
- if (this.peerDescriptorStoreManager.isLocalNodeStored()) {
21
+ // Is is necessary to store the node as an entry point here?
22
+ if (!this.peerDescriptorStoreManager.isLocalNodeStored() && entryPoints.length < MAX_NODE_COUNT) {
22
23
  await this.peerDescriptorStoreManager.storeAndKeepLocalNode()
23
24
  }
24
25
  if (this.discoveryLayerNode.getNeighborCount() > 0) {
@@ -73,7 +73,7 @@ export class Inspector {
73
73
  try {
74
74
  await waitForEvent3<InspectSessionEvents>(session, 'done', this.inspectionTimeout)
75
75
  success = true
76
- } catch (err) {
76
+ } catch {
77
77
  logger.trace('Inspect session timed out, removing')
78
78
  } finally {
79
79
  await this.closeInspectConnection(peerDescriptor, lockId)
@@ -102,7 +102,15 @@ export class FifoMapWithTTL<K, V> {
102
102
  return item.value
103
103
  }
104
104
 
105
- values(): Item<K, V>[] {
106
- return [...this.items.values()]
105
+ values(): V[] {
106
+ const keys = [...this.items.keys()]
107
+ const values = []
108
+ for (const key of keys) {
109
+ const value = this.get(key)
110
+ if (value !== undefined) {
111
+ values.push(value)
112
+ }
113
+ }
114
+ return values
107
115
  }
108
116
  }
@@ -27,7 +27,7 @@ export class PropagationTaskStore {
27
27
  }
28
28
 
29
29
  get(): PropagationTask[] {
30
- return this.tasks.values().map((task) => task.value)
30
+ return this.tasks.values()
31
31
  }
32
32
 
33
33
  add(task: PropagationTask): void {
@@ -33,7 +33,7 @@ export const retry = async <T>(task: () => Promise<T>, description: string, abor
33
33
  try {
34
34
  const result = await task()
35
35
  return result
36
- } catch (e: any) {
36
+ } catch {
37
37
  logger.warn(`Failed ${description} (retrying after delay)`, {
38
38
  delayInMs: delay
39
39
  })
@@ -0,0 +1,67 @@
1
+ import { NetworkNode } from '../../src/NetworkNode'
2
+ import { NetworkStack } from '../../src/NetworkStack'
3
+ import { StreamPartHandshakeRequest, StreamPartHandshakeResponse } from '../../src/proto/packages/trackerless-network/protos/NetworkRpc'
4
+ import { HandshakeRpcClient } from '../../src/proto/packages/trackerless-network/protos/NetworkRpc.client'
5
+ import { createMockPeerDescriptor } from '../utils/utils'
6
+
7
+ describe('ExternalNetworkRpc', () => {
8
+
9
+ let clientNode: NetworkNode
10
+ let serverNode: NetworkNode
11
+
12
+ const serverPeerDescriptor = createMockPeerDescriptor({
13
+ websocket: {
14
+ host: '127.0.0.1',
15
+ port: 15499,
16
+ tls: false
17
+ }
18
+ })
19
+
20
+ const clientPeerDescriptor = createMockPeerDescriptor()
21
+
22
+ beforeEach(async () => {
23
+ const clientStack = new NetworkStack({
24
+ layer0: {
25
+ entryPoints: [serverPeerDescriptor],
26
+ peerDescriptor: clientPeerDescriptor,
27
+ websocketServerEnableTls: false
28
+ }
29
+ })
30
+ const serverStack = new NetworkStack({
31
+ layer0: {
32
+ entryPoints: [serverPeerDescriptor],
33
+ peerDescriptor: serverPeerDescriptor,
34
+ websocketServerEnableTls: false
35
+ }
36
+ })
37
+ clientNode = new NetworkNode(clientStack)
38
+ serverNode = new NetworkNode(serverStack)
39
+
40
+ await serverNode.start()
41
+ await clientNode.start()
42
+
43
+ })
44
+
45
+ afterEach(() => {
46
+ serverNode.stop()
47
+ clientNode.stop()
48
+ })
49
+
50
+ it('can make queries', async () => {
51
+ const requestId = 'TEST'
52
+ serverNode.registerExternalNetworkRpcMethod(
53
+ StreamPartHandshakeRequest,
54
+ StreamPartHandshakeResponse,
55
+ 'handshake',
56
+ async () => StreamPartHandshakeResponse.create({ requestId })
57
+ )
58
+ const client = clientNode.createExternalRpcClient(HandshakeRpcClient)
59
+ const response = await client.handshake(StreamPartHandshakeRequest.create(), {
60
+ sourceDescriptor: clientPeerDescriptor,
61
+ targetDescriptor: serverPeerDescriptor
62
+ })
63
+ expect(response.requestId).toEqual(requestId)
64
+
65
+ })
66
+
67
+ })
@@ -0,0 +1,48 @@
1
+ import { Message } from '@streamr/dht'
2
+ import { ExternalNetworkRpc, SERVICE_ID } from '../../src/logic/ExternalNetworkRpc'
3
+ import { HandshakeRequest, HandshakeResponse } from '../../src/proto/packages/dht/protos/DhtRpc'
4
+ import { MockTransport } from '../utils/mock/MockTransport'
5
+ import { RpcMessage } from '@streamr/proto-rpc'
6
+ import { Any } from '../../src/proto/google/protobuf/any'
7
+ import { HandshakeRpcClient } from '../../src/proto/packages/trackerless-network/protos/NetworkRpc.client'
8
+
9
+ describe('ExternalNetworkRpc', () => {
10
+
11
+ let rpc: ExternalNetworkRpc
12
+ let fn: jest.Mock
13
+ let transport: MockTransport
14
+
15
+ beforeEach(() => {
16
+ transport = new MockTransport
17
+ rpc = new ExternalNetworkRpc(transport)
18
+ fn = jest.fn()
19
+ })
20
+
21
+ afterEach(() => {
22
+ rpc.destroy()
23
+ })
24
+
25
+ it('registers method', async () => {
26
+ rpc.registerRpcMethod(HandshakeRequest, HandshakeResponse, 'handshake', () => fn())
27
+ transport.emit('message', Message.create({
28
+ serviceId: SERVICE_ID,
29
+ body: {
30
+ oneofKind: 'rpcMessage',
31
+ rpcMessage: RpcMessage.create({
32
+ header: {
33
+ request: 'request',
34
+ method: 'handshake'
35
+ },
36
+ body: Any.pack(HandshakeRequest.create(), HandshakeRequest)
37
+ })
38
+ }
39
+ }))
40
+ expect(fn).toHaveBeenCalledTimes(1)
41
+ })
42
+
43
+ it('creates clients', async () => {
44
+ const client = rpc.createRpcClient(HandshakeRpcClient)
45
+ expect(client.methods.length).toEqual(2)
46
+ })
47
+
48
+ })
@@ -177,6 +177,30 @@ describe('FifoMapWithTtl', () => {
177
177
  time = 150
178
178
  expect(fifoMap.get('hello')).toEqual('world')
179
179
  })
180
+
181
+ it('#values returns non-expired items', () => {
182
+ time = 0
183
+ fifoMap.set('hello', 'world')
184
+ time = 50
185
+ fifoMap.set('foo', 'bar')
186
+ time = 100
187
+ fifoMap.set('lorem', 'ipsum')
188
+ time = 120
189
+ fifoMap.set('dolor', 'sit')
190
+
191
+ expect(fifoMap.values()).toEqual(['bar', 'ipsum', 'sit'])
192
+
193
+ time = 130
194
+ fifoMap.set('amet', 'consectetur')
195
+
196
+ expect(fifoMap.values()).toEqual(['bar', 'ipsum', 'sit', 'consectetur'])
197
+
198
+ time = 200
199
+ expect(fifoMap.values()).toEqual(['sit', 'consectetur'])
200
+
201
+ time = 300
202
+ expect(fifoMap.values()).toEqual([])
203
+ })
180
204
  })
181
205
 
182
206
  describe('onItemDropped callback', () => {