UNPKG

flexmonster-mongo-connector

Version:

MongoDB connector for Flexmonster Pivot Table and Charts

21 lines 931 B
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.ProbibalisticCacheStrategie = void 0; class ProbibalisticCacheStrategie { constructor() { this.beta = 1; } isCacheStaled(cacheDataObject, timeToLive) { return this.isProbabilisticCacheFlushNeeded(cacheDataObject, timeToLive, this.beta); } isProbabilisticCacheFlushNeeded(cachedDataObject, timeToLive, beta) { if (cachedDataObject == null) return true; const randomPart = Math.log(Math.random()); const expectations = new Date().getTime() - cachedDataObject.computationTime * beta * randomPart; const state = cachedDataObject.timeStamp + timeToLive * 1000 * 60; return timeToLive > 0 && expectations > state; } } exports.ProbibalisticCacheStrategie = ProbibalisticCacheStrategie; //# sourceMappingURL=ProbibalisticCacheStrategie.js.map