UNPKG

@m-ld/gateway

Version:

m-ld gateway for services

20 lines 1.46 kB
import LRUCache from 'lru-cache'; import LOG from 'loglevel'; /** * All mutating access to the cache should be serialised with m-ld states */ export class SubdomainCache extends LRUCache { constructor(config) { super({ max: config.subdomainCacheSize ?? 100, dispose(_name, sdc) { sdc.close().catch(err => LOG.warn(err)); }, }); } async clear() { await Promise.all(this.values().map(sdc => sdc.close())); super.reset(); } } //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiU3ViZG9tYWluQ2FjaGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvc2VydmVyL1N1YmRvbWFpbkNhY2hlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sUUFBUSxNQUFNLFdBQVcsQ0FBQztBQUVqQyxPQUFPLEdBQUcsTUFBTSxVQUFVLENBQUM7QUFHM0I7O0dBRUc7QUFDSCxNQUFNLE9BQU8sY0FBZSxTQUFRLFFBQWdDO0lBQ2xFLFlBQVksTUFBcUI7UUFDL0IsS0FBSyxDQUFDO1lBQ0osR0FBRyxFQUFFLE1BQU0sQ0FBQyxrQkFBa0IsSUFBSSxHQUFHO1lBQ3JDLE9BQU8sQ0FBQyxLQUFhLEVBQUUsR0FBbUI7Z0JBQ3hDLEdBQUcsQ0FBQyxLQUFLLEVBQUUsQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUM7WUFDMUMsQ0FBQztTQUNGLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFRCxLQUFLLENBQUMsS0FBSztRQUNULE1BQU0sT0FBTyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsTUFBTSxFQUFFLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsR0FBRyxDQUFDLEtBQUssRUFBRSxDQUFDLENBQUMsQ0FBQztRQUN6RCxLQUFLLENBQUMsS0FBSyxFQUFFLENBQUM7SUFDaEIsQ0FBQztDQUNGIn0=