You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
This repo is archived. You can view files and clone it, but cannot push or open issues/pull-requests.

24 lines
508 B

import MemoryStorage from '../infrastructures/MemoryStorage';
const CACHED_SETTING_KEY = 'setting';
export default class SettingRepository {
constructor() {
this.cache = new MemoryStorage();
}
get() {
return Promise.resolve(this.cache.get(CACHED_SETTING_KEY));
}
update(value) {
return this.cache.set(CACHED_SETTING_KEY, value);
}
async setProperty(name, value) {
let current = await this.get();
current.properties[name] = value;
return this.update(current);
}
}