public abstract class BaseHeapNearCacheRecordStore<K,V,R extends NearCacheRecord> extends AbstractNearCacheRecordStore<K,V,K,R,HeapNearCacheRecordMap<K,R>>
classLoader, evictionChecker, evictionPolicyEvaluator, evictionPolicyType, evictionStrategy, maxIdleMillis, maxSizeChecker, MILLI_SECONDS_IN_A_SECOND, nearCacheConfig, nearCacheStats, records, REFERENCE_SIZE, RESERVATION_ID, reservationId, reserveForUpdate, serializationService, staleReadDetector, timeToLiveMillis
NO_LISTENER
Constructor and Description |
---|
BaseHeapNearCacheRecordStore(String name,
NearCacheConfig nearCacheConfig,
SerializationService serializationService,
ClassLoader classLoader) |
Modifier and Type | Method and Description |
---|---|
protected boolean |
containsRecordKey(K key) |
protected MaxSizeChecker |
createNearCacheMaxSizeChecker(EvictionConfig evictionConfig,
NearCacheConfig nearCacheConfig) |
protected HeapNearCacheRecordMap<K,R> |
createNearCacheRecordMap(NearCacheConfig nearCacheConfig) |
void |
destroy()
Clears the record store and destroys it.
|
void |
doExpiration()
Performs expiration and evicts expired records.
|
protected R |
getOrCreateToReserve(K key) |
R |
getRecord(K key) |
void |
loadKeys(DataStructureAdapter<Data,?> adapter)
Loads the keys into the Near Cache.
|
void |
onEvict(K key,
R record,
boolean wasExpired)
Called when an
Evictable entry is evicted. |
protected R |
putRecord(K key,
R record) |
protected R |
removeRecord(K key) |
void |
storeKeys()
Persists the key set of the Near Cache.
|
protected V |
updateAndGetReserved(K key,
V value,
long reservationId,
boolean deserialize) |
checkAvailable, clear, clearRecords, createEvictionChecker, createEvictionPolicyEvaluator, createEvictionStrategy, dataToValue, destroyStore, doEviction, doEvictionIfRequired, get, getKeyStorageMemoryCost, getNearCacheStats, getRecordStorageMemoryCost, getStaleReadDetector, getTotalStorageMemoryCost, initialize, isAvailable, isEvictionEnabled, isRecordExpired, nextReservationId, onExpire, onGet, onGetError, onPut, onPutError, onRecordAccess, onRecordCreate, onRemove, onRemoveError, put, recordToValue, remove, setStaleReadDetector, size, toData, toValue, tryPublishReserved, tryReserveForUpdate, updateRecordValue, updateReservedRecordInternal, valueToData, valueToRecord
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
selectToSave
public BaseHeapNearCacheRecordStore(String name, NearCacheConfig nearCacheConfig, SerializationService serializationService, ClassLoader classLoader)
protected MaxSizeChecker createNearCacheMaxSizeChecker(EvictionConfig evictionConfig, NearCacheConfig nearCacheConfig)
createNearCacheMaxSizeChecker
in class AbstractNearCacheRecordStore<K,V,K,R extends NearCacheRecord,HeapNearCacheRecordMap<K,R extends NearCacheRecord>>
protected HeapNearCacheRecordMap<K,R> createNearCacheRecordMap(NearCacheConfig nearCacheConfig)
createNearCacheRecordMap
in class AbstractNearCacheRecordStore<K,V,K,R extends NearCacheRecord,HeapNearCacheRecordMap<K,R extends NearCacheRecord>>
public R getRecord(K key)
getRecord
in class AbstractNearCacheRecordStore<K,V,K,R extends NearCacheRecord,HeapNearCacheRecordMap<K,R extends NearCacheRecord>>
protected R putRecord(K key, R record)
putRecord
in class AbstractNearCacheRecordStore<K,V,K,R extends NearCacheRecord,HeapNearCacheRecordMap<K,R extends NearCacheRecord>>
protected R removeRecord(K key)
removeRecord
in class AbstractNearCacheRecordStore<K,V,K,R extends NearCacheRecord,HeapNearCacheRecordMap<K,R extends NearCacheRecord>>
protected boolean containsRecordKey(K key)
containsRecordKey
in class AbstractNearCacheRecordStore<K,V,K,R extends NearCacheRecord,HeapNearCacheRecordMap<K,R extends NearCacheRecord>>
public void onEvict(K key, R record, boolean wasExpired)
EvictionListener
Evictable
entry is evicted.onEvict
in interface EvictionListener<K,R extends NearCacheRecord>
onEvict
in class AbstractNearCacheRecordStore<K,V,K,R extends NearCacheRecord,HeapNearCacheRecordMap<K,R extends NearCacheRecord>>
key
- Accessor of the Evictable
entry that is evicted.record
- Evictable
entry that is evicted.wasExpired
- true
if the entry was evicted due to expiration, false
otherwisepublic void doExpiration()
NearCacheRecordStore
public void loadKeys(DataStructureAdapter<Data,?> adapter)
NearCacheRecordStore
public void storeKeys()
NearCacheRecordStore
public void destroy()
NearCacheRecordStore
destroy
in interface NearCacheRecordStore<K,V>
destroy
in class AbstractNearCacheRecordStore<K,V,K,R extends NearCacheRecord,HeapNearCacheRecordMap<K,R extends NearCacheRecord>>
protected R getOrCreateToReserve(K key)
getOrCreateToReserve
in class AbstractNearCacheRecordStore<K,V,K,R extends NearCacheRecord,HeapNearCacheRecordMap<K,R extends NearCacheRecord>>
protected V updateAndGetReserved(K key, V value, long reservationId, boolean deserialize)
updateAndGetReserved
in class AbstractNearCacheRecordStore<K,V,K,R extends NearCacheRecord,HeapNearCacheRecordMap<K,R extends NearCacheRecord>>
Copyright © 2017 Hazelcast, Inc.. All Rights Reserved.