@tsed/agenda 7.54.0 → 7.56.0
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/jest.config.js +1 -1
- package/lib/cjs/AgendaModule.js +28 -7
- package/lib/cjs/AgendaModule.js.map +1 -1
- package/lib/esm/AgendaModule.js +28 -7
- package/lib/esm/AgendaModule.js.map +1 -1
- package/lib/tsconfig.esm.tsbuildinfo +1 -1
- package/lib/tsconfig.tsbuildinfo +1 -1
- package/lib/types/AgendaModule.d.ts +1 -0
- package/lib/types/interfaces/interfaces.d.ts +1 -0
- package/package.json +6 -6
- package/readme.md +2 -0
- package/src/AgendaModule.spec.ts +22 -0
- package/src/AgendaModule.ts +27 -7
- package/src/interfaces/interfaces.ts +1 -0
package/jest.config.js
CHANGED
package/lib/cjs/AgendaModule.js
CHANGED
|
@@ -12,31 +12,48 @@ let AgendaModule = class AgendaModule {
|
|
|
12
12
|
injector;
|
|
13
13
|
agenda;
|
|
14
14
|
enabled;
|
|
15
|
+
drainJobsBeforeClose;
|
|
15
16
|
disableJobProcessing;
|
|
16
17
|
async $afterListen() {
|
|
17
18
|
if (this.enabled) {
|
|
18
19
|
const providers = this.getProviders();
|
|
19
20
|
if (!this.disableJobProcessing) {
|
|
20
|
-
this.logger.info(
|
|
21
|
+
this.logger.info({
|
|
22
|
+
event: "AGENDA_ADD_DEFINITIONS",
|
|
23
|
+
message: "Agenda add definitions"
|
|
24
|
+
});
|
|
21
25
|
providers.forEach((provider) => this.addAgendaDefinitionsForProvider(provider));
|
|
22
26
|
await this.injector.emit("$beforeAgendaStart");
|
|
23
27
|
}
|
|
24
28
|
await this.agenda.start();
|
|
25
29
|
if (!this.disableJobProcessing) {
|
|
26
|
-
this.logger.info(
|
|
30
|
+
this.logger.info({
|
|
31
|
+
event: "AGENDA_ADD_JOBS",
|
|
32
|
+
message: "Agenda add scheduled jobs"
|
|
33
|
+
});
|
|
27
34
|
await Promise.all(providers.map((provider) => this.scheduleJobsForProvider(provider)));
|
|
28
35
|
await this.injector.emit("$afterAgendaStart");
|
|
29
36
|
}
|
|
30
37
|
}
|
|
31
|
-
else {
|
|
32
|
-
this.logger.info("Agenda disabled...");
|
|
33
|
-
}
|
|
34
38
|
}
|
|
35
39
|
async $onDestroy() {
|
|
36
40
|
if (this.enabled) {
|
|
37
|
-
|
|
41
|
+
if (this.drainJobsBeforeClose && "drain" in this.agenda) {
|
|
42
|
+
this.logger.info({
|
|
43
|
+
event: "AGENDA_DRAIN",
|
|
44
|
+
message: "Agenda is draining all jobs before close"
|
|
45
|
+
});
|
|
46
|
+
await this.agenda.drain();
|
|
47
|
+
}
|
|
48
|
+
else {
|
|
49
|
+
this.logger.info({
|
|
50
|
+
event: "AGENDA_STOP",
|
|
51
|
+
message: "Agenda is stopping"
|
|
52
|
+
});
|
|
53
|
+
await this.agenda.stop();
|
|
54
|
+
}
|
|
38
55
|
await this.agenda.close({ force: true });
|
|
39
|
-
this.logger.info("Agenda stopped
|
|
56
|
+
this.logger.info({ event: "AGENDA_STOP", message: "Agenda stopped" });
|
|
40
57
|
}
|
|
41
58
|
}
|
|
42
59
|
define(name, options, processor) {
|
|
@@ -109,6 +126,10 @@ tslib_1.__decorate([
|
|
|
109
126
|
(0, di_1.Constant)("agenda.enabled", false),
|
|
110
127
|
tslib_1.__metadata("design:type", Boolean)
|
|
111
128
|
], AgendaModule.prototype, "enabled", void 0);
|
|
129
|
+
tslib_1.__decorate([
|
|
130
|
+
(0, di_1.Constant)("agenda.drainJobsBeforeClose", false),
|
|
131
|
+
tslib_1.__metadata("design:type", Boolean)
|
|
132
|
+
], AgendaModule.prototype, "drainJobsBeforeClose", void 0);
|
|
112
133
|
tslib_1.__decorate([
|
|
113
134
|
(0, di_1.Constant)("agenda.disableJobProcessing", false),
|
|
114
135
|
tslib_1.__metadata("design:type", Boolean)
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AgendaModule.js","sourceRoot":"","sources":["../../src/AgendaModule.ts"],"names":[],"mappings":";;;;AAAA,yCAAqF;AACrF,iCAA6E;AAE7E,+BAAgC;AAChC,qDAA2D;AAE3D,4DAAuD;AAGhD,IAAM,YAAY,GAAlB,MAAM,YAAY;IAEb,MAAM,CAAS;IAGf,QAAQ,CAAkB;IAG1B,MAAM,CAAgB;IAGxB,OAAO,CAAU;IAGjB,oBAAoB,CAAU;IAEtC,KAAK,CAAC,YAAY;QAChB,IAAI,IAAI,CAAC,OAAO,EAAE;YAChB,MAAM,SAAS,GAAG,IAAI,CAAC,YAAY,EAAE,CAAC;YAEtC,IAAI,CAAC,IAAI,CAAC,oBAAoB,EAAE;gBAC9B,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,
|
|
1
|
+
{"version":3,"file":"AgendaModule.js","sourceRoot":"","sources":["../../src/AgendaModule.ts"],"names":[],"mappings":"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"}
|
package/lib/esm/AgendaModule.js
CHANGED
|
@@ -9,31 +9,48 @@ let AgendaModule = class AgendaModule {
|
|
|
9
9
|
injector;
|
|
10
10
|
agenda;
|
|
11
11
|
enabled;
|
|
12
|
+
drainJobsBeforeClose;
|
|
12
13
|
disableJobProcessing;
|
|
13
14
|
async $afterListen() {
|
|
14
15
|
if (this.enabled) {
|
|
15
16
|
const providers = this.getProviders();
|
|
16
17
|
if (!this.disableJobProcessing) {
|
|
17
|
-
this.logger.info(
|
|
18
|
+
this.logger.info({
|
|
19
|
+
event: "AGENDA_ADD_DEFINITIONS",
|
|
20
|
+
message: "Agenda add definitions"
|
|
21
|
+
});
|
|
18
22
|
providers.forEach((provider) => this.addAgendaDefinitionsForProvider(provider));
|
|
19
23
|
await this.injector.emit("$beforeAgendaStart");
|
|
20
24
|
}
|
|
21
25
|
await this.agenda.start();
|
|
22
26
|
if (!this.disableJobProcessing) {
|
|
23
|
-
this.logger.info(
|
|
27
|
+
this.logger.info({
|
|
28
|
+
event: "AGENDA_ADD_JOBS",
|
|
29
|
+
message: "Agenda add scheduled jobs"
|
|
30
|
+
});
|
|
24
31
|
await Promise.all(providers.map((provider) => this.scheduleJobsForProvider(provider)));
|
|
25
32
|
await this.injector.emit("$afterAgendaStart");
|
|
26
33
|
}
|
|
27
34
|
}
|
|
28
|
-
else {
|
|
29
|
-
this.logger.info("Agenda disabled...");
|
|
30
|
-
}
|
|
31
35
|
}
|
|
32
36
|
async $onDestroy() {
|
|
33
37
|
if (this.enabled) {
|
|
34
|
-
|
|
38
|
+
if (this.drainJobsBeforeClose && "drain" in this.agenda) {
|
|
39
|
+
this.logger.info({
|
|
40
|
+
event: "AGENDA_DRAIN",
|
|
41
|
+
message: "Agenda is draining all jobs before close"
|
|
42
|
+
});
|
|
43
|
+
await this.agenda.drain();
|
|
44
|
+
}
|
|
45
|
+
else {
|
|
46
|
+
this.logger.info({
|
|
47
|
+
event: "AGENDA_STOP",
|
|
48
|
+
message: "Agenda is stopping"
|
|
49
|
+
});
|
|
50
|
+
await this.agenda.stop();
|
|
51
|
+
}
|
|
35
52
|
await this.agenda.close({ force: true });
|
|
36
|
-
this.logger.info("Agenda stopped
|
|
53
|
+
this.logger.info({ event: "AGENDA_STOP", message: "Agenda stopped" });
|
|
37
54
|
}
|
|
38
55
|
}
|
|
39
56
|
define(name, options, processor) {
|
|
@@ -106,6 +123,10 @@ __decorate([
|
|
|
106
123
|
Constant("agenda.enabled", false),
|
|
107
124
|
__metadata("design:type", Boolean)
|
|
108
125
|
], AgendaModule.prototype, "enabled", void 0);
|
|
126
|
+
__decorate([
|
|
127
|
+
Constant("agenda.drainJobsBeforeClose", false),
|
|
128
|
+
__metadata("design:type", Boolean)
|
|
129
|
+
], AgendaModule.prototype, "drainJobsBeforeClose", void 0);
|
|
109
130
|
__decorate([
|
|
110
131
|
Constant("agenda.disableJobProcessing", false),
|
|
111
132
|
__metadata("design:type", Boolean)
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AgendaModule.js","sourceRoot":"","sources":["../../src/AgendaModule.ts"],"names":[],"mappings":";AAAA,OAAO,EAAc,SAAS,EAAE,MAAM,EAAa,YAAY,EAAC,MAAM,cAAc,CAAC;AACrF,OAAO,EAAC,QAAQ,EAAE,MAAM,EAAE,eAAe,EAAE,MAAM,EAAW,MAAM,UAAU,CAAC;AAE7E,OAAO,EAAC,EAAE,IAAI,IAAI,EAAC,MAAM,MAAM,CAAC;AAChC,OAAO,EAAC,oBAAoB,EAAC,MAAM,uBAAuB,CAAC;AAE3D,OAAO,EAAC,aAAa,EAAC,MAAM,0BAA0B,CAAC;AAGhD,IAAM,YAAY,GAAlB,MAAM,YAAY;IAEb,MAAM,CAAS;IAGf,QAAQ,CAAkB;IAG1B,MAAM,CAAgB;IAGxB,OAAO,CAAU;IAGjB,oBAAoB,CAAU;IAEtC,KAAK,CAAC,YAAY;QAChB,IAAI,IAAI,CAAC,OAAO,EAAE;YAChB,MAAM,SAAS,GAAG,IAAI,CAAC,YAAY,EAAE,CAAC;YAEtC,IAAI,CAAC,IAAI,CAAC,oBAAoB,EAAE;gBAC9B,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,
|
|
1
|
+
{"version":3,"file":"AgendaModule.js","sourceRoot":"","sources":["../../src/AgendaModule.ts"],"names":[],"mappings":";AAAA,OAAO,EAAc,SAAS,EAAE,MAAM,EAAa,YAAY,EAAC,MAAM,cAAc,CAAC;AACrF,OAAO,EAAC,QAAQ,EAAE,MAAM,EAAE,eAAe,EAAE,MAAM,EAAW,MAAM,UAAU,CAAC;AAE7E,OAAO,EAAC,EAAE,IAAI,IAAI,EAAC,MAAM,MAAM,CAAC;AAChC,OAAO,EAAC,oBAAoB,EAAC,MAAM,uBAAuB,CAAC;AAE3D,OAAO,EAAC,aAAa,EAAC,MAAM,0BAA0B,CAAC;AAGhD,IAAM,YAAY,GAAlB,MAAM,YAAY;IAEb,MAAM,CAAS;IAGf,QAAQ,CAAkB;IAG1B,MAAM,CAAgB;IAGxB,OAAO,CAAU;IAGjB,oBAAoB,CAAU;IAG9B,oBAAoB,CAAU;IAEtC,KAAK,CAAC,YAAY;QAChB,IAAI,IAAI,CAAC,OAAO,EAAE;YAChB,MAAM,SAAS,GAAG,IAAI,CAAC,YAAY,EAAE,CAAC;YAEtC,IAAI,CAAC,IAAI,CAAC,oBAAoB,EAAE;gBAC9B,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC;oBACf,KAAK,EAAE,wBAAwB;oBAC/B,OAAO,EAAE,wBAAwB;iBAClC,CAAC,CAAC;gBACH,SAAS,CAAC,OAAO,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,IAAI,CAAC,+BAA+B,CAAC,QAAQ,CAAC,CAAC,CAAC;gBAEhF,MAAM,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,oBAAoB,CAAC,CAAC;aAChD;YAED,MAAM,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC;YAE1B,IAAI,CAAC,IAAI,CAAC,oBAAoB,EAAE;gBAC9B,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC;oBACf,KAAK,EAAE,iBAAiB;oBACxB,OAAO,EAAE,2BAA2B;iBACrC,CAAC,CAAC;gBACH,MAAM,OAAO,CAAC,GAAG,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,IAAI,CAAC,uBAAuB,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;gBAEvF,MAAM,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC;aAC/C;SACF;IACH,CAAC;IAED,KAAK,CAAC,UAAU;QACd,IAAI,IAAI,CAAC,OAAO,EAAE;YAChB,IAAI,IAAI,CAAC,oBAAoB,IAAI,OAAO,IAAI,IAAI,CAAC,MAAM,EAAE;gBACvD,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC;oBACf,KAAK,EAAE,cAAc;oBACrB,OAAO,EAAE,0CAA0C;iBACpD,CAAC,CAAC;gBACH,MAAM,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC;aAC3B;iBAAM;gBACL,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC;oBACf,KAAK,EAAE,aAAa;oBACpB,OAAO,EAAE,oBAAoB;iBAC9B,CAAC,CAAC;gBACH,MAAM,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC;aAC1B;YAED,MAAM,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,EAAC,KAAK,EAAE,IAAI,EAAC,CAAC,CAAC;YAEvC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,EAAC,KAAK,EAAE,aAAa,EAAE,OAAO,EAAE,gBAAgB,EAAC,CAAC,CAAC;SACrE;IACH,CAAC;IAED,MAAM,CAAC,IAAY,EAAE,OAAa,EAAE,SAAe;QACjD,OAAO,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,OAAO,EAAE,CAAC,GAAQ,EAAE,EAAE;YACpD,MAAM,IAAI,GAAG,IAAI,SAAS,CAAC;gBACzB,QAAQ,EAAE,IAAI,CAAC,QAAQ;gBACvB,EAAE,EAAE,IAAI,EAAE;gBACV,MAAM,EAAE,IAAI,CAAC,QAAQ,CAAC,MAAM;aAC7B,CAAC,CAAC;YAEH,IAAI,CAAC,GAAG,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;YAErB,OAAO,YAAY,CAAC,IAAI,EAAE,GAAG,EAAE,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC;QAClD,CAAC,CAAC,CAAC;IACL,CAAC;IAED,KAAK,CAAC,QAAgB,EAAE,IAAY,EAAE,IAAU,EAAE,OAAa;QAC7D,OAAO,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,QAAQ,EAAE,IAAI,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC;IAC1D,CAAC;IAED,QAAQ,CAAC,IAAmB,EAAE,IAAY,EAAE,IAAU;QACpD,OAAO,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;IAChD,CAAC;IAED,GAAG,CAAC,IAAY,EAAE,IAAU;QAC1B,OAAO,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;IACrC,CAAC;IAED,MAAM,CAAC,IAAY,EAAE,IAAU;QAC7B,OAAO,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;IACxC,CAAC;IAES,YAAY;QACpB,OAAO,IAAI,CAAC,QAAQ,CAAC,YAAY,CAAC,oBAAoB,CAAC,CAAC;IAC1D,CAAC;IAES,+BAA+B,CAAC,QAAkB;QAC1D,MAAM,KAAK,GAAG,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAc,QAAQ,EAAE,EAAE,CAAC,CAAC;QAE5D,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE;YACjB,OAAO;SACR;QAED,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,WAAW,EAAE,EAAC,IAAI,EAAE,GAAG,OAAO,EAAC,CAAC,EAAE,EAAE;YACzE,MAAM,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;YAEnD,MAAM,YAAY,GAAuB,QAAQ,CAAC,WAAW,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAuB,CAAC;YACpG,MAAM,OAAO,GAAG,IAAI,CAAC,aAAa,CAAC,WAAW,EAAE,KAAK,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC;YAEvE,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,OAAO,EAAE,YAAY,CAAC,CAAC;QAC9C,CAAC,CAAC,CAAC;IACL,CAAC;IAES,KAAK,CAAC,uBAAuB,CAAC,QAAuB;QAC7D,MAAM,KAAK,GAAG,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAc,QAAQ,EAAE,EAAE,CAAC,CAAC;QAE5D,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE;YAChB,OAAO;SACR;QAED,MAAM,QAAQ,GAAG,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,WAAW,EAAE,EAAC,QAAQ,EAAE,IAAI,EAAE,GAAG,OAAO,EAAC,CAAC,EAAE,EAAE;YAC/F,MAAM,OAAO,GAAG,IAAI,CAAC,aAAa,CAAC,WAAW,EAAE,KAAK,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC;YAEvE,OAAO,IAAI,CAAC,KAAK,CAAC,QAAQ,EAAE,OAAO,EAAE,EAAE,EAAE,OAAO,CAAC,CAAC;QACpD,CAAC,CAAC,CAAC;QAEH,MAAM,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;IAC9B,CAAC;IAES,aAAa,CAAC,WAAmB,EAAE,SAAkB,EAAE,UAAmB;QAClF,MAAM,IAAI,GAAG,UAAU,IAAI,WAAW,CAAC;QACvC,OAAO,SAAS,CAAC,CAAC,CAAC,GAAG,SAAS,IAAI,IAAI,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;IACnD,CAAC;CACF,CAAA;AA3IC;IAAC,MAAM,EAAE;8BACS,MAAM;4CAAC;AAEzB;IAAC,MAAM,EAAE;8BACW,eAAe;8CAAC;AAEpC;IAAC,MAAM,EAAE;8BACS,aAAa;4CAAC;AAEhC;IAAC,QAAQ,CAAC,gBAAgB,EAAE,KAAK,CAAC;;6CACT;AAEzB;IAAC,QAAQ,CAAC,6BAA6B,EAAE,KAAK,CAAC;;0DACT;AAEtC;IAAC,QAAQ,CAAC,6BAA6B,EAAE,KAAK,CAAC;;0DACT;AAjB3B,YAAY;IADxB,MAAM,EAAE;GACI,YAAY,CA4IxB;SA5IY,YAAY"}
|