Zavedení podpory pro Redis, agnostické úložiště dat

This commit is contained in:
2023-08-06 17:46:51 +02:00
parent 8a75c98c9a
commit 37542499a9
11 changed files with 282 additions and 97 deletions

View File

@@ -0,0 +1,28 @@
import { ClientData } from "../../../types";
/**
* Interface pro úložiště dat.
*
* Aktuálně pouze "primitivní" has, get a set odrážející původní JSON DB.
* Postupem času lze předělat pro efektivnější využití Redis.
*/
export interface StorageInterface {
/**
* Vrátí příznak, zda existují data pro předané datum.
* @param date datum, pro které zjišťujeme data
*/
hasData(date: string): Promise<boolean>;
/**
* Vrátí veškerá data pro předané datum.
* @param date datum, pro které vrátit data
*/
getData(date: string): Promise<ClientData>;
/**
* Uloží data pro předané datum.
* @param date datum, kterému patří ukládaná data
* @param data data pro uložení
*/
setData(date: string, data: ClientData): Promise<void>;
}