UNPKG

hazelcast-client

Version:

Hazelcast - open source In-Memory Data Grid - client for NodeJS

67 lines (66 loc) 2.33 kB
import { Data } from '../serialization/Data'; import { NearCacheConfig } from '../Config'; import { SerializationService } from '../serialization/SerializationService'; import { DataKeyedHashMap } from '../DataStoreHashMap'; export declare class DataRecord { key: Data; value: Data | any; private creationTime; private expirationTime; private lastAccessTime; private accessHit; constructor(key: Data, value: Data | any, creationTime?: number, ttl?: number); static lruComp(x: DataRecord, y: DataRecord): number; static lfuComp(x: DataRecord, y: DataRecord): number; static randomComp(x: DataRecord, y: DataRecord): number; isExpired(maxIdleSeconds: number): boolean; setAccessTime(): void; hitRecord(): void; } export interface NearCacheStatistics { evictedCount: number; expiredCount: number; missCount: number; hitCount: number; entryCount: number; } export interface NearCache { put(key: Data, value: any): void; get(key: Data): Data | any; invalidate(key: Data): void; clear(): void; getStatistics(): NearCacheStatistics; isInvalidatedOnChange(): boolean; } export declare class NearCacheImpl implements NearCache { private serializationService; private name; private invalidateOnChange; private maxIdleSeconds; private inMemoryFormat; private timeToLiveSeconds; private evictionPolicy; private evictionMaxSize; private evictionSamplingCount; private evictionSamplingPoolSize; private evictionCandidatePool; internalStore: DataKeyedHashMap<DataRecord>; private evictedCount; private expiredCount; private missCount; private hitCount; private compareFunc; constructor(nearCacheConfig: NearCacheConfig, serializationService: SerializationService); put(key: Data, value: any): void; get(key: Data): Data | any; invalidate(key: Data): void; clear(): void; protected isEvictionRequired(): boolean; protected doEvictionIfRequired(): void; protected recomputeEvictionPool(): number; protected filterExpiredRecord(candidate: DataRecord): boolean; protected expireRecord(key: any | Data): void; protected evictRecord(key: any | Data): void; isInvalidatedOnChange(): boolean; getStatistics(): NearCacheStatistics; }