From 0e4a111f81cceed275d9bec2695f6e401fb654d8 Mon Sep 17 00:00:00 2001 From: syuilo Date: Fri, 12 Nov 2021 02:02:25 +0900 Subject: refactoring Resolve #7779 --- src/misc/cache.ts | 43 ------------------------------------------- 1 file changed, 43 deletions(-) delete mode 100644 src/misc/cache.ts (limited to 'src/misc/cache.ts') diff --git a/src/misc/cache.ts b/src/misc/cache.ts deleted file mode 100644 index 71fbbd8a4c..0000000000 --- a/src/misc/cache.ts +++ /dev/null @@ -1,43 +0,0 @@ -export class Cache { - private cache: Map; - private lifetime: number; - - constructor(lifetime: Cache['lifetime']) { - this.cache = new Map(); - this.lifetime = lifetime; - } - - public set(key: string | null, value: T): void { - this.cache.set(key, { - date: Date.now(), - value - }); - } - - public get(key: string | null): T | undefined { - const cached = this.cache.get(key); - if (cached == null) return undefined; - if ((Date.now() - cached.date) > this.lifetime) { - this.cache.delete(key); - return undefined; - } - return cached.value; - } - - public delete(key: string | null) { - this.cache.delete(key); - } - - public async fetch(key: string | null, fetcher: () => Promise): Promise { - const cachedValue = this.get(key); - if (cachedValue !== undefined) { - // Cache HIT - return cachedValue; - } - - // Cache MISS - const value = await fetcher(); - this.set(key, value); - return value; - } -} -- cgit v1.2.3-freya