UNPKG

redis-smq-common

Version:

RedisSMQ Common Library provides many components that are mainly used by RedisSMQ and RedisSMQ Monitor.

30 lines 1.54 kB
import { ICallback } from '../async/index.js'; import { RedisLock } from '../redis-lock/index.js'; import { ILogger } from '../logger/index.js'; import { PowerSwitch } from '../power-switch/index.js'; import { IRedisClient } from '../redis-client/index.js'; import { Runnable } from '../runnable/index.js'; import { WorkerRunnable } from './worker-runnable.js'; export type TWorkerResourceGroupEvent = { 'workerResourceGroup.error': (err: Error) => void; }; export declare class WorkerResourceGroup extends Runnable<TWorkerResourceGroupEvent> { protected readonly powerManager: PowerSwitch; protected readonly locker: RedisLock; protected readonly redisClient: IRedisClient; protected readonly logger: ILogger; protected workers: WorkerRunnable<unknown>[]; protected runWorkersLocked: boolean; constructor(redisClient: IRedisClient, logger: ILogger, resourceGroupId: string); protected lock: (cb: ICallback<void>) => void; protected runWorkers: (cb: ICallback<void>) => void; protected shutDownWorkers: (cb: ICallback<void>) => void; protected releaseLock: (cb: ICallback<void>) => void; protected getLogger(): ILogger; protected goingUp(): ((cb: ICallback<void>) => void)[]; protected goingDown(): ((cb: ICallback<void>) => void)[]; protected handleError(err: Error): void; addWorker: (filename: string, payload: unknown) => void; loadFromDir: (workersDir: string, payload: unknown, cb: ICallback<void>) => void; } //# sourceMappingURL=worker-resource-group.d.ts.map