UNPKG

@webfaas/webfaas-core

Version:

WebFaaS Framework - Core

59 lines 1.83 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.PackageStoreCacheMemorySync = void 0; const PackageStoreCacheMemoryConfig_1 = require("./PackageStoreCacheMemoryConfig"); const Log_1 = require("../../Log/Log"); /** * Cache PackageStore in memory */ class PackageStoreCacheMemorySync { constructor(config, log) { this.listCacheItem = new Map(); this.totalSize = 0; if (config) { this.config = config; } else { this.config = new PackageStoreCacheMemoryConfig_1.PackageStoreCacheMemoryConfig(); } this.log = log || new Log_1.Log(); } getKey(name, version) { if (version) { return name + "-" + version; } else { return name; } } getConfig() { return this.config; } getTotalSize() { return this.totalSize; } getTotalEntry() { return this.listCacheItem.size; } getPackageStore(name, version) { var key = this.getKey(name, version); return this.listCacheItem.get(key) || null; } putPackageStore(packageStore) { var key = this.getKey(packageStore.getName(), packageStore.getVersion()); if (this.listCacheItem.has(key) === false) { this.totalSize += packageStore.getSize(); } this.listCacheItem.set(key, packageStore); } deletePackageStore(name, version) { var key = this.getKey(name, version); var packageStore = this.listCacheItem.get(key); if (packageStore) { this.totalSize -= packageStore.getSize(); this.listCacheItem.delete(key); } } } exports.PackageStoreCacheMemorySync = PackageStoreCacheMemorySync; //# sourceMappingURL=PackageStoreCacheMemorySync.js.map