@xyo-network/bridge-module-resolver 2.69.0-rc.2 → 2.69.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.
@@ -13,6 +13,7 @@ class ProxyModule extends module_1.BaseEmitter {
13
13
  super({ config: proxyParams.bridge.targetConfig(proxyParams.address) });
14
14
  this.proxyParams = proxyParams;
15
15
  this.upResolver = new module_1.CompositeModuleResolver();
16
+ this._busyCount = 0;
16
17
  }
17
18
  get address() {
18
19
  return this.proxyParams.address.toLowerCase();
@@ -33,26 +34,53 @@ class ProxyModule extends module_1.BaseEmitter {
33
34
  addressPreviousHash() {
34
35
  throw Error('Not Implemented');
35
36
  }
36
- describe() {
37
- var _a;
37
+ busy(closure) {
38
38
  return tslib_1.__awaiter(this, void 0, void 0, function* () {
39
- const description = {
40
- address: this.address,
41
- queries: this.queries,
42
- };
43
- if (this.config.name) {
44
- description.name = this.config.name;
39
+ if (this._busyCount <= 0) {
40
+ this._busyCount = 0;
41
+ const args = { busy: true, module: this };
42
+ yield this.emit('moduleBusy', args);
43
+ }
44
+ this._busyCount++;
45
+ try {
46
+ return yield closure();
45
47
  }
46
- const discover = yield this.discover();
47
- description.children = (0, compact_1.default)((_a = discover === null || discover === void 0 ? void 0 : discover.map((payload) => {
48
- const address = payload.schema === address_payload_plugin_1.AddressSchema ? payload.address : undefined;
49
- return address != this.address ? address : undefined;
50
- })) !== null && _a !== void 0 ? _a : []);
51
- return description;
48
+ finally {
49
+ this._busyCount--;
50
+ if (this._busyCount <= 0) {
51
+ this._busyCount = 0;
52
+ const args = { busy: false, module: this };
53
+ yield this.emit('moduleBusy', args);
54
+ }
55
+ }
56
+ });
57
+ }
58
+ describe() {
59
+ return tslib_1.__awaiter(this, void 0, void 0, function* () {
60
+ return yield this.busy(() => tslib_1.__awaiter(this, void 0, void 0, function* () {
61
+ var _a;
62
+ const description = {
63
+ address: this.address,
64
+ queries: this.queries,
65
+ };
66
+ if (this.config.name) {
67
+ description.name = this.config.name;
68
+ }
69
+ const discover = yield this.discover();
70
+ description.children = (0, compact_1.default)((_a = discover === null || discover === void 0 ? void 0 : discover.map((payload) => {
71
+ const address = payload.schema === address_payload_plugin_1.AddressSchema ? payload.address : undefined;
72
+ return address != this.address ? address : undefined;
73
+ })) !== null && _a !== void 0 ? _a : []);
74
+ return description;
75
+ }));
52
76
  });
53
77
  }
54
78
  discover() {
55
- return this.bridge.targetDiscover();
79
+ return tslib_1.__awaiter(this, void 0, void 0, function* () {
80
+ return yield this.busy(() => tslib_1.__awaiter(this, void 0, void 0, function* () {
81
+ return yield this.bridge.targetDiscover();
82
+ }));
83
+ });
56
84
  }
57
85
  manifest() {
58
86
  var _a;
@@ -67,9 +95,11 @@ class ProxyModule extends module_1.BaseEmitter {
67
95
  }
68
96
  query(query, payloads) {
69
97
  return tslib_1.__awaiter(this, void 0, void 0, function* () {
70
- const result = (0, assert_1.assertEx)(yield this.bridge.targetQuery(this.address, query, payloads), 'Remote Query Failed');
71
- yield this.emit('moduleQueried', { module: this, payloads, query, result });
72
- return result;
98
+ return yield this.busy(() => tslib_1.__awaiter(this, void 0, void 0, function* () {
99
+ const result = (0, assert_1.assertEx)(yield this.bridge.targetQuery(this.address, query, payloads), 'Remote Query Failed');
100
+ yield this.emit('moduleQueried', { module: this, payloads, query, result });
101
+ return result;
102
+ }));
73
103
  });
74
104
  }
75
105
  queryable(query, payloads, queryConfig) {
@@ -79,12 +109,14 @@ class ProxyModule extends module_1.BaseEmitter {
79
109
  }
80
110
  resolve(nameOrAddressOrFilter, options) {
81
111
  return tslib_1.__awaiter(this, void 0, void 0, function* () {
82
- if (typeof nameOrAddressOrFilter === 'string') {
83
- return yield this.bridge.targetResolve(this.address, nameOrAddressOrFilter, options);
84
- }
85
- else {
86
- return yield this.bridge.targetResolve(this.address, nameOrAddressOrFilter, options);
87
- }
112
+ return yield this.busy(() => tslib_1.__awaiter(this, void 0, void 0, function* () {
113
+ if (typeof nameOrAddressOrFilter === 'string') {
114
+ return yield this.bridge.targetResolve(this.address, nameOrAddressOrFilter, options);
115
+ }
116
+ else {
117
+ return yield this.bridge.targetResolve(this.address, nameOrAddressOrFilter, options);
118
+ }
119
+ }));
88
120
  });
89
121
  }
90
122
  }
@@ -1 +1 @@
1
- {"version":3,"file":"ProxyModule.js","sourceRoot":"","sources":["../../src/ProxyModule.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ProxyModule.js","sourceRoot":"","sources":["../../src/ProxyModule.ts"],"names":[],"mappings":"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"}