From d0c09089a85eaa5fd33874550a8ed8af4a8c0996 Mon Sep 17 00:00:00 2001 From: Johan Haals Date: Thu, 10 Nov 2022 15:16:30 +0100 Subject: [PATCH] Add support for non async hooks Signed-off-by: Johan Haals --- .../src/services/implementations/lifecycleService.ts | 4 ++-- .../src/services/definitions/lifecycleServiceRef.ts | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/packages/backend-app-api/src/services/implementations/lifecycleService.ts b/packages/backend-app-api/src/services/implementations/lifecycleService.ts index 578bd9ca01..81f1b16b53 100644 --- a/packages/backend-app-api/src/services/implementations/lifecycleService.ts +++ b/packages/backend-app-api/src/services/implementations/lifecycleService.ts @@ -39,8 +39,8 @@ class BackendLifecycleImpl { this.logger.info(`Running ${this.#shutdownTasks.length} shutdown tasks...`); await Promise.all( this.#shutdownTasks.map(hook => - hook - .fn() + Promise.resolve() + .then(() => hook.fn()) .catch(e => { this.logger.error( `Shutdown hook registered by plugin '${hook.pluginId}' failed with: ${e}`, diff --git a/packages/backend-plugin-api/src/services/definitions/lifecycleServiceRef.ts b/packages/backend-plugin-api/src/services/definitions/lifecycleServiceRef.ts index 4fd9f8daae..15610e2643 100644 --- a/packages/backend-plugin-api/src/services/definitions/lifecycleServiceRef.ts +++ b/packages/backend-plugin-api/src/services/definitions/lifecycleServiceRef.ts @@ -20,7 +20,7 @@ import { createServiceRef } from '../system/types'; * @public **/ export type BackendLifecycleShutdownHook = { - fn: () => Promise; + fn: () => void | Promise; }; /**