@ulixee/commons
Advanced tools
Comparing version 2.0.0-alpha.15 to 2.0.0-alpha.16
@@ -6,2 +6,13 @@ # Change Log | ||
# [2.0.0-alpha.16](https://github.com/ulixee/shared/compare/v2.0.0-alpha.15...v2.0.0-alpha.16) (2022-12-05) | ||
### Features | ||
* allow manual shutdown ([41c9ebb](https://github.com/ulixee/shared/commit/41c9ebbd8b4b255502ed957927f0db2c9ca5c366)) | ||
# [2.0.0-alpha.15](https://github.com/ulixee/shared/compare/v2.0.0-alpha.14...v2.0.0-alpha.15) (2022-11-17) | ||
@@ -8,0 +19,0 @@ |
@@ -5,6 +5,9 @@ /// <reference types="node" /> | ||
static exitOnSignal: boolean; | ||
static disableSignals: boolean; | ||
private static isRegistered; | ||
private static hasRunHandlers; | ||
private static readonly onShutdownFns; | ||
static register(onShutdownFn: (signal?: ShutdownSignal) => Promise<any> | void): void; | ||
static register(onShutdownFn: (signal?: ShutdownSignal) => Promise<any> | any): void; | ||
static unregister(onShutdownFn: (signal?: ShutdownSignal) => Promise<any> | any): void; | ||
static run(): Promise<void>; | ||
private static registerSignals; | ||
@@ -11,0 +14,0 @@ private static onSignal; |
@@ -12,2 +12,10 @@ "use strict"; | ||
} | ||
static unregister(onShutdownFn) { | ||
const match = this.onShutdownFns.findIndex(x => x.fn === onShutdownFn); | ||
if (match >= 0) | ||
this.onShutdownFns.splice(match, 1); | ||
} | ||
static run() { | ||
return this.onSignal('exit', null, true); | ||
} | ||
static registerSignals() { | ||
@@ -23,3 +31,5 @@ if (!this.isRegistered) { | ||
} | ||
static async onSignal(signal, code) { | ||
static async onSignal(signal, code, isManual = false) { | ||
if (this.disableSignals && !isManual) | ||
return; | ||
if (this.hasRunHandlers) | ||
@@ -65,2 +75,3 @@ return; | ||
ShutdownHandler.exitOnSignal = false; | ||
ShutdownHandler.disableSignals = false; | ||
ShutdownHandler.isRegistered = false; | ||
@@ -67,0 +78,0 @@ ShutdownHandler.hasRunHandlers = false; |
{ | ||
"name": "@ulixee/commons", | ||
"version": "2.0.0-alpha.15", | ||
"version": "2.0.0-alpha.16", | ||
"description": "Common utilities for Ulixee", | ||
@@ -19,3 +19,3 @@ "license": "MIT", | ||
}, | ||
"gitHead": "4bf46a2ad49aad32f664c5983adf66b109b6a665" | ||
"gitHead": "3db8aab65779c4033d48a9d07c68a6ec66126e25" | ||
} |
Sorry, the diff of this file is not supported yet
229890
3280