From cc3302e8743633b3b87e15fb54a964510b2466d1 Mon Sep 17 00:00:00 2001 From: Reto Brunner Date: Sat, 27 Aug 2022 14:21:29 +0200 Subject: [PATCH] sqlite: create serialize_fetchall helper function That puts all the serialization logic into one place and allows us to use async / promises --- server/plugins/messageStorage/sqlite.ts | 15 +++++++++++++++ 1 file changed, 15 insertions(+) diff --git a/server/plugins/messageStorage/sqlite.ts b/server/plugins/messageStorage/sqlite.ts index dda5e814..1a9222dd 100644 --- a/server/plugins/messageStorage/sqlite.ts +++ b/server/plugins/messageStorage/sqlite.ts @@ -279,6 +279,21 @@ class SqliteMessageStorage implements ISqliteMessageStorage { }); }); } + + private serialize_fetchall(stmt: string, ...params: any[]): Promise { + return new Promise((resolve, reject) => { + this.database.serialize(() => { + this.database.all(stmt, params, (err, rows) => { + if (err) { + reject(err); + return; + } + + resolve(rows); + }); + }); + }); + } } // TODO: type any