UNPKG

@webfaas/webfaas-core

Version:

WebFaaS Framework - Core

50 lines 1.38 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.EventManager = exports.EventManagerEnum = void 0; const events_1 = require("events"); var EventManagerEnum; (function (EventManagerEnum) { EventManagerEnum["PROCESS_MODULE_COMPILED_TO_CACHE"] = "PROCESS_MODULE_COMPILED_TO_CACHE"; EventManagerEnum["CONFIG_RELOAD"] = "CONFIG_RELOAD"; EventManagerEnum["QUIT"] = "QUIT"; })(EventManagerEnum = exports.EventManagerEnum || (exports.EventManagerEnum = {})); const listSIG = [ "SIGHUP", "SIGINT", "SIGQUIT", "SIGILL", "SIGTRAP", "SIGABRT", "SIGBUS", "SIGFPE", "SIGUSR1", "SIGSEGV", "SIGUSR2", "SIGTERM" ]; const event = new events_1.EventEmitter(); event.setMaxListeners(200); /** * Event Manager */ class EventManager { static addListener(type, cb) { event.addListener(type.toString(), cb); } static emit(type, ...args) { event.emit(type.toString(), ...args); } } exports.EventManager = EventManager; listSIG.forEach(function (sig) { let processAny = process; processAny.on(sig, function () { EventManager.emit(EventManagerEnum.QUIT, sig); console.log("ABORTING..."); setInterval(() => { console.log("ABORTED!!!"); process.exit(1); }, 1000); }); }); //# sourceMappingURL=EventManager.js.map