@eggjs/tegg-schedule-plugin
Version:
schedule decorator for egg
27 lines • 2.68 kB
JavaScript
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
const ScheduleManager_1 = require("./lib/ScheduleManager");
const ScheduleWorkerRegister_1 = require("./lib/ScheduleWorkerRegister");
const ScheduleWorkerLoadUnitHook_1 = require("./lib/ScheduleWorkerLoadUnitHook");
const SchedulePrototypeHook_1 = require("./lib/SchedulePrototypeHook");
class ScheduleAppBootHook {
constructor(app) {
this.app = app;
this.scheduleManager = new ScheduleManager_1.ScheduleManager(this.app);
this.scheduleWorkerRegister = new ScheduleWorkerRegister_1.ScheduleWorkerRegister(this.scheduleManager);
this.scheduleWorkerLoadUnitHook = new ScheduleWorkerLoadUnitHook_1.ScheduleWorkerLoadUnitHook(this.scheduleWorkerRegister);
this.schedulePrototypeHook = new SchedulePrototypeHook_1.SchedulePrototypeHook();
}
configWillLoad() {
this.app.loadUnitLifecycleUtil.registerLifecycle(this.scheduleWorkerLoadUnitHook);
this.app.eggPrototypeLifecycleUtil.registerLifecycle(this.schedulePrototypeHook);
}
beforeClose() {
// Unregister all schedules before deleting lifecycle hooks
this.scheduleManager.unregisterAll();
this.app.loadUnitLifecycleUtil.deleteLifecycle(this.scheduleWorkerLoadUnitHook);
this.app.eggPrototypeLifecycleUtil.deleteLifecycle(this.schedulePrototypeHook);
}
}
exports.default = ScheduleAppBootHook;
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXBwLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiYXBwLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBQ0EsMkRBQXdEO0FBQ3hELHlFQUFzRTtBQUN0RSxpRkFBOEU7QUFDOUUsdUVBQW9FO0FBRXBFLE1BQXFCLG1CQUFtQjtJQU90QyxZQUFZLEdBQWdCO1FBQzFCLElBQUksQ0FBQyxHQUFHLEdBQUcsR0FBRyxDQUFDO1FBQ2YsSUFBSSxDQUFDLGVBQWUsR0FBRyxJQUFJLGlDQUFlLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDO1FBQ3JELElBQUksQ0FBQyxzQkFBc0IsR0FBRyxJQUFJLCtDQUFzQixDQUFDLElBQUksQ0FBQyxlQUFlLENBQUMsQ0FBQztRQUMvRSxJQUFJLENBQUMsMEJBQTBCLEdBQUcsSUFBSSx1REFBMEIsQ0FBQyxJQUFJLENBQUMsc0JBQXNCLENBQUMsQ0FBQztRQUM5RixJQUFJLENBQUMscUJBQXFCLEdBQUcsSUFBSSw2Q0FBcUIsRUFBRSxDQUFDO0lBQzNELENBQUM7SUFFRCxjQUFjO1FBQ1osSUFBSSxDQUFDLEdBQUcsQ0FBQyxxQkFBcUIsQ0FBQyxpQkFBaUIsQ0FBQyxJQUFJLENBQUMsMEJBQTBCLENBQUMsQ0FBQztRQUNsRixJQUFJLENBQUMsR0FBRyxDQUFDLHlCQUF5QixDQUFDLGlCQUFpQixDQUFDLElBQUksQ0FBQyxxQkFBcUIsQ0FBQyxDQUFDO0lBQ25GLENBQUM7SUFFRCxXQUFXO1FBQ1QsMkRBQTJEO1FBQzNELElBQUksQ0FBQyxlQUFlLENBQUMsYUFBYSxFQUFFLENBQUM7UUFFckMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxxQkFBcUIsQ0FBQyxlQUFlLENBQUMsSUFBSSxDQUFDLDBCQUEwQixDQUFDLENBQUM7UUFDaEYsSUFBSSxDQUFDLEdBQUcsQ0FBQyx5QkFBeUIsQ0FBQyxlQUFlLENBQUMsSUFBSSxDQUFDLHFCQUFxQixDQUFDLENBQUM7SUFDakYsQ0FBQztDQUNGO0FBM0JELHNDQTJCQyJ9