fileMgr.readFile(pfx, function(buf) { var list = clientCerts.peek(cacheKey); if (buf && buf.length) { clientCerts.set(cacheKey, buf); } else { clientCerts.del(cacheKey); buf = ''; } list.forEach(function(fn) { fn(buf); }); })
/** * Delete a key from cache * * @param {string|Array<string>} key * @returns {Promise} * * @memberof MemoryLRUCacher */ del(keys) { this.metrics.increment(METRIC.MOLECULER_CACHER_DEL_TOTAL); const timeEnd = this.metrics.timer(METRIC.MOLECULER_CACHER_DEL_TIME); keys = Array.isArray(keys) ? keys : [keys]; keys.forEach(key => { this.cache.del(key); this.logger.debug(`REMOVE ${key}`); }); timeEnd(); return this.broker.Promise.resolve(); }
fileMgr.readFileList([key, cert], function(data) { var list = clientCerts.peek(cacheKey); if (data[0] && data[1] && data[0].length && data[1].length) { clientCerts.set(cacheKey, data); } else { clientCerts.del(cacheKey); data = ''; } list.forEach(function(fn) { fn(data); }); })
getSocket(options, function(isH2, socket, err) { if (socket) { socket.secureConnecting = false; // fix: node bug } client =isH2 && getClient(req, socket, name); delete pendingList[name]; delete pendingH2[key]; if (client) { notH2.del(key); pendingItem.forEach(function(list) { requestH2(client, list[0], list[1], list[2]); }); } else { checkTlsError(err) && notH2.set(key, Date.now()); pendingItem.forEach(function(list) { list[2](socket); socket = null; }); } });
/** * Clean cache. Remove every key by match * @param {string|Array<string>} match string. Default is "**" * @returns {Promise} * * @memberof MemoryLRUCacher */ clean(match = "**") { this.metrics.increment(METRIC.MOLECULER_CACHER_CLEAN_TOTAL); const timeEnd = this.metrics.timer(METRIC.MOLECULER_CACHER_CLEAN_TIME); const matches = Array.isArray(match) ? match : [match]; this.logger.debug(`CLEAN ${matches.join(", ")}`); this.cache.keys().forEach(key => { if (matches.some(match => utils.match(key, match))) { this.logger.debug(`REMOVE ${key}`); this.cache.del(key); } }); timeEnd(); return this.broker.Promise.resolve(); }
rulesCache.set(cacheKey, newData); } else { rulesCache.del(cacheKey);
/** * Get an entry. * * @param {String} key * @param {Function} fn * @public */ get(key, fn = noop) { let val, data = this.client.get(key) if (!data) return fn(null, data) if (data.expire !== -1 && data.expire < Date.now()) { this.client.del(key) return setImmediate(fn) } try { val = JSON.parse(data.value) } catch (e) { return setImmediate(fn.bind(null, e)) } setImmediate(fn.bind(null, null, val)) }