X-Git-Url: https://git.piment-noir.org/?a=blobdiff_plain;ds=sidebyside;f=src%2Fworker%2FWorkerTypes.ts;h=b180983e8a9594c3e1308fa12679a4fc2cfd4493;hb=47f846b2a74439a610321356604f2f4184cb5c0b;hp=205cec42969796a6e70d58b1935762aec0e19d65;hpb=a807045be19c1ed4996a44d8c2c8774e926dc6dc;p=e-mobility-charging-stations-simulator.git diff --git a/src/worker/WorkerTypes.ts b/src/worker/WorkerTypes.ts index 205cec42..b180983e 100644 --- a/src/worker/WorkerTypes.ts +++ b/src/worker/WorkerTypes.ts @@ -4,15 +4,16 @@ import { type PoolEvent, PoolEvents, type ThreadPoolOptions } from 'poolifier' export enum WorkerProcessType { workerSet = 'workerSet', - /** @experimental */ - dynamicPool = 'dynamicPool', fixedPool = 'fixedPool', + /** @experimental */ + dynamicPool = 'dynamicPool' } export interface SetInfo { version: string type: string worker: string + started: boolean size: number elementsExecuting: number elementsPerWorker: number @@ -22,8 +23,8 @@ export enum WorkerSetEvents { started = 'started', stopped = 'stopped', error = 'error', - elementStarted = 'elementStarted', - elementError = 'elementError', + elementAdded = 'elementAdded', + elementError = 'elementError' } export const WorkerEvents = { @@ -35,7 +36,7 @@ export type WorkerEvents = PoolEvent | WorkerSetEvents export interface WorkerOptions { workerStartDelay?: number - elementStartDelay?: number + elementAddDelay?: number poolMaxSize: number poolMinSize: number elementsPerWorker?: number @@ -44,18 +45,26 @@ export interface WorkerOptions { export type WorkerData = Record +export interface WorkerDataError extends WorkerData { + event: WorkerMessageEvents + name: string + message: string + stack?: string +} + export interface WorkerSetElement { worker: Worker numberOfWorkerElements: number } export interface WorkerMessage { + uuid: `${string}-${string}-${string}-${string}` event: WorkerMessageEvents data: T } export enum WorkerMessageEvents { - startWorkerElement = 'startWorkerElement', - startWorkerElementError = 'startWorkerElementError', - startedWorkerElement = 'startedWorkerElement', + addWorkerElement = 'addWorkerElement', + addedWorkerElement = 'addedWorkerElement', + workerElementError = 'workerElementError' }