public class CacheRecordStore extends Object implements ICacheRecordStore
ICacheRecordStore
Represents a named ICache on-heap data for a single partition.
Total data of an ICache object is the total CacheRecordStore on all partitions.
This data structure is the actual cache operations implementation, data access, statistics, event firing etc.
CacheRecordStore is managed by CachePartitionSegment.CachePartitionSegment
Modifier and Type | Method and Description |
---|---|
void |
clear(Set<Data> keys,
boolean isRemoveAll) |
boolean |
contains(Data key) |
protected void |
deleteAllCacheEntry(Set<Data> keys)
modifies the keys
|
protected void |
deleteCacheEntry(Data key) |
void |
destroy() |
void |
evictExpiredRecords() |
Object |
get(Data key,
javax.cache.expiry.ExpiryPolicy expiryPolicy) |
MapEntrySet |
getAll(Set<Data> keySet,
javax.cache.expiry.ExpiryPolicy expiryPolicy) |
Object |
getAndPut(Data key,
Object value,
javax.cache.expiry.ExpiryPolicy expiryPolicy,
String caller) |
protected Object |
getAndPut(Data key,
Object value,
javax.cache.expiry.ExpiryPolicy expiryPolicy,
String caller,
boolean getValue) |
protected Object |
getAndPut(Data key,
Object value,
javax.cache.expiry.ExpiryPolicy expiryPolicy,
String caller,
boolean getValue,
boolean disableWriteThrough) |
Object |
getAndRemove(Data key,
String caller) |
Object |
getAndReplace(Data key,
Object value,
javax.cache.expiry.ExpiryPolicy expiryPolicy,
String caller) |
CacheStatisticsImpl |
getCacheStats() |
CacheConfig |
getConfig() |
String |
getName() |
Map<Data,CacheRecord> |
getReadOnlyRecords() |
CacheRecord |
getRecord(Data key) |
Object |
invoke(Data key,
javax.cache.processor.EntryProcessor entryProcessor,
Object[] arguments) |
CacheKeyIteratorResult |
iterator(int tableIndex,
int size) |
Set<Data> |
loadAll(Set<Data> keys,
boolean replaceExistingValues) |
protected Map<Data,Object> |
loadAllCacheEntry(Set<Data> keys) |
void |
onDestroy() |
protected boolean |
processExpiredEntry(Data key,
CacheRecord record,
long now) |
protected boolean |
processExpiredEntry(Data key,
CacheRecord record,
long expiryTime,
long now) |
void |
publishCompletedEvent(String cacheName,
int completionId,
Data dataKey,
int orderKey) |
protected void |
publishEvent(String cacheName,
CacheEventType eventType,
Data dataKey,
Data dataOldValue,
Data dataValue,
boolean isOldValueAvailable) |
void |
put(Data key,
Object value,
javax.cache.expiry.ExpiryPolicy expiryPolicy,
String caller) |
boolean |
putIfAbsent(Data key,
Object value,
javax.cache.expiry.ExpiryPolicy expiryPolicy,
String caller) |
protected boolean |
putIfAbsent(Data key,
Object value,
javax.cache.expiry.ExpiryPolicy expiryPolicy,
String caller,
boolean disableWriteThrough) |
protected Object |
readThroughCache(Data key) |
boolean |
remove(Data key,
Object value,
String caller) |
boolean |
remove(Data key,
String caller) |
CacheRecord |
removeRecord(Data key) |
boolean |
replace(Data key,
Object value,
javax.cache.expiry.ExpiryPolicy expiryPolicy,
String caller) |
boolean |
replace(Data key,
Object oldValue,
Object newValue,
javax.cache.expiry.ExpiryPolicy expiryPolicy,
String caller) |
void |
setRecord(Data key,
CacheRecord record) |
int |
size() |
protected void |
writeThroughCache(Data key,
Object value) |
public Object get(Data key, javax.cache.expiry.ExpiryPolicy expiryPolicy)
get
in interface ICacheRecordStore
public void put(Data key, Object value, javax.cache.expiry.ExpiryPolicy expiryPolicy, String caller)
put
in interface ICacheRecordStore
protected Object getAndPut(Data key, Object value, javax.cache.expiry.ExpiryPolicy expiryPolicy, String caller, boolean getValue, boolean disableWriteThrough)
protected Object getAndPut(Data key, Object value, javax.cache.expiry.ExpiryPolicy expiryPolicy, String caller, boolean getValue)
public Object getAndPut(Data key, Object value, javax.cache.expiry.ExpiryPolicy expiryPolicy, String caller)
getAndPut
in interface ICacheRecordStore
public boolean putIfAbsent(Data key, Object value, javax.cache.expiry.ExpiryPolicy expiryPolicy, String caller)
putIfAbsent
in interface ICacheRecordStore
protected boolean putIfAbsent(Data key, Object value, javax.cache.expiry.ExpiryPolicy expiryPolicy, String caller, boolean disableWriteThrough)
public Object getAndRemove(Data key, String caller)
getAndRemove
in interface ICacheRecordStore
public boolean remove(Data key, String caller)
remove
in interface ICacheRecordStore
public boolean remove(Data key, Object value, String caller)
remove
in interface ICacheRecordStore
public boolean replace(Data key, Object value, javax.cache.expiry.ExpiryPolicy expiryPolicy, String caller)
replace
in interface ICacheRecordStore
public boolean replace(Data key, Object oldValue, Object newValue, javax.cache.expiry.ExpiryPolicy expiryPolicy, String caller)
replace
in interface ICacheRecordStore
public Object getAndReplace(Data key, Object value, javax.cache.expiry.ExpiryPolicy expiryPolicy, String caller)
getAndReplace
in interface ICacheRecordStore
public boolean contains(Data key)
contains
in interface ICacheRecordStore
public MapEntrySet getAll(Set<Data> keySet, javax.cache.expiry.ExpiryPolicy expiryPolicy)
getAll
in interface ICacheRecordStore
public int size()
size
in interface ICacheRecordStore
public void clear(Set<Data> keys, boolean isRemoveAll)
clear
in interface ICacheRecordStore
public void destroy()
destroy
in interface ICacheRecordStore
public void onDestroy()
public CacheRecord getRecord(Data key)
getRecord
in interface ICacheRecordStore
public void setRecord(Data key, CacheRecord record)
setRecord
in interface ICacheRecordStore
public CacheRecord removeRecord(Data key)
removeRecord
in interface ICacheRecordStore
public CacheKeyIteratorResult iterator(int tableIndex, int size)
iterator
in interface ICacheRecordStore
public Object invoke(Data key, javax.cache.processor.EntryProcessor entryProcessor, Object[] arguments)
invoke
in interface ICacheRecordStore
public Set<Data> loadAll(Set<Data> keys, boolean replaceExistingValues)
loadAll
in interface ICacheRecordStore
public CacheStatisticsImpl getCacheStats()
getCacheStats
in interface ICacheRecordStore
public CacheConfig getConfig()
getConfig
in interface ICacheRecordStore
public String getName()
getName
in interface ICacheRecordStore
public Map<Data,CacheRecord> getReadOnlyRecords()
getReadOnlyRecords
in interface ICacheRecordStore
public void evictExpiredRecords()
protected Object readThroughCache(Data key) throws javax.cache.integration.CacheLoaderException
javax.cache.integration.CacheLoaderException
protected void writeThroughCache(Data key, Object value) throws javax.cache.integration.CacheWriterException
javax.cache.integration.CacheWriterException
protected void deleteCacheEntry(Data key)
protected void deleteAllCacheEntry(Set<Data> keys)
keys
- : keys to delete, after method returns it includes only deleted keysprotected boolean processExpiredEntry(Data key, CacheRecord record, long now)
protected boolean processExpiredEntry(Data key, CacheRecord record, long expiryTime, long now)
public void publishCompletedEvent(String cacheName, int completionId, Data dataKey, int orderKey)
publishCompletedEvent
in interface ICacheRecordStore
protected void publishEvent(String cacheName, CacheEventType eventType, Data dataKey, Data dataOldValue, Data dataValue, boolean isOldValueAvailable)
Copyright © 2014 Hazelcast, Inc.. All Rights Reserved.