UNPKG

flexmonster-mongo-connector

Version:

MongoDB connector for Flexmonster Pivot Table and Charts

41 lines (40 loc) 1.58 kB
import { IDataCache } from "../IDataCache"; import { ICacheStrategie } from "../cacheStrategies/ICacheStrategie"; import { ConfigInterface } from "../../config/ConfigInterface"; import { AbstractDataObject } from "../dataObject/impl/AbstractDataObject"; import { DataRetrievalInterface } from "../dataObject/DataRetrievalInterface"; import { CacheKeyInterface } from "../DataManager"; export declare class LocalDataCache implements IDataCache<CacheKeyInterface, any> { private _cache; private timeToLive; private _cacheSizeLimit; private _cacheStrategie; private _currentCacheSize; private readonly _garbageCollectingCoefficient; constructor(cacheStrategie: ICacheStrategie, config: ConfigInterface); setTimeToLive(minutes: number): void; getCache(key: CacheKeyInterface): DataRetrievalInterface; private removeFromCache; private _removeFromCache; setCache(key: CacheKeyInterface, data: AbstractDataObject): void; private collectGabbage; private garbageItemsComparator; private getGarbageItemScore; setCacheStrategie(cacheStrategie: ICacheStrategie): void; clearCache(): void; private getCacheKey; getCacheMemoryStatus(): string; } export interface CachedDataObject { data: DataRetrievalInterface; timeStamp: number; computationTime: number; dataMemorySize: number; } export interface GarbageColletingItemsInterface { key: string; timeStamp: number; computationTime: number; dataMemorySize: number; isCacheStaled: boolean; }