From bfd2f785a987b39f883b760680f8bfc086bd5d05 Mon Sep 17 00:00:00 2001 From: norohind <60548839+norohind@users.noreply.github.com> Date: Sun, 28 Nov 2021 02:38:56 +0300 Subject: [PATCH] sqlite_cache safety --- model/sqlite_cache.py | 14 +++++++++++--- 1 file changed, 11 insertions(+), 3 deletions(-) diff --git a/model/sqlite_cache.py b/model/sqlite_cache.py index e672bf2..03e0f2e 100644 --- a/model/sqlite_cache.py +++ b/model/sqlite_cache.py @@ -1,6 +1,8 @@ import sqlite3 from EDMCLogging import get_main_logger +from typing import Union + logger = get_main_logger() @@ -39,7 +41,7 @@ class Cache: # key doesn't exists, need to insert new row self.db.execute('insert into cache (key, value) values (?, ?);', [key, value]) - def get(self, key, default=None): + def get(self, key, default=None) -> Union[str, None]: if self.disabled: return @@ -49,10 +51,16 @@ class Cache: return res['value'] - def delete(self, key): + def delete(self, key) -> None: + if self.disabled: + return + self.db.execute('delete from cache where key = ?;', [key]) - def delete_all(self): + def delete_all(self) -> None: + if self.disabled: + return + logger.debug('Dropping cache') with self.db: self.db.execute('delete from cache;')