@ngx-toolkit/cache
Version:
Angular cache with Universal support
24 lines • 2.73 kB
JavaScript
export class SimpleCacheManager {
constructor(caches) {
this.setCaches(caches);
}
getCacheNames() {
return Array.from(this.cacheMap.keys());
}
getCache(name) {
return this.cacheMap.get(name) || null;
}
addCache(cache) {
if (!cache) {
throw new Error('Cache is undefined');
}
this.cacheMap.set(cache.name, cache);
}
setCaches(caches) {
this.cacheMap = new Map();
if (caches) {
caches.forEach(cache => this.addCache(cache));
}
}
}
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2ltcGxlLWNhY2hlLm1hbmFnZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9jYWNoZS9zcmMvbGliL3NpbXBsZS1jYWNoZS5tYW5hZ2VyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUdBLE1BQU0sT0FBTyxrQkFBa0I7SUFHN0IsWUFBWSxNQUFnQjtRQUMxQixJQUFJLENBQUMsU0FBUyxDQUFDLE1BQU0sQ0FBQyxDQUFDO0lBQ3pCLENBQUM7SUFFRCxhQUFhO1FBQ1gsT0FBTyxLQUFLLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxFQUFFLENBQUMsQ0FBQztJQUMxQyxDQUFDO0lBRUQsUUFBUSxDQUFDLElBQVk7UUFDbkIsT0FBTyxJQUFJLENBQUMsUUFBUSxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsSUFBSSxJQUFJLENBQUM7SUFDekMsQ0FBQztJQUVELFFBQVEsQ0FBQyxLQUFZO1FBQ25CLElBQUksQ0FBQyxLQUFLLEVBQUU7WUFDVixNQUFNLElBQUksS0FBSyxDQUFDLG9CQUFvQixDQUFDLENBQUM7U0FDdkM7UUFDRCxJQUFJLENBQUMsUUFBUSxDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUMsSUFBSSxFQUFFLEtBQUssQ0FBQyxDQUFDO0lBQ3ZDLENBQUM7SUFFRCxTQUFTLENBQUMsTUFBZTtRQUN2QixJQUFJLENBQUMsUUFBUSxHQUFHLElBQUksR0FBRyxFQUFpQixDQUFDO1FBQ3pDLElBQUksTUFBTSxFQUFFO1lBQ1YsTUFBTSxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQztTQUMvQztJQUNILENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7Q2FjaGVNYW5hZ2VyfSBmcm9tICcuL2NhY2hlLm1hbmFnZXInO1xuaW1wb3J0IHtDYWNoZX0gZnJvbSAnLi9jYWNoZS5tb2RlbCc7XG5cbmV4cG9ydCBjbGFzcyBTaW1wbGVDYWNoZU1hbmFnZXIgaW1wbGVtZW50cyBDYWNoZU1hbmFnZXIge1xuICBwcml2YXRlIGNhY2hlTWFwOiBNYXA8c3RyaW5nLCBDYWNoZT47XG5cbiAgY29uc3RydWN0b3IoY2FjaGVzPzogQ2FjaGVbXSkge1xuICAgIHRoaXMuc2V0Q2FjaGVzKGNhY2hlcyk7XG4gIH1cblxuICBnZXRDYWNoZU5hbWVzKCk6IHN0cmluZ1tdIHtcbiAgICByZXR1cm4gQXJyYXkuZnJvbSh0aGlzLmNhY2hlTWFwLmtleXMoKSk7XG4gIH1cblxuICBnZXRDYWNoZShuYW1lOiBzdHJpbmcpOiBDYWNoZSB7XG4gICAgcmV0dXJuIHRoaXMuY2FjaGVNYXAuZ2V0KG5hbWUpIHx8IG51bGw7XG4gIH1cblxuICBhZGRDYWNoZShjYWNoZTogQ2FjaGUpOiB2b2lkIHtcbiAgICBpZiAoIWNhY2hlKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ0NhY2hlIGlzIHVuZGVmaW5lZCcpO1xuICAgIH1cbiAgICB0aGlzLmNhY2hlTWFwLnNldChjYWNoZS5uYW1lLCBjYWNoZSk7XG4gIH1cblxuICBzZXRDYWNoZXMoY2FjaGVzOiBDYWNoZVtdKTogdm9pZCB7XG4gICAgdGhpcy5jYWNoZU1hcCA9IG5ldyBNYXA8c3RyaW5nLCBDYWNoZT4oKTtcbiAgICBpZiAoY2FjaGVzKSB7XG4gICAgICBjYWNoZXMuZm9yRWFjaChjYWNoZSA9PiB0aGlzLmFkZENhY2hlKGNhY2hlKSk7XG4gICAgfVxuICB9XG59XG4iXX0=