diff --git a/ts/00_commitinfo_data.ts b/ts/00_commitinfo_data.ts index 183754b..5409231 100644 --- a/ts/00_commitinfo_data.ts +++ b/ts/00_commitinfo_data.ts @@ -3,6 +3,6 @@ */ export const commitinfo = { name: '@push.rocks/taskbuffer', - version: '3.1.2', + version: '3.1.3', description: 'flexible task management. TypeScript ready!' } diff --git a/ts/taskbuffer.classes.distributedcoordinator.ts b/ts/taskbuffer.classes.distributedcoordinator.ts index 2d20c78..82f3fb8 100644 --- a/ts/taskbuffer.classes.distributedcoordinator.ts +++ b/ts/taskbuffer.classes.distributedcoordinator.ts @@ -30,4 +30,7 @@ export abstract class AbstractDistributedCoordinator { public abstract updateDistributedTaskRequest( infoBasis: IDistributedTaskRequest ): Promise; + + public abstract start(): Promise; + public abstract stop(): Promise; } diff --git a/ts/taskbuffer.classes.taskmanager.ts b/ts/taskbuffer.classes.taskmanager.ts index ed66224..2d812aa 100644 --- a/ts/taskbuffer.classes.taskmanager.ts +++ b/ts/taskbuffer.classes.taskmanager.ts @@ -121,11 +121,17 @@ export class TaskManager { return task && task.cronJob ? task.cronJob.cronExpression : null; } - public start() { + public async start() { + if (this.options.distributedCoordinator) { + await this.options.distributedCoordinator.start(); + } this.cronJobManager.start(); } - public stop() { + public async stop() { this.cronJobManager.stop(); + if (this.options.distributedCoordinator) { + await this.options.distributedCoordinator.stop(); + } } }