Class LocalCachedMapOptions<K,V>
- java.lang.Object
-
- org.redisson.api.MapOptions<K,V>
-
- org.redisson.api.LocalCachedMapOptions<K,V>
-
- Type Parameters:
K- key typeV- value type
public class LocalCachedMapOptions<K,V> extends MapOptions<K,V>
Configuration for LocalCachedMap object.- Author:
- Nikita Koksharov
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static classLocalCachedMapOptions.CacheProviderstatic classLocalCachedMapOptions.EvictionPolicystatic classLocalCachedMapOptions.ReconnectionStrategyVarious strategies to avoid stale objects in local cache.static classLocalCachedMapOptions.StoreModestatic classLocalCachedMapOptions.SyncStrategy-
Nested classes/interfaces inherited from class org.redisson.api.MapOptions
MapOptions.WriteMode
-
-
Constructor Summary
Constructors Modifier Constructor Description protectedLocalCachedMapOptions()protectedLocalCachedMapOptions(LocalCachedMapOptions<K,V> copy)
-
Method Summary
-
Methods inherited from class org.redisson.api.MapOptions
getLoader, getWriteBehindBatchSize, getWriteBehindDelay, getWriteMode, getWriter
-
-
-
-
Constructor Detail
-
LocalCachedMapOptions
protected LocalCachedMapOptions()
-
LocalCachedMapOptions
protected LocalCachedMapOptions(LocalCachedMapOptions<K,V> copy)
-
-
Method Detail
-
defaults
public static <K,V> LocalCachedMapOptions<K,V> defaults()
Creates a new instance of LocalCachedMapOptions with default options.This is equivalent to:
new LocalCachedMapOptions() .cacheSize(0).timeToLive(0).maxIdle(0) .evictionPolicy(EvictionPolicy.NONE) .reconnectionStrategy(ReconnectionStrategy.NONE) .cacheProvider(CacheProvider.REDISSON) .syncStrategy(SyncStrategy.INVALIDATE) .storeCacheMiss(false);- Type Parameters:
K- key typeV- value type- Returns:
- LocalCachedMapOptions instance
-
getCacheProvider
public LocalCachedMapOptions.CacheProvider getCacheProvider()
-
getEvictionPolicy
public LocalCachedMapOptions.EvictionPolicy getEvictionPolicy()
-
getCacheSize
public int getCacheSize()
-
getTimeToLiveInMillis
public long getTimeToLiveInMillis()
-
getMaxIdleInMillis
public long getMaxIdleInMillis()
-
cacheSize
public LocalCachedMapOptions<K,V> cacheSize(int cacheSize)
Defines local cache size. If size is0then local cache is unbounded.- Parameters:
cacheSize- - size of cache- Returns:
- LocalCachedMapOptions instance
-
getReconnectionStrategy
public LocalCachedMapOptions.ReconnectionStrategy getReconnectionStrategy()
-
getSyncStrategy
public LocalCachedMapOptions.SyncStrategy getSyncStrategy()
-
reconnectionStrategy
public LocalCachedMapOptions<K,V> reconnectionStrategy(LocalCachedMapOptions.ReconnectionStrategy reconnectionStrategy)
-
syncStrategy
public LocalCachedMapOptions<K,V> syncStrategy(LocalCachedMapOptions.SyncStrategy syncStrategy)
-
evictionPolicy
public LocalCachedMapOptions<K,V> evictionPolicy(LocalCachedMapOptions.EvictionPolicy evictionPolicy)
Defines local cache eviction policy.- Parameters:
evictionPolicy-LRU- uses local cache with LRU (least recently used) eviction policy.LFU- uses local cache with LFU (least frequently used) eviction policy.SOFT- uses local cache with soft references. The garbage collector will evict items from the local cache when the JVM is running out of memory.WEAK- uses local cache with weak references. The garbage collector will evict items from the local cache when it became weakly reachable.NONE- doesn't use eviction policy, but timeToLive and maxIdleTime params are still working.- Returns:
- LocalCachedMapOptions instance
-
timeToLive
public LocalCachedMapOptions<K,V> timeToLive(long timeToLiveInMillis)
Defines time to live in milliseconds of each map entry in local cache. If value equals to0then timeout is not applied- Parameters:
timeToLiveInMillis- - time to live in milliseconds- Returns:
- LocalCachedMapOptions instance
-
timeToLive
public LocalCachedMapOptions<K,V> timeToLive(long timeToLive, TimeUnit timeUnit)
Defines time to live of each map entry in local cache. If value equals to0then timeout is not applied- Parameters:
timeToLive- - time to livetimeUnit- - time unit- Returns:
- LocalCachedMapOptions instance
-
maxIdle
public LocalCachedMapOptions<K,V> maxIdle(long maxIdleInMillis)
Defines max idle time in milliseconds of each map entry in local cache. If value equals to0then timeout is not applied- Parameters:
maxIdleInMillis- - time to live in milliseconds- Returns:
- LocalCachedMapOptions instance
-
maxIdle
public LocalCachedMapOptions<K,V> maxIdle(long maxIdle, TimeUnit timeUnit)
Defines max idle time of each map entry in local cache. If value equals to0then timeout is not applied- Parameters:
maxIdle- - max idle timetimeUnit- - time unit- Returns:
- LocalCachedMapOptions instance
-
getStoreMode
public LocalCachedMapOptions.StoreMode getStoreMode()
-
storeMode
public LocalCachedMapOptions<K,V> storeMode(LocalCachedMapOptions.StoreMode storeMode)
Defines store mode of cache data.- Parameters:
storeMode-LOCALCACHE- store data in local cache only.LOCALCACHE_REDIS- store data in both Redis and local cache.- Returns:
- LocalCachedMapOptions instance
-
cacheProvider
public LocalCachedMapOptions<K,V> cacheProvider(LocalCachedMapOptions.CacheProvider cacheProvider)
Defines Cache provider used as local cache store.- Parameters:
cacheProvider-REDISSON- uses Redisson own implementation.CAFFEINE- uses Caffeine implementation.- Returns:
- LocalCachedMapOptions instance
-
isStoreCacheMiss
public boolean isStoreCacheMiss()
-
storeCacheMiss
public LocalCachedMapOptions<K,V> storeCacheMiss(boolean storeCacheMiss)
Defines whether to store a cache miss into the local cache.- Parameters:
storeCacheMiss- - whether to store a cache miss into the local cache- Returns:
- LocalCachedMapOptions instance
-
writeBehindBatchSize
public LocalCachedMapOptions<K,V> writeBehindBatchSize(int writeBehindBatchSize)
Description copied from class:MapOptionsSets write behind tasks batch size. During MapWriter methods execution all updates accumulated into a batch of specified size.Default is
50- Overrides:
writeBehindBatchSizein classMapOptions<K,V>- Parameters:
writeBehindBatchSize- - size of batch- Returns:
- MapOptions instance
-
writeBehindDelay
public LocalCachedMapOptions<K,V> writeBehindDelay(int writeBehindDelay)
Description copied from class:MapOptionsSets write behind tasks execution delay. All updates would be applied with lag not more than specified delay.Default is
1000milliseconds- Overrides:
writeBehindDelayin classMapOptions<K,V>- Parameters:
writeBehindDelay- - delay in milliseconds- Returns:
- MapOptions instance
-
writer
public LocalCachedMapOptions<K,V> writer(MapWriter<K,V> writer)
Description copied from class:MapOptionsSetsMapWriterobject.- Overrides:
writerin classMapOptions<K,V>- Parameters:
writer- object- Returns:
- MapOptions instance
-
writeMode
public LocalCachedMapOptions<K,V> writeMode(MapOptions.WriteMode writeMode)
Description copied from class:MapOptionsSets write mode.Default is
MapOptions.WriteMode.WRITE_THROUGH- Overrides:
writeModein classMapOptions<K,V>- Parameters:
writeMode- - write mode- Returns:
- MapOptions instance
-
loader
public LocalCachedMapOptions<K,V> loader(MapLoader<K,V> loader)
Description copied from class:MapOptionsSetsMapLoaderobject.- Overrides:
loaderin classMapOptions<K,V>- Parameters:
loader- object- Returns:
- MapOptions instance
-
-