UNPKG

@httpc/kit

Version:

httpc toolbox for building function-based API with minimal code and end-to-end type safety

35 lines (34 loc) 1.05 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.LogCacheDecorator = void 0; class LogCacheDecorator { constructor(name, logger, provider) { this.name = name; this.logger = logger; this.provider = provider; } keys() { return this.provider.keys(); } has(key) { return this.provider.has(key); } get(key) { const value = this.provider.get(key); this.logger.debug("Cache(%s) %s: %s", this.name, key, value === undefined ? "miss" : "hit"); return value; } set(key, value) { this.logger.debug("Cache(%s) %s: set", this.name, key); return this.provider.set(key, value); } delete(key) { this.logger.debug("Cache(%s) %s: deleted", this.name, key); return this.provider.delete(key); } clear() { this.logger.debug("Cache(%s) cleared", this.name); this.provider.clear(); } } exports.LogCacheDecorator = LogCacheDecorator;