@memberjunction/queue 0.9.61 → 0.9.62
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.
|
@@ -8,13 +8,14 @@ export declare class TaskResult {
|
|
|
8
8
|
export interface TaskOptions {
|
|
9
9
|
priority?: number;
|
|
10
10
|
}
|
|
11
|
-
export declare
|
|
12
|
-
Pending
|
|
13
|
-
InProgress
|
|
14
|
-
Complete
|
|
15
|
-
Failed
|
|
16
|
-
Cancelled
|
|
17
|
-
}
|
|
11
|
+
export declare const TaskStatus: {
|
|
12
|
+
readonly Pending: "Pending";
|
|
13
|
+
readonly InProgress: "InProgress";
|
|
14
|
+
readonly Complete: "Complete";
|
|
15
|
+
readonly Failed: "Failed";
|
|
16
|
+
readonly Cancelled: "Cancelled";
|
|
17
|
+
};
|
|
18
|
+
export type TaskStatus = typeof TaskStatus[keyof typeof TaskStatus];
|
|
18
19
|
export declare class TaskBase {
|
|
19
20
|
private _options;
|
|
20
21
|
private _data;
|
|
@@ -5,14 +5,13 @@ exports.QueueBase = exports.TaskBase = exports.TaskStatus = exports.TaskResult =
|
|
|
5
5
|
class TaskResult {
|
|
6
6
|
}
|
|
7
7
|
exports.TaskResult = TaskResult;
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
})(TaskStatus || (exports.TaskStatus = TaskStatus = {}));
|
|
8
|
+
exports.TaskStatus = {
|
|
9
|
+
Pending: 'Pending',
|
|
10
|
+
InProgress: 'InProgress',
|
|
11
|
+
Complete: 'Complete',
|
|
12
|
+
Failed: 'Failed',
|
|
13
|
+
Cancelled: 'Cancelled',
|
|
14
|
+
};
|
|
16
15
|
class TaskBase {
|
|
17
16
|
get Options() {
|
|
18
17
|
return this._options;
|
|
@@ -24,7 +23,7 @@ class TaskBase {
|
|
|
24
23
|
return this._taskRecord.ID;
|
|
25
24
|
}
|
|
26
25
|
constructor(taskRecord, data, options) {
|
|
27
|
-
this._status = TaskStatus.Pending;
|
|
26
|
+
this._status = exports.TaskStatus.Pending;
|
|
28
27
|
this._taskRecord = taskRecord;
|
|
29
28
|
this._options = options;
|
|
30
29
|
this._data = data;
|
|
@@ -64,8 +63,8 @@ class QueueBase {
|
|
|
64
63
|
// it will re-run itself with a timer to check for new tasks
|
|
65
64
|
// this will be the main loop for the queue
|
|
66
65
|
if (this._queue.length > 0) {
|
|
67
|
-
let processing = this._queue.filter(t => t.Status === TaskStatus.InProgress);
|
|
68
|
-
let pending = this._queue.filter(t => t.Status === TaskStatus.Pending);
|
|
66
|
+
let processing = this._queue.filter(t => t.Status === exports.TaskStatus.InProgress);
|
|
67
|
+
let pending = this._queue.filter(t => t.Status === exports.TaskStatus.Pending);
|
|
69
68
|
// we have room to process one or more additional tasks now
|
|
70
69
|
while (processing.length < this._maxTasks && pending.length > 0) {
|
|
71
70
|
let task = pending.shift();
|
|
@@ -99,7 +98,7 @@ class QueueBase {
|
|
|
99
98
|
async StartTask(task, contextUser) {
|
|
100
99
|
// the process function is responsible for calling the processor function
|
|
101
100
|
try {
|
|
102
|
-
task.Status = TaskStatus.InProgress; // immediately flag this task so it isn't picked up again...
|
|
101
|
+
task.Status = exports.TaskStatus.InProgress; // immediately flag this task so it isn't picked up again...
|
|
103
102
|
// run the task
|
|
104
103
|
let result = await this.ProcessTask(task, contextUser);
|
|
105
104
|
// now set the record data for the DB
|
|
@@ -108,7 +107,7 @@ class QueueBase {
|
|
|
108
107
|
task.TaskRecord.ErrorMessage = result.exception ? JSON.stringify(result.exception) : null;
|
|
109
108
|
await task.TaskRecord.Save();
|
|
110
109
|
// update the task status
|
|
111
|
-
task.Status = result.success ? TaskStatus.Complete : TaskStatus.Failed;
|
|
110
|
+
task.Status = result.success ? exports.TaskStatus.Complete : exports.TaskStatus.Failed;
|
|
112
111
|
return result;
|
|
113
112
|
}
|
|
114
113
|
catch (e) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"QueueBase.js","sourceRoot":"","sources":["../../src/generic/QueueBase.ts"],"names":[],"mappings":";;;AACA,sEAAsE;AAEtE,MAAa,UAAU;CAKtB;AALD,gCAKC;
|
|
1
|
+
{"version":3,"file":"QueueBase.js","sourceRoot":"","sources":["../../src/generic/QueueBase.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@memberjunction/queue",
|
|
3
|
-
"version": "0.9.
|
|
3
|
+
"version": "0.9.62",
|
|
4
4
|
"description": "MemberJunction: Queue Library for managing server side queues",
|
|
5
5
|
"main": "dist/index.js",
|
|
6
6
|
"types": "dist/index.d.ts",
|
|
@@ -20,8 +20,8 @@
|
|
|
20
20
|
},
|
|
21
21
|
"dependencies": {
|
|
22
22
|
"@memberjunction/ai": "^0.9.0",
|
|
23
|
-
"@memberjunction/core": "^0.9.
|
|
24
|
-
"@memberjunction/global": "^0.9.
|
|
23
|
+
"@memberjunction/core": "^0.9.69",
|
|
24
|
+
"@memberjunction/global": "^0.9.72",
|
|
25
25
|
"@types/uuid": "^9.0.1",
|
|
26
26
|
"uuid": "^9.0.0"
|
|
27
27
|
}
|