refactor: storage factory + singleton

- Make storage easier.

(cherry picked from commit ed84a4732d7dd3ce6b2c22f30553ab5c59f85dbb)
This commit is contained in:
鲁树人
2021-12-20 22:19:44 +00:00
parent 8673adfda6
commit d8b362efbe
8 changed files with 81 additions and 8 deletions

View File

@@ -3,6 +3,8 @@ const KEY_JOOX_UUID = 'joox.uuid';
export default abstract class BaseStorage {
protected abstract save<T>(name: string, value: T): Promise<void>;
protected abstract load<T>(name: string, defaultValue: T): Promise<T>;
public abstract getAll(): Promise<Record<string, any>>;
public abstract setAll(obj: Record<string, any>): Promise<void>;
public saveJooxUUID(uuid: string): Promise<void> {
return this.save(KEY_JOOX_UUID, uuid);