@push.rocks/taskbuffer 3.0.11 → 3.0.14
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist_bundle/bundle.js +5306 -20779
- package/dist_bundle/bundle.js.map +4 -4
- package/dist_ts/00_commitinfo_data.js +1 -1
- package/dist_ts/taskbuffer.classes.bufferrunner.d.ts +1 -1
- package/dist_ts/taskbuffer.classes.bufferrunner.js +11 -18
- package/dist_ts/taskbuffer.classes.cyclecounter.d.ts +1 -1
- package/dist_ts/taskbuffer.classes.cyclecounter.js +2 -2
- package/dist_ts/taskbuffer.classes.distributedcoordinator.js +3 -3
- package/dist_ts/taskbuffer.classes.task.d.ts +21 -53
- package/dist_ts/taskbuffer.classes.task.js +9 -23
- package/dist_ts/taskbuffer.classes.taskdebounced.d.ts +1 -1
- package/dist_ts/taskbuffer.classes.taskdebounced.js +1 -1
- package/dist_ts/taskbuffer.classes.taskmanager.d.ts +1 -1
- package/dist_ts/taskbuffer.classes.taskmanager.js +3 -3
- package/dist_ts/taskbuffer.classes.taskonce.d.ts +1 -1
- package/dist_ts/taskbuffer.classes.taskonce.js +2 -2
- package/dist_ts/taskbuffer.classes.taskrunner.js +2 -2
- package/package.json +11 -11
- package/ts/00_commitinfo_data.ts +1 -1
- package/ts/taskbuffer.classes.bufferrunner.ts +12 -17
- package/ts/taskbuffer.classes.cyclecounter.ts +1 -1
- package/ts/taskbuffer.classes.task.ts +36 -72
- package/ts/taskbuffer.classes.taskdebounced.ts +1 -1
- package/ts/taskbuffer.classes.taskonce.ts +1 -1
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
*/
|
|
4
4
|
export const commitinfo = {
|
|
5
5
|
name: '@push.rocks/taskbuffer',
|
|
6
|
-
version: '3.0.
|
|
6
|
+
version: '3.0.14',
|
|
7
7
|
description: 'flexible task management. TypeScript ready!'
|
|
8
8
|
};
|
|
9
9
|
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiMDBfY29tbWl0aW5mb19kYXRhLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vdHMvMDBfY29tbWl0aW5mb19kYXRhLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOztHQUVHO0FBQ0gsTUFBTSxDQUFDLE1BQU0sVUFBVSxHQUFHO0lBQ3hCLElBQUksRUFBRSx3QkFBd0I7SUFDOUIsT0FBTyxFQUFFLFFBQVE7SUFDakIsV0FBVyxFQUFFLDZDQUE2QztDQUMzRCxDQUFBIn0=
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { Task } from './taskbuffer.classes.task.js';
|
|
2
2
|
export class BufferRunner {
|
|
3
3
|
constructor(taskArg) {
|
|
4
|
-
//
|
|
4
|
+
// initialize by default
|
|
5
5
|
this.bufferCounter = 0;
|
|
6
6
|
this.task = taskArg;
|
|
7
7
|
}
|
|
@@ -9,27 +9,20 @@ export class BufferRunner {
|
|
|
9
9
|
if (!(this.bufferCounter >= this.task.bufferMax)) {
|
|
10
10
|
this.bufferCounter++;
|
|
11
11
|
}
|
|
12
|
-
const returnPromise = this.task.cycleCounter.getPromiseForCycle(this.bufferCounter
|
|
12
|
+
const returnPromise = this.task.cycleCounter.getPromiseForCycle(this.bufferCounter);
|
|
13
13
|
if (!this.task.running) {
|
|
14
14
|
this._run(x);
|
|
15
15
|
}
|
|
16
16
|
return returnPromise;
|
|
17
17
|
}
|
|
18
|
-
_run(x) {
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
});
|
|
27
|
-
}
|
|
28
|
-
else {
|
|
29
|
-
this.task.running = false;
|
|
30
|
-
}
|
|
31
|
-
};
|
|
32
|
-
recursiveBufferRunner(x);
|
|
18
|
+
async _run(x) {
|
|
19
|
+
this.task.running = true;
|
|
20
|
+
while (this.bufferCounter > 0) {
|
|
21
|
+
const result = await Task.runTask(this.task, { x: x });
|
|
22
|
+
this.bufferCounter--;
|
|
23
|
+
this.task.cycleCounter.informOfCycle(result);
|
|
24
|
+
}
|
|
25
|
+
this.task.running = false;
|
|
33
26
|
}
|
|
34
27
|
}
|
|
35
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
28
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFza2J1ZmZlci5jbGFzc2VzLmJ1ZmZlcnJ1bm5lci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3RzL3Rhc2tidWZmZXIuY2xhc3Nlcy5idWZmZXJydW5uZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLElBQUksRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBRXBELE1BQU0sT0FBTyxZQUFZO0lBS3ZCLFlBQVksT0FBa0I7UUFIOUIsd0JBQXdCO1FBQ2pCLGtCQUFhLEdBQVcsQ0FBQyxDQUFDO1FBRy9CLElBQUksQ0FBQyxJQUFJLEdBQUcsT0FBTyxDQUFDO0lBQ3RCLENBQUM7SUFFTSxPQUFPLENBQUMsQ0FBTTtRQUNuQixJQUFJLENBQUMsQ0FBQyxJQUFJLENBQUMsYUFBYSxJQUFJLElBQUksQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLEVBQUU7WUFDaEQsSUFBSSxDQUFDLGFBQWEsRUFBRSxDQUFDO1NBQ3RCO1FBQ0QsTUFBTSxhQUFhLEdBQWlCLElBQUksQ0FBQyxJQUFJLENBQUMsWUFBWSxDQUFDLGtCQUFrQixDQUMzRSxJQUFJLENBQUMsYUFBYSxDQUNuQixDQUFDO1FBQ0YsSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTyxFQUFFO1lBQ3RCLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUM7U0FDZDtRQUNELE9BQU8sYUFBYSxDQUFDO0lBQ3ZCLENBQUM7SUFFTyxLQUFLLENBQUMsSUFBSSxDQUFDLENBQU07UUFDdkIsSUFBSSxDQUFDLElBQUksQ0FBQyxPQUFPLEdBQUcsSUFBSSxDQUFDO1FBQ3pCLE9BQU8sSUFBSSxDQUFDLGFBQWEsR0FBRyxDQUFDLEVBQUU7WUFDN0IsTUFBTSxNQUFNLEdBQUcsTUFBTSxJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxJQUFJLEVBQUUsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQztZQUN2RCxJQUFJLENBQUMsYUFBYSxFQUFFLENBQUM7WUFDckIsSUFBSSxDQUFDLElBQUksQ0FBQyxZQUFZLENBQUMsYUFBYSxDQUFDLE1BQU0sQ0FBQyxDQUFDO1NBQzlDO1FBQ0QsSUFBSSxDQUFDLElBQUksQ0FBQyxPQUFPLEdBQUcsS0FBSyxDQUFDO0lBQzVCLENBQUM7Q0FDRiJ9
|
|
@@ -7,7 +7,7 @@ export interface ICycleObject {
|
|
|
7
7
|
export declare class CycleCounter {
|
|
8
8
|
task: Task;
|
|
9
9
|
cycleObjectArray: ICycleObject[];
|
|
10
|
-
constructor(taskArg: Task);
|
|
10
|
+
constructor(taskArg: Task<any>);
|
|
11
11
|
getPromiseForCycle(cycleCountArg: number): Promise<unknown>;
|
|
12
12
|
informOfCycle(x: any): void;
|
|
13
13
|
}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import * as plugins from './taskbuffer.plugins.js';
|
|
2
|
-
import './taskbuffer.classes.task.js';
|
|
2
|
+
import { Task } from './taskbuffer.classes.task.js';
|
|
3
3
|
export class CycleCounter {
|
|
4
4
|
constructor(taskArg) {
|
|
5
5
|
this.cycleObjectArray = [];
|
|
@@ -28,4 +28,4 @@ export class CycleCounter {
|
|
|
28
28
|
this.cycleObjectArray = newCycleObjectArray;
|
|
29
29
|
}
|
|
30
30
|
}
|
|
31
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
31
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFza2J1ZmZlci5jbGFzc2VzLmN5Y2xlY291bnRlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3RzL3Rhc2tidWZmZXIuY2xhc3Nlcy5jeWNsZWNvdW50ZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxLQUFLLE9BQU8sTUFBTSx5QkFBeUIsQ0FBQztBQUNuRCxPQUFPLEVBQUUsSUFBSSxFQUFFLE1BQU0sOEJBQThCLENBQUM7QUFPcEQsTUFBTSxPQUFPLFlBQVk7SUFHdkIsWUFBWSxPQUFrQjtRQUR2QixxQkFBZ0IsR0FBbUIsRUFBRSxDQUFDO1FBRTNDLElBQUksQ0FBQyxJQUFJLEdBQUcsT0FBTyxDQUFDO0lBQ3RCLENBQUM7SUFDTSxrQkFBa0IsQ0FBQyxhQUFxQjtRQUM3QyxNQUFNLElBQUksR0FBRyxPQUFPLENBQUMsWUFBWSxDQUFDLEtBQUssRUFBRSxDQUFDO1FBQzFDLE1BQU0sV0FBVyxHQUFpQjtZQUNoQyxZQUFZLEVBQUUsYUFBYTtZQUMzQixRQUFRLEVBQUUsSUFBSTtTQUNmLENBQUM7UUFDRixJQUFJLENBQUMsZ0JBQWdCLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxDQUFDO1FBQ3hDLE9BQU8sSUFBSSxDQUFDLE9BQU8sQ0FBQztJQUN0QixDQUFDO0lBQ00sYUFBYSxDQUFDLENBQU07UUFDekIsTUFBTSxtQkFBbUIsR0FBbUIsRUFBRSxDQUFDO1FBQy9DLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxPQUFPLENBQUMsQ0FBQyxjQUFjLEVBQUUsRUFBRTtZQUMvQyxjQUFjLENBQUMsWUFBWSxFQUFFLENBQUM7WUFDOUIsSUFBSSxjQUFjLENBQUMsWUFBWSxJQUFJLENBQUMsRUFBRTtnQkFDcEMsY0FBYyxDQUFDLFFBQVEsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLENBQUM7YUFDcEM7aUJBQU07Z0JBQ0wsbUJBQW1CLENBQUMsSUFBSSxDQUFDLGNBQWMsQ0FBQyxDQUFDO2FBQzFDO1FBQ0gsQ0FBQyxDQUFDLENBQUM7UUFDSCxJQUFJLENBQUMsZ0JBQWdCLEdBQUcsbUJBQW1CLENBQUM7SUFDOUMsQ0FBQztDQUNGIn0=
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import './taskbuffer.classes.task.js';
|
|
2
|
-
import './taskbuffer.plugins.js';
|
|
1
|
+
import { Task } from './taskbuffer.classes.task.js';
|
|
2
|
+
import * as plugins from './taskbuffer.plugins.js';
|
|
3
3
|
export class AbstractDistributedCoordinator {
|
|
4
4
|
}
|
|
5
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
5
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFza2J1ZmZlci5jbGFzc2VzLmRpc3RyaWJ1dGVkY29vcmRpbmF0b3IuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi90cy90YXNrYnVmZmVyLmNsYXNzZXMuZGlzdHJpYnV0ZWRjb29yZGluYXRvci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsSUFBSSxFQUFFLE1BQU0sOEJBQThCLENBQUM7QUFDcEQsT0FBTyxLQUFLLE9BQU8sTUFBTSx5QkFBeUIsQ0FBQztBQWdDbkQsTUFBTSxPQUFnQiw4QkFBOEI7Q0FPbkQifQ==
|
|
@@ -1,83 +1,51 @@
|
|
|
1
1
|
import * as plugins from './taskbuffer.plugins.js';
|
|
2
2
|
import { BufferRunner } from './taskbuffer.classes.bufferrunner.js';
|
|
3
3
|
import { CycleCounter } from './taskbuffer.classes.cyclecounter.js';
|
|
4
|
-
export interface ITaskFunction {
|
|
5
|
-
(x?: any): PromiseLike<any>;
|
|
4
|
+
export interface ITaskFunction<T = undefined> {
|
|
5
|
+
(x?: any, setupValue?: T): PromiseLike<any>;
|
|
6
6
|
}
|
|
7
|
-
export
|
|
8
|
-
|
|
9
|
-
|
|
7
|
+
export interface ITaskSetupFunction<T = undefined> {
|
|
8
|
+
(): Promise<T>;
|
|
9
|
+
}
|
|
10
|
+
export type TPreOrAfterTaskFunction = () => Task<any>;
|
|
11
|
+
export declare class Task<T = undefined> {
|
|
12
|
+
static extractTask<T = undefined>(preOrAfterTaskArg: Task<T> | TPreOrAfterTaskFunction): Task<T>;
|
|
10
13
|
static emptyTaskFunction: ITaskFunction;
|
|
11
|
-
static isTask: (taskArg: Task) => boolean;
|
|
12
|
-
static isTaskTouched
|
|
13
|
-
static runTask: (taskArg:
|
|
14
|
+
static isTask: (taskArg: Task<any>) => boolean;
|
|
15
|
+
static isTaskTouched<T = undefined>(taskArg: Task<T> | TPreOrAfterTaskFunction, touchedTasksArray: Task<T>[]): boolean;
|
|
16
|
+
static runTask: <T_1>(taskArg: TPreOrAfterTaskFunction | Task<T_1>, optionsArg: {
|
|
14
17
|
x?: any;
|
|
15
|
-
touchedTasksArray?: Task[];
|
|
18
|
+
touchedTasksArray?: Task<T_1>[];
|
|
16
19
|
}) => Promise<unknown>;
|
|
17
20
|
name: string;
|
|
18
|
-
/**
|
|
19
|
-
* the version of the task
|
|
20
|
-
* should follow semver
|
|
21
|
-
* might be important for DistributedCoordinator
|
|
22
|
-
*/
|
|
23
21
|
version: string;
|
|
24
|
-
taskFunction: ITaskFunction
|
|
22
|
+
taskFunction: ITaskFunction<T>;
|
|
25
23
|
buffered: boolean;
|
|
26
24
|
cronJob: plugins.smarttime.CronJob;
|
|
27
25
|
bufferMax: number;
|
|
28
26
|
execDelay: number;
|
|
29
27
|
timeout: number;
|
|
30
|
-
preTask: Task | TPreOrAfterTaskFunction;
|
|
31
|
-
afterTask: Task | TPreOrAfterTaskFunction;
|
|
28
|
+
preTask: Task<T> | TPreOrAfterTaskFunction;
|
|
29
|
+
afterTask: Task<T> | TPreOrAfterTaskFunction;
|
|
32
30
|
running: boolean;
|
|
33
31
|
bufferRunner: BufferRunner;
|
|
34
32
|
cycleCounter: CycleCounter;
|
|
35
33
|
idle: boolean;
|
|
36
34
|
private _state;
|
|
35
|
+
taskSetup: ITaskSetupFunction<T>;
|
|
36
|
+
setupValue: T;
|
|
37
37
|
constructor(optionsArg: {
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
taskFunction: ITaskFunction;
|
|
42
|
-
/**
|
|
43
|
-
* any other task to run before
|
|
44
|
-
*/
|
|
45
|
-
preTask?: Task | TPreOrAfterTaskFunction;
|
|
46
|
-
/**
|
|
47
|
-
* any other task to run after
|
|
48
|
-
*/
|
|
49
|
-
afterTask?: Task | TPreOrAfterTaskFunction;
|
|
50
|
-
/**
|
|
51
|
-
* wether this task should run buffered
|
|
52
|
-
*/
|
|
38
|
+
taskFunction: ITaskFunction<T>;
|
|
39
|
+
preTask?: Task<T> | TPreOrAfterTaskFunction;
|
|
40
|
+
afterTask?: Task<T> | TPreOrAfterTaskFunction;
|
|
53
41
|
buffered?: boolean;
|
|
54
|
-
/**
|
|
55
|
-
* the maximum buffer
|
|
56
|
-
*/
|
|
57
42
|
bufferMax?: number;
|
|
58
|
-
/**
|
|
59
|
-
* the execution delay, before the task is executed
|
|
60
|
-
* only makes sense when running in buffered mode
|
|
61
|
-
*/
|
|
62
43
|
execDelay?: number;
|
|
63
|
-
/**
|
|
64
|
-
* the name of the task
|
|
65
|
-
*/
|
|
66
44
|
name?: string;
|
|
45
|
+
taskSetup?: ITaskSetupFunction<T>;
|
|
67
46
|
});
|
|
68
|
-
/**
|
|
69
|
-
* trigger the task. Will trigger buffered if this.buffered is true
|
|
70
|
-
*/
|
|
71
47
|
trigger(x?: any): Promise<any>;
|
|
72
|
-
/**
|
|
73
|
-
* trigger task unbuffered.
|
|
74
|
-
* will actually run the task, not considering any buffered limits.
|
|
75
|
-
*/
|
|
76
48
|
triggerUnBuffered(x?: any): Promise<any>;
|
|
77
|
-
/**
|
|
78
|
-
* trigger task buffered.
|
|
79
|
-
* note: .trigger() also calls this function
|
|
80
|
-
*/
|
|
81
49
|
triggerBuffered(x?: any): Promise<any>;
|
|
82
50
|
get state(): string;
|
|
83
51
|
set state(stateArg: string);
|
|
@@ -30,7 +30,7 @@ export class Task {
|
|
|
30
30
|
return false;
|
|
31
31
|
}
|
|
32
32
|
}; }
|
|
33
|
-
static
|
|
33
|
+
static isTaskTouched(taskArg, touchedTasksArray) {
|
|
34
34
|
const taskToCheck = Task.extractTask(taskArg);
|
|
35
35
|
let result = false;
|
|
36
36
|
for (const keyArg in touchedTasksArray) {
|
|
@@ -39,21 +39,21 @@ export class Task {
|
|
|
39
39
|
}
|
|
40
40
|
}
|
|
41
41
|
return result;
|
|
42
|
-
}
|
|
42
|
+
}
|
|
43
|
+
;
|
|
43
44
|
static { this.runTask = async (taskArg, optionsArg) => {
|
|
44
|
-
// extracts the task in case it is specified as a return value of a function
|
|
45
45
|
const taskToRun = Task.extractTask(taskArg);
|
|
46
46
|
const done = plugins.smartpromise.defer();
|
|
47
|
-
|
|
47
|
+
if (!taskToRun.setupValue && taskToRun.taskSetup) {
|
|
48
|
+
taskToRun.setupValue = await taskToRun.taskSetup();
|
|
49
|
+
}
|
|
48
50
|
if (taskToRun.execDelay) {
|
|
49
51
|
await plugins.smartdelay.delayFor(taskToRun.execDelay);
|
|
50
52
|
}
|
|
51
|
-
// set running params
|
|
52
53
|
taskToRun.running = true;
|
|
53
54
|
done.promise.then(async () => {
|
|
54
55
|
taskToRun.running = false;
|
|
55
56
|
});
|
|
56
|
-
// handle options
|
|
57
57
|
const options = {
|
|
58
58
|
...{ x: undefined, touchedTasksArray: [] },
|
|
59
59
|
...optionsArg,
|
|
@@ -61,11 +61,9 @@ export class Task {
|
|
|
61
61
|
const x = options.x;
|
|
62
62
|
const touchedTasksArray = options.touchedTasksArray;
|
|
63
63
|
touchedTasksArray.push(taskToRun);
|
|
64
|
-
// run the task cascade
|
|
65
64
|
const localDeferred = plugins.smartpromise.defer();
|
|
66
65
|
localDeferred.promise
|
|
67
66
|
.then(() => {
|
|
68
|
-
// lets run any preTask
|
|
69
67
|
if (taskToRun.preTask && !Task.isTaskTouched(taskToRun.preTask, touchedTasksArray)) {
|
|
70
68
|
return Task.runTask(taskToRun.preTask, { x, touchedTasksArray });
|
|
71
69
|
}
|
|
@@ -76,9 +74,8 @@ export class Task {
|
|
|
76
74
|
}
|
|
77
75
|
})
|
|
78
76
|
.then(async (x) => {
|
|
79
|
-
// lets run the main task
|
|
80
77
|
try {
|
|
81
|
-
return await taskToRun.taskFunction(x);
|
|
78
|
+
return await taskToRun.taskFunction(x, taskToRun.setupValue);
|
|
82
79
|
}
|
|
83
80
|
catch (e) {
|
|
84
81
|
console.log(e);
|
|
@@ -104,7 +101,6 @@ export class Task {
|
|
|
104
101
|
return await done.promise;
|
|
105
102
|
}; }
|
|
106
103
|
constructor(optionsArg) {
|
|
107
|
-
// initialize by default
|
|
108
104
|
this.running = false;
|
|
109
105
|
this.bufferRunner = new BufferRunner(this);
|
|
110
106
|
this.cycleCounter = new CycleCounter(this);
|
|
@@ -118,10 +114,8 @@ export class Task {
|
|
|
118
114
|
this.bufferMax = optionsArg.bufferMax;
|
|
119
115
|
this.execDelay = optionsArg.execDelay;
|
|
120
116
|
this.name = optionsArg.name;
|
|
117
|
+
this.taskSetup = optionsArg.taskSetup;
|
|
121
118
|
}
|
|
122
|
-
/**
|
|
123
|
-
* trigger the task. Will trigger buffered if this.buffered is true
|
|
124
|
-
*/
|
|
125
119
|
trigger(x) {
|
|
126
120
|
if (this.buffered) {
|
|
127
121
|
return this.triggerBuffered(x);
|
|
@@ -130,17 +124,9 @@ export class Task {
|
|
|
130
124
|
return this.triggerUnBuffered(x);
|
|
131
125
|
}
|
|
132
126
|
}
|
|
133
|
-
/**
|
|
134
|
-
* trigger task unbuffered.
|
|
135
|
-
* will actually run the task, not considering any buffered limits.
|
|
136
|
-
*/
|
|
137
127
|
triggerUnBuffered(x) {
|
|
138
128
|
return Task.runTask(this, { x: x });
|
|
139
129
|
}
|
|
140
|
-
/**
|
|
141
|
-
* trigger task buffered.
|
|
142
|
-
* note: .trigger() also calls this function
|
|
143
|
-
*/
|
|
144
130
|
triggerBuffered(x) {
|
|
145
131
|
return this.bufferRunner.trigger(x);
|
|
146
132
|
}
|
|
@@ -156,4 +142,4 @@ export class Task {
|
|
|
156
142
|
}
|
|
157
143
|
}
|
|
158
144
|
}
|
|
159
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
145
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFza2J1ZmZlci5jbGFzc2VzLnRhc2suanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi90cy90YXNrYnVmZmVyLmNsYXNzZXMudGFzay50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEtBQUssT0FBTyxNQUFNLHlCQUF5QixDQUFDO0FBQ25ELE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxzQ0FBc0MsQ0FBQztBQUNwRSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sc0NBQXNDLENBQUM7QUFFcEUsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBWWpELE1BQU0sT0FBTyxJQUFJO0lBQ2YsU0FBUztJQUNGLE1BQU0sQ0FBQyxXQUFXLENBQWdCLGlCQUFvRDtRQUMzRixRQUFRLElBQUksRUFBRTtZQUNaLEtBQUssQ0FBQyxpQkFBaUI7Z0JBQ3JCLE9BQU8sSUFBSSxDQUFDO1lBQ2QsS0FBSyxpQkFBaUIsWUFBWSxJQUFJO2dCQUNwQyxPQUFPLGlCQUE0QixDQUFDO1lBQ3RDLEtBQUssT0FBTyxpQkFBaUIsS0FBSyxVQUFVO2dCQUMxQyxNQUFNLFlBQVksR0FBRyxpQkFBNEMsQ0FBQztnQkFDbEUsT0FBTyxZQUFZLEVBQUUsQ0FBQztZQUN4QjtnQkFDRSxPQUFPLElBQUksQ0FBQztTQUNmO0lBQ0gsQ0FBQzthQUVhLHNCQUFpQixHQUFrQixVQUFVLENBQUM7UUFDMUQsTUFBTSxJQUFJLEdBQUcsT0FBTyxDQUFDLFlBQVksQ0FBQyxLQUFLLEVBQUUsQ0FBQztRQUMxQyxJQUFJLENBQUMsT0FBTyxFQUFFLENBQUM7UUFDZixPQUFPLElBQUksQ0FBQyxPQUFPLENBQUM7SUFDdEIsQ0FBQyxBQUo4QixDQUk3QjthQUVZLFdBQU0sR0FBRyxDQUFDLE9BQWtCLEVBQVcsRUFBRTtRQUNyRCxJQUFJLE9BQU8sWUFBWSxJQUFJLElBQUksT0FBTyxPQUFPLENBQUMsWUFBWSxLQUFLLFVBQVUsRUFBRTtZQUN6RSxPQUFPLElB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
|
|
@@ -17,4 +17,4 @@ export class TaskDebounced extends Task {
|
|
|
17
17
|
});
|
|
18
18
|
}
|
|
19
19
|
}
|
|
20
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
20
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFza2J1ZmZlci5jbGFzc2VzLnRhc2tkZWJvdW5jZWQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi90cy90YXNrYnVmZmVyLmNsYXNzZXMudGFza2RlYm91bmNlZC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEtBQUssT0FBTyxNQUFNLHlCQUF5QixDQUFDO0FBRW5ELE9BQU8sRUFBRSxJQUFJLEVBQXNCLE1BQU0sOEJBQThCLENBQUM7QUFFeEUsTUFBTSxPQUFPLGFBQTJCLFNBQVEsSUFBSTtJQUlsRCxZQUFZLFVBSVg7UUFDQyxLQUFLLENBQUM7WUFDSixJQUFJLEVBQUUsVUFBVSxDQUFDLElBQUk7WUFDckIsWUFBWSxFQUFFLEtBQUssRUFBRSxDQUFJLEVBQUUsRUFBRTtnQkFDM0IsSUFBSSxDQUFDLGlCQUFpQixDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQztZQUNqQyxDQUFDO1NBQ0YsQ0FBQyxDQUFDO1FBWkcsc0JBQWlCLEdBQUcsSUFBSSxPQUFPLENBQUMsT0FBTyxDQUFDLGdCQUFnQixFQUFLLENBQUM7UUFhcEUsSUFBSSxDQUFDLFlBQVksR0FBRyxVQUFVLENBQUMsWUFBWSxDQUFDO1FBQzVDLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxVQUFVO2FBQzlCLElBQUksQ0FBQyxPQUFPLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsWUFBWSxDQUFDLFVBQVUsQ0FBQyxvQkFBb0IsQ0FBQyxDQUFDO2FBQzVFLFNBQVMsQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFO1lBQ2YsSUFBSSxDQUFDLFlBQVksQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUN2QixDQUFDLENBQUMsQ0FBQztJQUNQLENBQUM7Q0FDRiJ9
|
|
@@ -11,7 +11,7 @@ export interface ITaskManagerConstructorOptions {
|
|
|
11
11
|
}
|
|
12
12
|
export declare class TaskManager {
|
|
13
13
|
randomId: string;
|
|
14
|
-
taskMap: plugins.lik.ObjectMap<Task
|
|
14
|
+
taskMap: plugins.lik.ObjectMap<Task<undefined>>;
|
|
15
15
|
private cronJobManager;
|
|
16
16
|
options: ITaskManagerConstructorOptions;
|
|
17
17
|
constructor(optionosArg?: ITaskManagerConstructorOptions);
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import * as plugins from './taskbuffer.plugins.js';
|
|
2
|
-
import './taskbuffer.classes.task.js';
|
|
3
|
-
import './taskbuffer.classes.distributedcoordinator.js';
|
|
2
|
+
import { Task } from './taskbuffer.classes.task.js';
|
|
3
|
+
import { AbstractDistributedCoordinator } from './taskbuffer.classes.distributedcoordinator.js';
|
|
4
4
|
export class TaskManager {
|
|
5
5
|
constructor(optionosArg = {}) {
|
|
6
6
|
this.randomId = plugins.isounique.uni();
|
|
@@ -126,4 +126,4 @@ export class TaskManager {
|
|
|
126
126
|
this.cronJobManager.stop();
|
|
127
127
|
}
|
|
128
128
|
}
|
|
129
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
129
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFza2J1ZmZlci5jbGFzc2VzLnRhc2ttYW5hZ2VyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vdHMvdGFza2J1ZmZlci5jbGFzc2VzLnRhc2ttYW5hZ2VyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sS0FBSyxPQUFPLE1BQU0seUJBQXlCLENBQUM7QUFDbkQsT0FBTyxFQUFFLElBQUksRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBQ3BELE9BQU8sRUFBRSw4QkFBOEIsRUFBRSxNQUFNLGdEQUFnRCxDQUFDO0FBWWhHLE1BQU0sT0FBTyxXQUFXO0lBU3RCLFlBQVksY0FBOEMsRUFBRTtRQVJyRCxhQUFRLEdBQUcsT0FBTyxDQUFDLFNBQVMsQ0FBQyxHQUFHLEVBQUUsQ0FBQztRQUNuQyxZQUFPLEdBQUcsSUFBSSxPQUFPLENBQUMsR0FBRyxDQUFDLFNBQVMsRUFBUSxDQUFDO1FBQzNDLG1CQUFjLEdBQUcsSUFBSSxPQUFPLENBQUMsU0FBUyxDQUFDLFdBQVcsRUFBRSxDQUFDO1FBRXRELFlBQU8sR0FBbUM7WUFDL0Msc0JBQXNCLEVBQUUsSUFBSTtTQUM3QixDQUFDO1FBR0EsSUFBSSxDQUFDLE9BQU8sR0FBRyxNQUFNLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxPQUFPLEVBQUUsV0FBVyxDQUFDLENBQUM7SUFDMUQsQ0FBQztJQUVEOzs7T0FHRztJQUNJLGFBQWEsQ0FBQyxXQUFtQjtRQUN0QyxPQUFPLElBQUksQ0FBQyxPQUFPLENBQUMsUUFBUSxDQUFDLENBQUMsT0FBTyxFQUFFLEVBQUU7WUFDdkMsT0FBTyxPQUFPLENBQUMsSUFBSSxLQUFLLFdBQVcsQ0FBQztRQUN0QyxDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFRDs7O09BR0c7SUFDSSxPQUFPLENBQUMsT0FBYTtRQUMxQixJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksRUFBRTtZQUNqQixNQUFNLElBQUksS0FBSyxDQUFDLGlEQUFpRCxDQUFDLENBQUM7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
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import './taskbuffer.plugins.js';
|
|
1
|
+
import * as plugins from './taskbuffer.plugins.js';
|
|
2
2
|
import { Task } from './taskbuffer.classes.task.js';
|
|
3
3
|
/**
|
|
4
4
|
* TaskOnce is run exactly once, no matter how often it is triggered
|
|
@@ -17,4 +17,4 @@ export class TaskOnce extends Task {
|
|
|
17
17
|
this.hasTriggered = false;
|
|
18
18
|
}
|
|
19
19
|
}
|
|
20
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
20
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFza2J1ZmZlci5jbGFzc2VzLnRhc2tvbmNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vdHMvdGFza2J1ZmZlci5jbGFzc2VzLnRhc2tvbmNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sS0FBSyxPQUFPLE1BQU0seUJBQXlCLENBQUM7QUFFbkQsT0FBTyxFQUFFLElBQUksRUFBc0IsTUFBTSw4QkFBOEIsQ0FBQztBQUV4RTs7R0FFRztBQUNILE1BQU0sT0FBTyxRQUFTLFNBQVEsSUFBSTtJQUVoQyxZQUFZLFVBQTBEO1FBQ3BFLEtBQUssQ0FBQztZQUNKLElBQUksRUFBRSxVQUFVLENBQUMsSUFBSTtZQUNyQixZQUFZLEVBQUUsS0FBSyxJQUFJLEVBQUU7Z0JBQ3ZCLElBQUksQ0FBQyxJQUFJLENBQUMsWUFBWSxFQUFFO29CQUN0QixJQUFJLENBQUMsWUFBWSxHQUFHLElBQUksQ0FBQztvQkFDekIsTUFBTSxVQUFVLENBQUMsWUFBWSxFQUFFLENBQUM7aUJBQ2pDO1lBQ0gsQ0FBQztTQUNGLENBQUMsQ0FBQztRQVZMLGlCQUFZLEdBQVksS0FBSyxDQUFDO0lBVzlCLENBQUM7Q0FDRiJ9
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import * as plugins from './taskbuffer.plugins.js';
|
|
2
|
-
import './taskbuffer.classes.task.js';
|
|
2
|
+
import { Task } from './taskbuffer.classes.task.js';
|
|
3
3
|
export class TaskRunner {
|
|
4
4
|
constructor() {
|
|
5
5
|
this.maxParrallelJobs = 1;
|
|
@@ -51,4 +51,4 @@ export class TaskRunner {
|
|
|
51
51
|
this.status = 'stopped';
|
|
52
52
|
}
|
|
53
53
|
}
|
|
54
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
54
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFza2J1ZmZlci5jbGFzc2VzLnRhc2tydW5uZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi90cy90YXNrYnVmZmVyLmNsYXNzZXMudGFza3J1bm5lci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEtBQUssT0FBTyxNQUFNLHlCQUF5QixDQUFDO0FBRW5ELE9BQU8sRUFBRSxJQUFJLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQztBQUVwRCxNQUFNLE9BQU8sVUFBVTtJQU1yQjtRQUxPLHFCQUFnQixHQUFXLENBQUMsQ0FBQztRQUM3QixXQUFNLEdBQTBCLFNBQVMsQ0FBQztRQUMxQyxpQkFBWSxHQUFnQyxJQUFJLE9BQU8sQ0FBQyxHQUFHLENBQUMsU0FBUyxFQUFRLENBQUM7UUFDOUUsZUFBVSxHQUFXLEVBQUUsQ0FBQztRQUc3QixJQUFJLENBQUMsWUFBWSxDQUFDLFlBQVksQ0FBQyxTQUFTLENBQUMsS0FBSyxFQUFFLFFBQVEsRUFBRSxFQUFFO1lBQzFELElBQUksQ0FBQyxjQUFjLEVBQUUsQ0FBQztRQUN4QixDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFRDs7T0FFRztJQUNJLE9BQU8sQ0FBQyxPQUFhO1FBQzFCLElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBQzlCLElBQUksQ0FBQyxjQUFjLEVBQUUsQ0FBQztJQUN4QixDQUFDO0lBRUQ7OztPQUdHO0lBQ0ksa0JBQWtCLENBQUMsbUJBQTJCO1FBQ25ELElBQUksQ0FBQyxnQkFBZ0IsR0FBRyxtQkFBbUIsQ0FBQztJQUM5QyxDQUFDO0lBRUQ7O09BRUc7SUFDSSxLQUFLLENBQUMsS0FBSztRQUNoQixJQUFJLENBQUMsTUFBTSxHQUFHLFNBQVMsQ0FBQztJQUMxQixDQUFDO0lBRUQ7O09BRUc7SUFDSSxLQUFLLENBQUMsY0FBYztRQUN6QixJQUNFLElBQUksQ0FBQyxZQUFZLENBQUMsUUFBUSxFQUFFLENBQUMsTUFBTSxHQUFHLElBQUksQ0FBQyxnQkFBZ0I7WUFDM0QsSUFBSSxDQUFDLE1BQU0sS0FBSyxTQUFTO1lBQ3pCLElBQUksQ0FBQyxVQUFVLENBQUMsTUFBTSxHQUFHLENBQUMsRUFDMUI7WUFDQSxNQUFNLE9BQU8sR0FBRyxJQUFJLENBQUMsVUFBVSxDQUFDLEtBQUssRUFBRSxDQUFDO1lBQ3hDLElBQUksQ0FBQyxZQUFZLENBQUMsR0FBRyxDQUFDLE9BQU8sQ0FBQyxDQUFDO1lBQy9CLE1BQU0sT0FBTyxDQUFDLE9BQU8sRUFBRSxDQUFDO1lBQ3hCLElBQUksQ0FBQyxZQUFZLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxDQUFDO1lBQ2xDLElBQUksQ0FBQyxjQUFjLEVBQUUsQ0FBQztTQUN2QjtJQUNILENBQUM7SUFFRDs7T0FFRztJQUNJLEtBQUssQ0FBQyxJQUFJO1FBQ2YsSUFBSSxDQUFDLE1BQU0sR0FBRyxTQUFTLENBQUM7SUFDMUIsQ0FBQztDQUNGIn0=
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@push.rocks/taskbuffer",
|
|
3
|
-
"version": "3.0.
|
|
3
|
+
"version": "3.0.14",
|
|
4
4
|
"private": false,
|
|
5
5
|
"description": "flexible task management. TypeScript ready!",
|
|
6
6
|
"main": "dist_ts/index.js",
|
|
@@ -30,20 +30,20 @@
|
|
|
30
30
|
"homepage": "https://gitlab.com/pushrocks/taskbuffer#readme",
|
|
31
31
|
"dependencies": {
|
|
32
32
|
"@push.rocks/isounique": "^1.0.5",
|
|
33
|
-
"@push.rocks/lik": "^6.0.
|
|
33
|
+
"@push.rocks/lik": "^6.0.3",
|
|
34
34
|
"@push.rocks/smartdelay": "^3.0.5",
|
|
35
|
-
"@push.rocks/smartlog": "^3.0.
|
|
35
|
+
"@push.rocks/smartlog": "^3.0.3",
|
|
36
36
|
"@push.rocks/smartpromise": "^4.0.3",
|
|
37
|
-
"@push.rocks/smartrx": "^3.0.
|
|
38
|
-
"@push.rocks/smarttime": "^4.0.
|
|
37
|
+
"@push.rocks/smartrx": "^3.0.6",
|
|
38
|
+
"@push.rocks/smarttime": "^4.0.4"
|
|
39
39
|
},
|
|
40
40
|
"devDependencies": {
|
|
41
|
-
"@gitzone/tsbuild": "^2.1.
|
|
42
|
-
"@gitzone/tsbundle": "^2.0.
|
|
43
|
-
"@gitzone/tsrun": "^1.2.
|
|
44
|
-
"@gitzone/tstest": "^1.0.
|
|
45
|
-
"@push.rocks/tapbundle": "^5.0.
|
|
46
|
-
"@types/node": "^
|
|
41
|
+
"@gitzone/tsbuild": "^2.1.66",
|
|
42
|
+
"@gitzone/tsbundle": "^2.0.8",
|
|
43
|
+
"@gitzone/tsrun": "^1.2.44",
|
|
44
|
+
"@gitzone/tstest": "^1.0.77",
|
|
45
|
+
"@push.rocks/tapbundle": "^5.0.12",
|
|
46
|
+
"@types/node": "^20.4.5"
|
|
47
47
|
},
|
|
48
48
|
"files": [
|
|
49
49
|
"ts/**/*",
|
package/ts/00_commitinfo_data.ts
CHANGED
|
@@ -2,9 +2,10 @@ import { Task } from './taskbuffer.classes.task.js';
|
|
|
2
2
|
|
|
3
3
|
export class BufferRunner {
|
|
4
4
|
public task: Task;
|
|
5
|
-
//
|
|
5
|
+
// initialize by default
|
|
6
6
|
public bufferCounter: number = 0;
|
|
7
|
-
|
|
7
|
+
|
|
8
|
+
constructor(taskArg: Task<any>) {
|
|
8
9
|
this.task = taskArg;
|
|
9
10
|
}
|
|
10
11
|
|
|
@@ -13,7 +14,7 @@ export class BufferRunner {
|
|
|
13
14
|
this.bufferCounter++;
|
|
14
15
|
}
|
|
15
16
|
const returnPromise: Promise<any> = this.task.cycleCounter.getPromiseForCycle(
|
|
16
|
-
this.bufferCounter
|
|
17
|
+
this.bufferCounter
|
|
17
18
|
);
|
|
18
19
|
if (!this.task.running) {
|
|
19
20
|
this._run(x);
|
|
@@ -21,19 +22,13 @@ export class BufferRunner {
|
|
|
21
22
|
return returnPromise;
|
|
22
23
|
}
|
|
23
24
|
|
|
24
|
-
private _run(x: any) {
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
});
|
|
33
|
-
} else {
|
|
34
|
-
this.task.running = false;
|
|
35
|
-
}
|
|
36
|
-
};
|
|
37
|
-
recursiveBufferRunner(x);
|
|
25
|
+
private async _run(x: any) {
|
|
26
|
+
this.task.running = true;
|
|
27
|
+
while (this.bufferCounter > 0) {
|
|
28
|
+
const result = await Task.runTask(this.task, { x: x });
|
|
29
|
+
this.bufferCounter--;
|
|
30
|
+
this.task.cycleCounter.informOfCycle(result);
|
|
31
|
+
}
|
|
32
|
+
this.task.running = false;
|
|
38
33
|
}
|
|
39
34
|
}
|
|
@@ -9,7 +9,7 @@ export interface ICycleObject {
|
|
|
9
9
|
export class CycleCounter {
|
|
10
10
|
public task: Task;
|
|
11
11
|
public cycleObjectArray: ICycleObject[] = [];
|
|
12
|
-
constructor(taskArg: Task) {
|
|
12
|
+
constructor(taskArg: Task<any>) {
|
|
13
13
|
this.task = taskArg;
|
|
14
14
|
}
|
|
15
15
|
public getPromiseForCycle(cycleCountArg: number) {
|