repositories
/
e-mobility-charging-stations-simulator.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
refactor: cleanup boot notification handling internal handling
[e-mobility-charging-stations-simulator.git]
/
src
/
worker
/
WorkerTypes.ts
diff --git
a/src/worker/WorkerTypes.ts
b/src/worker/WorkerTypes.ts
index b7b21ba30f580c39ffd9cd925a1b106b77fbc6d8..b180983e8a9594c3e1308fa12679a4fc2cfd4493 100644
(file)
--- a/
src/worker/WorkerTypes.ts
+++ b/
src/worker/WorkerTypes.ts
@@
-1,54
+1,70
@@
-import type { Worker } from 'node:worker_threads'
;
+import type { Worker } from 'node:worker_threads'
-import { type PoolEvent, PoolEvents, type ThreadPoolOptions } from 'poolifier'
;
+import { type PoolEvent, PoolEvents, type ThreadPoolOptions } from 'poolifier'
export enum WorkerProcessType {
workerSet = 'workerSet',
export enum WorkerProcessType {
workerSet = 'workerSet',
+ fixedPool = 'fixedPool',
/** @experimental */
/** @experimental */
- dynamicPool = 'dynamicPool',
- staticPool = 'staticPool',
+ dynamicPool = 'dynamicPool'
}
export interface SetInfo {
}
export interface SetInfo {
- version: string;
- type: string;
- worker: string;
- size: number;
- elementsExecuting: number;
- elementsPerWorker: number;
+ version: string
+ type: string
+ worker: string
+ started: boolean
+ size: number
+ elementsExecuting: number
+ elementsPerWorker: number
}
export enum WorkerSetEvents {
}
export enum WorkerSetEvents {
+ started = 'started',
+ stopped = 'stopped',
error = 'error',
error = 'error',
+ elementAdded = 'elementAdded',
+ elementError = 'elementError'
}
export const WorkerEvents = {
...PoolEvents,
}
export const WorkerEvents = {
...PoolEvents,
- ...WorkerSetEvents,
-} as const;
-export type WorkerEvents = PoolEvent | WorkerSetEvents;
+ ...WorkerSetEvents
+} as const
+// eslint-disable-next-line @typescript-eslint/no-redeclare
+export type WorkerEvents = PoolEvent | WorkerSetEvents
export interface WorkerOptions {
export interface WorkerOptions {
- workerStartDelay?: number
;
- element
StartDelay?: number;
- poolMaxSize: number
;
- poolMinSize: number
;
- elementsPerWorker?: number
;
- poolOptions?: ThreadPoolOptions
;
+ workerStartDelay?: number
+ element
AddDelay?: number
+ poolMaxSize: number
+ poolMinSize: number
+ elementsPerWorker?: number
+ poolOptions?: ThreadPoolOptions
}
}
-export type WorkerData = Record<string, unknown>;
+export type WorkerData = Record<string, unknown>
+
+export interface WorkerDataError extends WorkerData {
+ event: WorkerMessageEvents
+ name: string
+ message: string
+ stack?: string
+}
export interface WorkerSetElement {
export interface WorkerSetElement {
- worker: Worker
;
- numberOfWorkerElements: number
;
+ worker: Worker
+ numberOfWorkerElements: number
}
export interface WorkerMessage<T extends WorkerData> {
}
export interface WorkerMessage<T extends WorkerData> {
- id: WorkerMessageEvents;
- data: T;
+ uuid: `${string}-${string}-${string}-${string}`
+ event: WorkerMessageEvents
+ data: T
}
export enum WorkerMessageEvents {
}
export enum WorkerMessageEvents {
- startWorkerElement = 'startWorkerElement',
+ addWorkerElement = 'addWorkerElement',
+ addedWorkerElement = 'addedWorkerElement',
+ workerElementError = 'workerElementError'
}
}