Compare commits

..

4 Commits

Author SHA1 Message Date
f5ca4a696c 3.0.9 2023-01-19 14:20:45 +01:00
b48d42dfb9 fix(core): update 2023-01-19 14:20:44 +01:00
5bf568d0cd 3.0.8 2023-01-19 14:09:57 +01:00
173e1ca35d fix(core): update 2023-01-19 14:09:56 +01:00
4 changed files with 14 additions and 7 deletions

View File

@ -1,6 +1,6 @@
{ {
"name": "@pushrocks/taskbuffer", "name": "@pushrocks/taskbuffer",
"version": "3.0.7", "version": "3.0.9",
"private": false, "private": false,
"description": "flexible task management. TypeScript ready!", "description": "flexible task management. TypeScript ready!",
"main": "dist_ts/index.js", "main": "dist_ts/index.js",

View File

@ -3,6 +3,6 @@
*/ */
export const commitinfo = { export const commitinfo = {
name: '@pushrocks/taskbuffer', name: '@pushrocks/taskbuffer',
version: '3.0.7', version: '3.0.9',
description: 'flexible task management. TypeScript ready!' description: 'flexible task management. TypeScript ready!'
} }

View File

@ -4,7 +4,10 @@ import * as plugins from './taskbuffer.plugins.js';
/** /**
* constains all data for the final coordinator to actually make an informed decision * constains all data for the final coordinator to actually make an informed decision
*/ */
export interface IDistributedDecisionInfoBasis { export interface IDistributedTaskRequest {
/**
* this needs to correlate to the consultationResult
*/
submitterRandomId: string; submitterRandomId: string;
taskName: string; taskName: string;
taskVersion: string; taskVersion: string;
@ -14,7 +17,11 @@ export interface IDistributedDecisionInfoBasis {
status: 'requesting' | 'gotRejected' | 'failed' | 'succeeded'; status: 'requesting' | 'gotRejected' | 'failed' | 'succeeded';
} }
export interface ITaskConsultationResult { export interface IDsitributedTaskRequestResult {
/**
* this needs to correlate to the decisionInfoBasis
*/
submitterRandomId: string;
considered: boolean; considered: boolean;
rank: string; rank: string;
reason: string; reason: string;
@ -22,6 +29,6 @@ export interface ITaskConsultationResult {
} }
export abstract class AbstractDistributedCoordinator { export abstract class AbstractDistributedCoordinator {
public abstract announceDistributedDecisionInfoBasis(infoBasisArg: IDistributedDecisionInfoBasis): Promise<ITaskConsultationResult> public abstract fireDistributedTaskRequest(infoBasisArg: IDistributedTaskRequest): Promise<IDsitributedTaskRequestResult>
public abstract updateDistributedDevisionInfoBasis(infoBasisArg: IDistributedDecisionInfoBasis): Promise<void> public abstract updateDistributedTaskRequest(infoBasisArg: IDistributedTaskRequest): Promise<void>
} }

View File

@ -89,7 +89,7 @@ export class TaskManager {
); );
if (this.options.distributedCoordinator) { if (this.options.distributedCoordinator) {
console.log(`Found a distrubuted coordinator, performing distributed consultation.`); console.log(`Found a distrubuted coordinator, performing distributed consultation.`);
const announcementResult = await this.options.distributedCoordinator.announceDistributedDecisionInfoBasis({ const announcementResult = await this.options.distributedCoordinator.fireDistributedTaskRequest({
submitterRandomId: this.randomId, submitterRandomId: this.randomId,
status: 'requesting', status: 'requesting',
taskExecutionParallel: 1, taskExecutionParallel: 1,