UNPKG

johnycash

Version:

Easy distributed caching for Node.js

49 lines 2.01 kB
"use strict"; var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) { var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d; if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc); else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r; return c > 3 && r && Object.defineProperty(target, key, r), r; }; var LocalCacheService_1; Object.defineProperty(exports, "__esModule", { value: true }); exports.LocalCacheService = void 0; const common_1 = require("@nestjs/common"); let LocalCacheService = LocalCacheService_1 = class LocalCacheService { setCacheValue(key, value, ttl) { const expires = new Date().getTime() + (ttl * 1000); LocalCacheService_1.dictionary[key] = { value, expires, }; return value; } getCacheValue(key) { const cacheValue = LocalCacheService_1.dictionary[key]; if (!cacheValue) { return undefined; } const now = new Date().getTime(); if (cacheValue.expires < now) { delete LocalCacheService_1.dictionary[key]; return undefined; } return cacheValue.value; } deleteCacheKey(key) { delete LocalCacheService_1.dictionary[key]; } refreshCacheLocalTtl(key, ttl) { const cacheValue = LocalCacheService_1.dictionary[key]; if (!cacheValue) { return; } cacheValue.expires = new Date().getTime() + (ttl * 1000); } }; exports.LocalCacheService = LocalCacheService; LocalCacheService.dictionary = {}; exports.LocalCacheService = LocalCacheService = LocalCacheService_1 = __decorate([ (0, common_1.Injectable)() ], LocalCacheService); //# sourceMappingURL=local-cache.service.js.map