@nsshunt/stsappframework 3.1.96 → 3.1.98

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.
@@ -0,0 +1,117 @@
1
+ /* eslint @typescript-eslint/no-explicit-any: 0 */ // --> OFF
2
+ import chalk from 'chalk';
3
+
4
+ import { ISTSLogger, JSONObject } from '@nsshunt/stsutils'
5
+
6
+ import { v4 as uuidv4 } from 'uuid';
7
+
8
+ import { IIPCMessageProcessorIPCPayload, IIPCMessageProcessorWorkerRecord } from './commonTypes'
9
+
10
+ export interface IPCMessageManagerOptions {
11
+ logger: ISTSLogger
12
+ requestResponseMessageTimeout: number
13
+ namespace: string
14
+ messageSender: (payload: IIPCMessageProcessorIPCPayload) => void
15
+ }
16
+ /**
17
+ * todo
18
+ * @typedef {Object} options - todo
19
+ * @property {boolean} [wssServer=false] - Create a web socket server on this worker instance
20
+ */
21
+ export class IPCMessageManager
22
+ {
23
+ #options: IPCMessageManagerOptions;
24
+ #inflightMessages: Record<string, IIPCMessageProcessorWorkerRecord> = { };
25
+ #messageHeader: string;
26
+
27
+ constructor(options: IPCMessageManagerOptions) {
28
+ this.#options = options;
29
+ this.#messageHeader = `__STS__${this.#options.namespace}__${uuidv4()}`;
30
+ }
31
+
32
+ #LogDebugMessage(message: any) {
33
+ this.#options.logger.debug(message);
34
+ }
35
+
36
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any, @typescript-eslint/no-unused-vars
37
+ ReceivedMessageFromMaster(msg: any) {
38
+ // Override in subclass if required
39
+ }
40
+
41
+ SendMessage = (payload: JSONObject): Promise<JSONObject> => {
42
+ return new Promise((resolve, reject) => {
43
+ this.#SendMessage(payload,
44
+ (payload: IIPCMessageProcessorIPCPayload) => {
45
+ resolve(payload.responsePayload);
46
+ },
47
+ (payload: IIPCMessageProcessorIPCPayload) => {
48
+ reject(payload.requestPayload);
49
+ })
50
+ })
51
+ }
52
+
53
+ #SendMessage = (payload: JSONObject,
54
+ callBack: (payload: IIPCMessageProcessorIPCPayload) => void,
55
+ errorCallBack: (payload: IIPCMessageProcessorIPCPayload) => void
56
+ ): void => {
57
+ const messageId: string = uuidv4();
58
+ const requestPayload: IIPCMessageProcessorIPCPayload = {
59
+ header: this.#messageHeader,
60
+ messageId,
61
+ requestPayload: payload,
62
+ responsePayload: { },
63
+ pid: process.pid.toString(),
64
+ messageType: 'REQUEST'
65
+ }
66
+ const messageRecord = {
67
+ messageId,
68
+ requestPayload,
69
+ responses: { }, // record
70
+ startTime: performance.now(),
71
+ endTime: 0,
72
+ timeout: setTimeout(() => {
73
+ this.#LogDebugMessage(chalk.red(`Timeout has occurred after: [${this.#options.requestResponseMessageTimeout}]ms with message id: [${messageRecord.messageId}]. Details: [${JSON.stringify(this.#inflightMessages[messageRecord.messageId].requestPayload)}]`));
74
+ setTimeout(() => {
75
+ delete this.#inflightMessages[messageRecord.messageId];
76
+ }, 0).unref();
77
+ errorCallBack(requestPayload);
78
+ }, this.#options.requestResponseMessageTimeout).unref(),// max message timeout allowed
79
+ callBack,
80
+ errorCallBack
81
+ }
82
+ this.#inflightMessages[messageRecord.messageId] = messageRecord;
83
+ //this.#LogDebugMessage(chalk.cyan(`sending: [${JSON.stringify(requestPayload)}]`));
84
+ this.#options.messageSender(requestPayload);
85
+ }
86
+
87
+ ProcessMessage = (msg: any) => {
88
+ if (msg.header && msg.header.localeCompare(this.#messageHeader) === 0) {
89
+ const message = (msg as IIPCMessageProcessorIPCPayload);
90
+ if (this.#inflightMessages[message.messageId]) {
91
+ const inFlightMessageRecord: IIPCMessageProcessorWorkerRecord = this.#inflightMessages[message.messageId];
92
+ inFlightMessageRecord.responses[message.pid] = { ...message };
93
+ inFlightMessageRecord.endTime = performance.now();
94
+ clearTimeout(inFlightMessageRecord.timeout as NodeJS.Timer);
95
+ //this.#LogDebugMessage(chalk.green(`received: [${JSON.stringify(message)}]`));
96
+ inFlightMessageRecord.callBack(message)
97
+ delete this.#inflightMessages[message.messageId];
98
+ } else {
99
+ throw new Error(`Could not find Request/Response message with id: [${message.messageId}]`);
100
+ }
101
+ }
102
+ }
103
+
104
+ Start = () => {
105
+ this.#messageHeader = `__STS__${this.#options.namespace}__${uuidv4()}`;
106
+ }
107
+
108
+ Stop = () => {
109
+ // Kill in-flight messages
110
+ for (const [, iPCMessageProcessorWorkerRecord] of Object.entries(this.#inflightMessages)) {
111
+ if (iPCMessageProcessorWorkerRecord.timeout) {
112
+ clearTimeout(iPCMessageProcessorWorkerRecord.timeout);
113
+ }
114
+ }
115
+ this.#inflightMessages = { };
116
+ }
117
+ }
@@ -1,15 +1,17 @@
1
1
  /* eslint @typescript-eslint/no-explicit-any: 0 */ // --> OFF
2
- import { ISTSLogger } from '@nsshunt/stsutils'
3
- import chalk from 'chalk';
2
+ import { ISTSLogger, JSONObject, defaultLogger } from '@nsshunt/stsutils'
4
3
 
5
4
  import { Worker } from 'node:cluster'
6
5
 
7
6
  import { IIPCMessageProcessorIPCPayload } from './commonTypes'
8
7
 
8
+ import { IPCMessageManager, IPCMessageManagerOptions } from './ipcMessageManager'
9
+
9
10
  export interface IIPCMessageProcessorPrimary {
10
11
  logger: ISTSLogger
11
12
  namespace: string
12
- processCommand: (payload: IIPCMessageProcessorIPCPayload) => Promise<IIPCMessageProcessorIPCPayload>
13
+ processCommand: (payload: IIPCMessageProcessorIPCPayload) => Promise<JSONObject>
14
+ worker: Worker
13
15
  }
14
16
  /**
15
17
  * todo
@@ -19,33 +21,53 @@ export interface IIPCMessageProcessorPrimary {
19
21
  export class IPCMessageProcessorPrimary
20
22
  {
21
23
  #options: IIPCMessageProcessorPrimary;
24
+ #ipcMessageManager: IPCMessageManager;
22
25
 
23
26
  constructor(options: IIPCMessageProcessorPrimary) {
24
27
  this.#options = options;
25
- }
26
28
 
27
- #LogDebugMessage(message: any) {
28
- this.#options.logger.debug(message);
29
+ const ipcMessageManagerOptions: IPCMessageManagerOptions = {
30
+ logger: defaultLogger,
31
+ requestResponseMessageTimeout: 2000,
32
+ namespace: options.namespace,
33
+ messageSender: (payload: IIPCMessageProcessorIPCPayload) => {
34
+ (options.worker as any).send(payload);
35
+ }
36
+ }
37
+ this.#ipcMessageManager = new IPCMessageManager(ipcMessageManagerOptions);
29
38
  }
30
39
 
40
+ // Process a message recieved from a worker
31
41
  #processMessage = async (worker: Worker, msg: any) => {
32
42
  if (msg.header) {
33
43
  const checkName = `__STS__${this.#options.namespace}__`;
34
44
  if ((msg.header as string).includes(checkName)) {
35
45
  const message = (msg as IIPCMessageProcessorIPCPayload);
36
- message.responsePayload = await this.#options.processCommand(message);
37
-
38
- this.#LogDebugMessage(chalk.magenta(`sending: [${JSON.stringify(message)}]`))
39
- worker.send(message);
46
+ if (msg.messageType.localeCompare('REQUEST') === 0) {
47
+ message.responsePayload = await this.#options.processCommand(message);
48
+ message.messageType = 'RESPONSE'
49
+ //this.#LogDebugMessage(chalk.magenta(`sending: [${JSON.stringify(message)}]`))
50
+ worker.send(message);
51
+ } else {
52
+ // Received a response (to my request)
53
+ this.#ipcMessageManager.ProcessMessage(msg);
54
+ }
40
55
  }
41
56
  }
42
57
  }
43
58
 
59
+ SendMessage = (payload: JSONObject): Promise<JSONObject> => {
60
+ return this.#ipcMessageManager.SendMessage(payload);
61
+ }
62
+
44
63
  Start = (worker: Worker) => {
64
+ this.#ipcMessageManager.Start();
65
+ // Receive a message to process from a worker
45
66
  worker.on('message', (payload) => this.#processMessage(worker, payload));
46
67
  }
47
68
 
48
69
  Stop = (worker: Worker) => {
49
70
  worker.off('message', (payload) => this.#processMessage(worker, payload));
71
+ this.#ipcMessageManager.Stop();
50
72
  }
51
73
  }
@@ -1,114 +1,68 @@
1
1
  /* eslint @typescript-eslint/no-explicit-any: 0 */ // --> OFF
2
- import chalk from 'chalk';
2
+ import { ISTSLogger, JSONObject, defaultLogger } from '@nsshunt/stsutils'
3
3
 
4
- import { ISTSLogger, JSONObject } from '@nsshunt/stsutils'
4
+ import { IIPCMessageProcessorIPCPayload } from './commonTypes'
5
5
 
6
- import { v4 as uuidv4 } from 'uuid';
7
-
8
- import { IIPCMessageProcessorIPCPayload, IIPCMessageProcessorWorkerRecord } from './commonTypes'
6
+ import { IPCMessageManager, IPCMessageManagerOptions } from './ipcMessageManager'
9
7
 
10
8
  export interface IIPCMessageProcessorWorker {
11
9
  logger: ISTSLogger
12
10
  requestResponseMessageTimeout: number
13
11
  namespace: string
12
+ processCommand: (payload: IIPCMessageProcessorIPCPayload) => Promise<JSONObject>
14
13
  }
15
- /**
16
- * todo
17
- * @typedef {Object} options - todo
18
- * @property {boolean} [wssServer=false] - Create a web socket server on this worker instance
19
- */
20
- export class IPCMessageProcessorWorker
21
- {
22
- #options: IIPCMessageProcessorWorker;
23
- #inflightMessages: Record<string, IIPCMessageProcessorWorkerRecord> = { };
24
- #messageHeader: string;
14
+
15
+ export class IPCMessageProcessorWorker {
16
+ #options: IIPCMessageProcessorWorker
17
+ #ipcMessageManager: IPCMessageManager;
25
18
 
26
19
  constructor(options: IIPCMessageProcessorWorker) {
27
20
  this.#options = options;
28
- this.#messageHeader = `__STS__${this.#options.namespace}__${uuidv4()}`;
29
- }
30
-
31
- #LogDebugMessage(message: any) {
32
- this.#options.logger.debug(message);
33
- }
34
-
35
- // eslint-disable-next-line @typescript-eslint/no-explicit-any, @typescript-eslint/no-unused-vars
36
- ReceivedMessageFromMaster(msg: any) {
37
- // Override in subclass if required
38
- }
39
-
40
- SendMessage = (payload: JSONObject): Promise<JSONObject> => {
41
- return new Promise((resolve, reject) => {
42
- this.#SendMessageToParentProcess(payload,
43
- (payload: any) => {
44
- resolve(payload);
45
- },
46
- (payload: any) => {
47
- reject(payload);
48
- })
49
- })
50
- }
51
-
52
- #SendMessageToParentProcess = (payload: JSONObject, callBack: (payload: IIPCMessageProcessorIPCPayload) => void, errorCallBack: (payload: IIPCMessageProcessorIPCPayload) => void): void => {
53
- const messageId: string = uuidv4();
54
- const requestPayload: IIPCMessageProcessorIPCPayload = {
55
- header: this.#messageHeader,
56
- messageId,
57
- requestPayload: payload,
58
- responsePayload: { },
59
- pid: process.pid.toString()
60
- }
61
- const messageRecord = {
62
- messageId,
63
- requestPayload,
64
- responses: { }, // record
65
- startTime: performance.now(),
66
- endTime: 0,
67
- timeout: setTimeout(() => {
68
- this.#LogDebugMessage(chalk.red(`Timeout has occurred after: [${this.#options.requestResponseMessageTimeout}]ms with message id: [${messageRecord.messageId}]. Details: [${JSON.stringify(this.#inflightMessages[messageRecord.messageId].requestPayload)}]`));
69
- setTimeout(() => {
70
- delete this.#inflightMessages[messageRecord.messageId];
71
- }, 0).unref();
72
- errorCallBack(requestPayload);
73
- }, this.#options.requestResponseMessageTimeout).unref(),// max message timeout allowed
74
- callBack,
75
- errorCallBack
21
+ const ipcMessageManagerOptions: IPCMessageManagerOptions = {
22
+ logger: defaultLogger,
23
+ requestResponseMessageTimeout: options.requestResponseMessageTimeout,
24
+ namespace: options.namespace,
25
+ messageSender: (payload: IIPCMessageProcessorIPCPayload) => {
26
+ (process as any).send(payload);
27
+ }
76
28
  }
77
- this.#inflightMessages[messageRecord.messageId] = messageRecord;
78
- this.#LogDebugMessage(chalk.cyan(`sending: [${JSON.stringify(requestPayload)}]`));
79
- (process as any).send(requestPayload);
29
+ this.#ipcMessageManager = new IPCMessageManager(ipcMessageManagerOptions);
80
30
  }
81
31
 
82
- #processMessage = (msg: any) => {
83
- if (msg.header && msg.header.localeCompare(this.#messageHeader) === 0) {
84
- const message = (msg as IIPCMessageProcessorIPCPayload);
85
- if (this.#inflightMessages[message.messageId]) {
86
- const inFlightMessageRecord: IIPCMessageProcessorWorkerRecord = this.#inflightMessages[message.messageId];
87
- inFlightMessageRecord.responses[message.pid] = { ...message };
88
- inFlightMessageRecord.endTime = performance.now();
89
-
90
- this.#LogDebugMessage(chalk.green(`received: [${JSON.stringify(message)}]`));
91
- inFlightMessageRecord.callBack(message)
92
- } else {
93
- throw new Error(`Could not find Request/Response message with id: [${message.messageId}]`);
32
+ // Process a message recieved from the primary thread
33
+ #processMessage = async (msg: any) => {
34
+ if (msg.header) {
35
+ const checkName = `__STS__${this.#options.namespace}__`;
36
+ if ((msg.header as string).includes(checkName)) {
37
+ const message = (msg as IIPCMessageProcessorIPCPayload);
38
+ if (msg.messageType.localeCompare('REQUEST') === 0) {
39
+ message.responsePayload = await this.#options.processCommand(message);
40
+ message.messageType = 'RESPONSE';
41
+ //this.#LogDebugMessage(chalk.magenta(`sending: [${JSON.stringify(message)}]`))
42
+ (process as any).send(message);
43
+ } else {
44
+ // Received a response (to my request)
45
+ this.#ipcMessageManager.ProcessMessage(msg);
46
+ }
94
47
  }
95
48
  }
96
49
  }
50
+
51
+ SendMessage = (payload: JSONObject): Promise<JSONObject> => {
52
+ return this.#ipcMessageManager.SendMessage(payload);
53
+ }
97
54
 
98
55
  Start = () => {
99
- // eslint-disable-next-line @typescript-eslint/no-explicit-any
100
- this.#messageHeader = `__STS__${this.#options.namespace}__${uuidv4()}`;
56
+ this.#ipcMessageManager.Start();
57
+
58
+ // Receive a message response back from the primary thread
59
+ //process.on('message', this.#ipcMessageManager.ProcessMessage);
101
60
  process.on('message', this.#processMessage);
102
61
  }
103
62
 
104
63
  Stop = () => {
64
+ //process.off('message', this.#ipcMessageManager.ProcessMessage);
105
65
  process.off('message', this.#processMessage);
106
- // Kill in-flight messages
107
- for (const [, iPCMessageProcessorWorkerRecord] of Object.entries(this.#inflightMessages)) {
108
- if (iPCMessageProcessorWorkerRecord.timeout) {
109
- clearTimeout(iPCMessageProcessorWorkerRecord.timeout);
110
- }
111
- }
112
- this.#inflightMessages = { };
66
+ this.#ipcMessageManager.Stop();
113
67
  }
114
68
  }
@@ -5,93 +5,116 @@ import { WorkerProcess } from './appWorkerWSS'
5
5
 
6
6
  import cluster from 'cluster';
7
7
 
8
- import fs from 'node:fs'
8
+ import { IPCMessageProcessorWorker } from './../ipcMessageProcessorWorker'
9
+ import { Sleep, defaultLogger } from '@nsshunt/stsutils';
9
10
 
10
- //const pid = process.pid;
11
- const pid = 523552
11
+ import { IPCMessageProcessorPrimary } from './../ipcMessageProcessorPrimary'
12
12
 
13
- const filePath = `/proc/${pid}/net/dev`;
13
+ import { IIPCMessageProcessorIPCPayload } from './../commonTypes'
14
14
 
15
- const LogInfoMessage = (message: any) => console.log(message)
16
- const LogErrorMessage = (message: any) => console.error(message)
17
- /*
18
- async function testError() {
19
- throw new Error('some error')
20
- }
21
-
22
- async function testtheerror() {
23
- try {
24
- await testError();
25
- } catch (error) {
26
- this.#LogErrorMessage(`Error2: [${error}]`);
27
- }
28
- }
15
+ import { Worker } from 'node:cluster'
29
16
 
30
- async function testtheerror2(cb: (error: any) => void) {
31
- try {
17
+ import chalk from 'chalk';
32
18
 
33
- cb('some error');
34
-
35
- } catch (error) {
36
- this.#LogErrorMessage(`Error2: [${error}]`);
37
- }
38
- }
39
-
40
- (async () => {
41
- await Sleep(1000);
42
- let z = await testtheerror2((error) => this.#LogInfoMessage(error));
43
- this.#LogInfoMessage(`done.....`);
44
-
45
- process.exit(0);
46
- })();
47
- */
48
-
49
- function getNetworkUsage() {
50
- try {
51
- // Read the contents of the /proc/[pid]/net/dev file
52
- const content = fs.readFileSync(filePath, 'utf8');
53
-
54
- // Process the content to extract relevant information
55
- const lines = content.trim().split('\n');
56
- const headers1 = lines[0].split('|').map(header => header.trim());
57
- const headers2 = lines[1].split('|').map(header => header.trim());
58
- const data = lines[2].split('|').map(value => value.trim());
59
-
60
- LogInfoMessage(data);
61
-
62
- // Find the index of the relevant network statistics (e.g., bytes received and transmitted)
63
- //const rxIndex = headers.indexOf('Receive');
64
- //const txIndex = headers.indexOf('Transmit');
65
-
66
- // Display network usage information
67
- /*
68
- this.#LogInfoMessage(`Network Usage for Process ${pid}:`);
69
- this.#LogInfoMessage(` Incoming: ${data[rxIndex]} bytes`);
70
- this.#LogInfoMessage(` Outgoing: ${data[txIndex]} bytes`);
71
- */
72
- } catch (error) {
73
- LogErrorMessage(`Error reading file: [${error}]`);
74
- }
75
- }
19
+ const sleepVal = 0;
20
+ const maxLoop = 20000;
76
21
 
77
22
  if (cluster.isPrimary) {
78
23
  new MasterProcessBase(ServiceConfigOptions(true, cluster.isPrimary)).SetupServer();
79
24
 
80
- setInterval(function() {
81
- /*
82
- si.networkStats().then(data => {
83
- this.#LogInfoMessage(data);
84
- });
85
- */
86
-
87
- getNetworkUsage()
88
-
89
- //this.#LogInfoMessage(process.pid)
90
-
91
- //getNetworkUsage()
92
-
93
- }, 1000)
25
+ setTimeout(async () => {
26
+ for (const id in cluster.workers) {
27
+ const p1 = new IPCMessageProcessorPrimary({
28
+ logger: defaultLogger,
29
+ namespace: 'test1',
30
+ processCommand: async (payload: IIPCMessageProcessorIPCPayload) => {
31
+ return {
32
+ msg: `From PRIMARY: [${process.pid}]`,
33
+ yousent: payload.requestPayload,
34
+ hello1: `world1`,
35
+ pid: process.pid
36
+ };
37
+ },
38
+ worker: cluster.workers[id] as Worker
39
+ })
40
+
41
+ const p2 = new IPCMessageProcessorPrimary({
42
+ logger: defaultLogger,
43
+ namespace: 'test2',
44
+ processCommand: async (payload: IIPCMessageProcessorIPCPayload) => {
45
+ return {
46
+ msg: `From PRIMARY: [${process.pid}]`,
47
+ yousent: payload.requestPayload,
48
+ hello2: `world2`,
49
+ pid: process.pid
50
+ };
51
+ },
52
+ worker: cluster.workers[id] as Worker
53
+ })
54
+
55
+ p1.Start(cluster.workers[id] as Worker);
56
+ p2.Start(cluster.workers[id] as Worker);
57
+
58
+ setTimeout(async () => {
59
+ for (let i=0; i < maxLoop; i++) {
60
+ const retVal1 = await p1.SendMessage({
61
+ from1: 'text from 1',
62
+ loop: i
63
+ });
64
+ const retVal2 = await p2.SendMessage({
65
+ from1: 'text from 2',
66
+ loop: i
67
+ });
68
+ console.log(`[${process.pid}] [${JSON.stringify(retVal1)}]`)
69
+ console.log(`[${process.pid}] [${JSON.stringify(retVal2)}]`)
70
+
71
+ await Sleep(sleepVal);
72
+ }
73
+ }, 1000);
74
+ }
75
+ }, 1000);
94
76
 
95
77
  } else {
96
78
  new WorkerProcess(ServiceConfigOptions(true, cluster.isPrimary)).SetupServer();
79
+
80
+ const w1 = new IPCMessageProcessorWorker({
81
+ logger: defaultLogger,
82
+ namespace: 'test1',
83
+ requestResponseMessageTimeout: 2000,
84
+ processCommand: async (payload) => {
85
+ return {
86
+ msg: `From WORKER: [${process.pid}]`,
87
+ yousent1: payload.requestPayload,
88
+ pid: process.pid
89
+ }
90
+ }
91
+ })
92
+
93
+ const w2 = new IPCMessageProcessorWorker({
94
+ logger: defaultLogger,
95
+ namespace: 'test2',
96
+ requestResponseMessageTimeout: 2000,
97
+ processCommand: async (payload) => {
98
+ return {
99
+ msg: `From WORKER: [${process.pid}]`,
100
+ yousent2: payload.requestPayload,
101
+ pid: process.pid
102
+ }
103
+ }
104
+ })
105
+
106
+ w1.Start();
107
+ w2.Start();
108
+
109
+ setTimeout(async () => {
110
+ for (let i=0; i < maxLoop; i++) {
111
+ const retVal1 = await w1.SendMessage({hello:`from worker 1: ${i}`});
112
+ console.log(chalk.blue(` ==> [${process.pid}] [${JSON.stringify(retVal1)}]`));
113
+
114
+ const retVal2 = await w2.SendMessage({hello:`from worker 2: ${i}`});
115
+ console.log(chalk.blue(` ==> [${process.pid}] [${JSON.stringify(retVal2)}]`));
116
+
117
+ await Sleep(sleepVal);
118
+ }
119
+ }, 1000);
97
120
  }
@@ -35,7 +35,7 @@ export function ServiceConfigOptions(clusterMode: boolean, isMaster: boolean): P
35
35
  );
36
36
 
37
37
  const logger = winston.createLogger({
38
- level: 'silly',
38
+ level: 'debug',
39
39
  format: winston.format.combine(
40
40
  winston.format.colorize(),
41
41
  winston.format.simple()
@@ -1 +1 @@
1
- {"version":3,"file":"authutilsnode.d.ts","sourceRoot":"","sources":["../src/authutilsnode.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,cAAc,CAAC;AAWjC,OAAO,EAAmB,UAAU,EAAc,MAAM,mBAAmB,CAAA;AAQ3E,OAAO,EAAS,2BAA2B,EAAE,MAAM,2BAA2B,CAAA;AAE9E,MAAM,WAAW,qBAAqB;IAClC,WAAW,EAAE,MAAM,EAAE,CAAA;CACxB;AAED,MAAM,WAAW,2CAA2C;IACxD,QAAQ,EAAE,MAAM,CAAA;IAChB,gBAAgB,EAAE,MAAM,CAAA;IACxB,KAAK,EAAE,MAAM,CAAA;IACb,QAAQ,EAAE,MAAM,CAAA;IAChB,oBAAoB,CAAC,EAAE,2BAA2B,CAAA;CACrD;AAED,qBAAa,aAAa;;gBAQV,MAAM,EAAE,UAAU;IA0B9B,8BAA8B,YAAa,qBAAqB,WAEzC,GAAG,OAAO,GAAG,QAAQ,GAAG,mBAkB9C;IAmBK,uBAAuB,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,GAAG;IAyB3D,eAAe,YAAmB,OAAO,MAAM,EAAE,GAAG,CAAC,YAAY,MAAM,KAAG,QAAQ,MAAM,MAAM,EAAE,CAAC,CAgB/F;IAEF,iBAAiB,aAAoB,MAAM,KAAG,QAAQ,MAAM,MAAM,EAAE,CAAC,CAGnE;IAEF,WAAW,UAAiB,MAAM,YAAY,MAAM,aAAa,MAAM,KAAG,QAAQ,MAAM,CAAC,CAgCxF;IAGD,aAAa,QAAS,MAAM,mBAG3B;IAED,mCAAmC,YAAmB,2CAA2C,mBAAmB,KAAK,KAAK,IAAI,KAAG,QAAQ,MAAM,CAAC,CAuGnJ;CACJ"}
1
+ {"version":3,"file":"authutilsnode.d.ts","sourceRoot":"","sources":["../src/authutilsnode.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,cAAc,CAAC;AAWjC,OAAO,EAAmB,UAAU,EAAc,MAAM,mBAAmB,CAAA;AAQ3E,OAAO,EAAS,2BAA2B,EAAE,MAAM,2BAA2B,CAAA;AAE9E,MAAM,WAAW,qBAAqB;IAClC,WAAW,EAAE,MAAM,EAAE,CAAA;CACxB;AAED,MAAM,WAAW,2CAA2C;IACxD,QAAQ,EAAE,MAAM,CAAA;IAChB,gBAAgB,EAAE,MAAM,CAAA;IACxB,KAAK,EAAE,MAAM,CAAA;IACb,QAAQ,EAAE,MAAM,CAAA;IAChB,oBAAoB,CAAC,EAAE,2BAA2B,CAAA;CACrD;AAED,qBAAa,aAAa;;gBAQV,MAAM,EAAE,UAAU;IA0B9B,8BAA8B,YAAa,qBAAqB,WAEzC,GAAG,OAAO,GAAG,QAAQ,GAAG,mBAkB9C;IAmBK,uBAAuB,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,GAAG;IAyB3D,eAAe,YAAmB,OAAO,MAAM,EAAE,GAAG,CAAC,YAAY,MAAM,KAAG,QAAQ,MAAM,MAAM,EAAE,CAAC,CAgB/F;IAEF,iBAAiB,aAAoB,MAAM,KAAG,QAAQ,MAAM,MAAM,EAAE,CAAC,CAGnE;IAEF,WAAW,UAAiB,MAAM,YAAY,MAAM,aAAa,MAAM,KAAG,QAAQ,MAAM,CAAC,CAgCxF;IAGD,aAAa,QAAS,MAAM,mBAG3B;IAED,mCAAmC,YAAmB,2CAA2C,WAAW,CAAC,KAAK,EAAE,KAAK,KAAK,IAAI,KAAG,QAAQ,MAAM,CAAC,CAuGnJ;CACJ"}
@@ -174,6 +174,7 @@ export interface IIPCMessageProcessorIPCPayload {
174
174
  requestPayload: JSONObject;
175
175
  responsePayload: JSONObject;
176
176
  pid: string;
177
+ messageType: 'REQUEST' | 'RESPONSE';
177
178
  }
178
179
  export interface IIPCMessageProcessorWorkerRecord {
179
180
  messageId: string;
@@ -1 +1 @@
1
- {"version":3,"file":"commonTypes.d.ts","sourceRoot":"","sources":["../src/commonTypes.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"commonTypes.d.ts","sourceRoot":"","sources":["../src/commonTypes.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,23 @@
1
+ import { ISTSLogger, JSONObject } from '@nsshunt/stsutils';
2
+ import { IIPCMessageProcessorIPCPayload } from './commonTypes';
3
+ export interface IPCMessageManagerOptions {
4
+ logger: ISTSLogger;
5
+ requestResponseMessageTimeout: number;
6
+ namespace: string;
7
+ messageSender: (payload: IIPCMessageProcessorIPCPayload) => void;
8
+ }
9
+ /**
10
+ * todo
11
+ * @typedef {Object} options - todo
12
+ * @property {boolean} [wssServer=false] - Create a web socket server on this worker instance
13
+ */
14
+ export declare class IPCMessageManager {
15
+ #private;
16
+ constructor(options: IPCMessageManagerOptions);
17
+ ReceivedMessageFromMaster(msg: any): void;
18
+ SendMessage: (payload: JSONObject) => Promise<JSONObject>;
19
+ ProcessMessage: (msg: any) => void;
20
+ Start: () => void;
21
+ Stop: () => void;
22
+ }
23
+ //# sourceMappingURL=ipcMessageManager.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ipcMessageManager.d.ts","sourceRoot":"","sources":["../src/ipcMessageManager.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAA;AAI1D,OAAO,EAAE,8BAA8B,EAAoC,MAAM,eAAe,CAAA;AAEhG,MAAM,WAAW,wBAAwB;IACrC,MAAM,EAAE,UAAU,CAAA;IAClB,6BAA6B,EAAE,MAAM,CAAA;IACrC,SAAS,EAAE,MAAM,CAAA;IACjB,aAAa,EAAE,CAAC,OAAO,EAAE,8BAA8B,KAAK,IAAI,CAAA;CACnE;AACD;;;;GAIG;AACH,qBAAa,iBAAiB;;gBAMd,OAAO,EAAE,wBAAwB;IAU7C,yBAAyB,CAAC,GAAG,EAAE,GAAG;IAIlC,WAAW,YAAa,UAAU,KAAG,QAAQ,UAAU,CAAC,CAUvD;IAoCD,cAAc,QAAS,GAAG,UAezB;IAED,KAAK,aAEJ;IAED,IAAI,aAQH;CACJ"}
@@ -1,11 +1,12 @@
1
1
  /// <reference types="node" />
2
- import { ISTSLogger } from '@nsshunt/stsutils';
2
+ import { ISTSLogger, JSONObject } from '@nsshunt/stsutils';
3
3
  import { Worker } from 'node:cluster';
4
4
  import { IIPCMessageProcessorIPCPayload } from './commonTypes';
5
5
  export interface IIPCMessageProcessorPrimary {
6
6
  logger: ISTSLogger;
7
7
  namespace: string;
8
- processCommand: (payload: IIPCMessageProcessorIPCPayload) => Promise<IIPCMessageProcessorIPCPayload>;
8
+ processCommand: (payload: IIPCMessageProcessorIPCPayload) => Promise<JSONObject>;
9
+ worker: Worker;
9
10
  }
10
11
  /**
11
12
  * todo
@@ -15,6 +16,7 @@ export interface IIPCMessageProcessorPrimary {
15
16
  export declare class IPCMessageProcessorPrimary {
16
17
  #private;
17
18
  constructor(options: IIPCMessageProcessorPrimary);
19
+ SendMessage: (payload: JSONObject) => Promise<JSONObject>;
18
20
  Start: (worker: Worker) => void;
19
21
  Stop: (worker: Worker) => void;
20
22
  }