@nsshunt/stsrunnerframework 2.0.31 → 2.0.32
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.
- package/dist/index.cjs +51 -1
- package/dist/index.cjs.map +1 -1
- package/dist/index.mjs +51 -1
- package/dist/index.mjs.map +1 -1
- package/package.json +1 -1
- package/types/abstractRunnerExecutionWorker.d.ts +3 -2
- package/types/abstractRunnerExecutionWorker.d.ts.map +1 -1
- package/types/commonTypes.d.ts +10 -1
- package/types/commonTypes.d.ts.map +1 -1
- package/types/messageBroker.d.ts +1 -1
- package/types/messageBroker.d.ts.map +1 -1
- package/types/testing/mockedWorkerTestRunner01.d.ts +2 -1
- package/types/testing/mockedWorkerTestRunner01.d.ts.map +1 -1
- package/types/workerManager.d.ts +2 -1
- package/types/workerManager.d.ts.map +1 -1
package/dist/index.mjs
CHANGED
|
@@ -63,6 +63,8 @@ var eIWMessageCommands = /* @__PURE__ */ function(eIWMessageCommands) {
|
|
|
63
63
|
eIWMessageCommands["RunnerStateChange"] = "__STS__RunnerStateChange";
|
|
64
64
|
eIWMessageCommands["GetRunners"] = "__STS__GetRunners";
|
|
65
65
|
eIWMessageCommands["GetRunnersResponse"] = "__STS__GetRunnersResponse";
|
|
66
|
+
eIWMessageCommands["PostWorkerMessage"] = "__STS__PostWorkerMessage";
|
|
67
|
+
eIWMessageCommands["PostWorkerMessageResponse"] = "__STS__PostWorkerMessageResponse";
|
|
66
68
|
return eIWMessageCommands;
|
|
67
69
|
}({});
|
|
68
70
|
var IRunnerState = /* @__PURE__ */ function(IRunnerState) {
|
|
@@ -1015,6 +1017,25 @@ var AbstractRunnerExecutionWorker = class {
|
|
|
1015
1017
|
this.#error(`#PostRunnersToWorkerManager(): [${error}]`);
|
|
1016
1018
|
}
|
|
1017
1019
|
};
|
|
1020
|
+
#PostWorkerMessageToWorkerManager = async (messagePayload) => {
|
|
1021
|
+
try {
|
|
1022
|
+
if (this.#collectorCollectorPort) {
|
|
1023
|
+
const response = await this.ProcessGenericWorkerMessage(messagePayload);
|
|
1024
|
+
const message = {
|
|
1025
|
+
command: eIWMessageCommands.PostWorkerMessageResponse,
|
|
1026
|
+
payload: {
|
|
1027
|
+
messageId: messagePayload.payload.messageId,
|
|
1028
|
+
workerId: this.#workerId,
|
|
1029
|
+
response
|
|
1030
|
+
}
|
|
1031
|
+
};
|
|
1032
|
+
this.#collectorCollectorPort.postMessage(message);
|
|
1033
|
+
await Sleep(0);
|
|
1034
|
+
}
|
|
1035
|
+
} catch (error) {
|
|
1036
|
+
this.#error(`#PostWorkerMessageToWorkerManager(): [${error}]`);
|
|
1037
|
+
}
|
|
1038
|
+
};
|
|
1018
1039
|
/**
|
|
1019
1040
|
* Start a runner and, if valid, launch its execution loop.
|
|
1020
1041
|
*
|
|
@@ -1395,6 +1416,9 @@ var AbstractRunnerExecutionWorker = class {
|
|
|
1395
1416
|
}
|
|
1396
1417
|
this.#SendRunnerCommandResponse(eIWMessageCommands.UpdateRunnerResponse, testRunnerTelemetryPayload, result);
|
|
1397
1418
|
};
|
|
1419
|
+
async ProcessGenericWorkerMessage(messagePayload) {
|
|
1420
|
+
return {};
|
|
1421
|
+
}
|
|
1398
1422
|
/**
|
|
1399
1423
|
* Main inbound message dispatcher for this worker runtime.
|
|
1400
1424
|
*
|
|
@@ -1474,6 +1498,10 @@ var AbstractRunnerExecutionWorker = class {
|
|
|
1474
1498
|
this.#silly(`ProcessMessage::GetRunners`);
|
|
1475
1499
|
this.#PostRunnersToWorkerManager(eIWMessageCommands.GetRunners, payloadMessage);
|
|
1476
1500
|
break;
|
|
1501
|
+
case eIWMessageCommands.PostWorkerMessage:
|
|
1502
|
+
this.#silly(`ProcessMessage::PostWorkerMessage`);
|
|
1503
|
+
this.#PostWorkerMessageToWorkerManager(payloadMessage);
|
|
1504
|
+
break;
|
|
1477
1505
|
default: this.#warn(`ProcessMessage::default: Invalid payloadMessage.command: [${payloadMessage.command}] - Ignoring`);
|
|
1478
1506
|
}
|
|
1479
1507
|
} catch (error) {
|
|
@@ -3234,10 +3262,11 @@ var STSMessageBroker = class {
|
|
|
3234
3262
|
* @param command Worker-level command to send.
|
|
3235
3263
|
* @returns Promise resolving with the response payload returned by the worker.
|
|
3236
3264
|
*/
|
|
3237
|
-
SendMessageToWorkerForWorkerWithCallBack = async (workerEx, command) => {
|
|
3265
|
+
SendMessageToWorkerForWorkerWithCallBack = async (workerEx, command, data) => {
|
|
3238
3266
|
return new Promise((resolve, reject) => {
|
|
3239
3267
|
try {
|
|
3240
3268
|
const payload = { messageId: this._SetupCallbackMessage(resolve, reject, command) };
|
|
3269
|
+
if (data !== void 0) payload.data = data;
|
|
3241
3270
|
workerEx.messagePort.postMessage({
|
|
3242
3271
|
command,
|
|
3243
3272
|
payload
|
|
@@ -6630,6 +6659,27 @@ var STSWorkerManager = class {
|
|
|
6630
6659
|
GetNextAvailableWorker = () => {
|
|
6631
6660
|
return this.#workerRegistry.GetNextAvailableWorker();
|
|
6632
6661
|
};
|
|
6662
|
+
PostWorkerMessage = async (workerIds, data) => {
|
|
6663
|
+
try {
|
|
6664
|
+
/**
|
|
6665
|
+
* Resolve all live workers.
|
|
6666
|
+
*
|
|
6667
|
+
* Passing `[]` means "all workers" according to the registry convention.
|
|
6668
|
+
*/
|
|
6669
|
+
const workersEx = this.#workerRegistry.GetWorkersEx(workerIds);
|
|
6670
|
+
/**
|
|
6671
|
+
* Build a broker request promise for each worker.
|
|
6672
|
+
*
|
|
6673
|
+
* Each worker is asked to return its full current runner list.
|
|
6674
|
+
*/
|
|
6675
|
+
const promArray = [];
|
|
6676
|
+
workersEx.forEach((workerEx) => promArray.push(this.#messageBroker.SendMessageToWorkerForWorkerWithCallBack(workerEx, eIWMessageCommands.PostWorkerMessage, data)));
|
|
6677
|
+
return await Promise.all(promArray);
|
|
6678
|
+
} catch (error) {
|
|
6679
|
+
this.options.logger.error(`_SyncWorkerDataFromWorkers(): Error: [${error}]`);
|
|
6680
|
+
throw error;
|
|
6681
|
+
}
|
|
6682
|
+
};
|
|
6633
6683
|
};
|
|
6634
6684
|
//#endregion
|
|
6635
6685
|
//#region node_modules/@nsshunt/stssocketioutils/dist/tiny-emitter-DcZ69ZvJ.js
|