@wepublish/api
Version:
API core for we.publish.
33 lines • 1.48 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.PeriodicJobExecutor = void 0;
const tslib_1 = require("tslib");
const schedule_1 = require("@nestjs/schedule");
const common_1 = require("@nestjs/common");
const periodic_job_service_1 = require("./periodic-job.service");
const SCHEDULE = process.env.PERIODIC_JOB_EXECUTION_SCHEDULE || '0 0 3 * * *';
let PeriodicJobExecutor = exports.PeriodicJobExecutor = class PeriodicJobExecutor {
constructor(periodicJobController) {
this.periodicJobController = periodicJobController;
}
handleCron() {
return tslib_1.__awaiter(this, void 0, void 0, function* () {
yield this.periodicJobController.concurrentExecute();
});
}
};
tslib_1.__decorate([
(0, schedule_1.Cron)(SCHEDULE,
// Allow only chron that run once a day example: [number] [number] [number] [star] [star] [star]
{
disabled: !/[1-5]?[0-9] [1-5]?[0-9] [1-2]?[0-9] \* \* \*/.test(SCHEDULE)
}),
tslib_1.__metadata("design:type", Function),
tslib_1.__metadata("design:paramtypes", []),
tslib_1.__metadata("design:returntype", Promise)
], PeriodicJobExecutor.prototype, "handleCron", null);
exports.PeriodicJobExecutor = PeriodicJobExecutor = tslib_1.__decorate([
(0, common_1.Injectable)(),
tslib_1.__metadata("design:paramtypes", [periodic_job_service_1.PeriodicJobService])
], PeriodicJobExecutor);
//# sourceMappingURL=periodic-job.executor.js.map