K
- キャッシュキーの型V
- キャッシュ値の型public class InMemoryExpirableCache<K,V> extends ExpirableCacheTemplate<K,V>
ExpirableCache
実装クラス。UNLIMITED
Constructor and Description |
---|
InMemoryExpirableCache() |
Modifier and Type | Method and Description |
---|---|
protected void |
addToCache(K key,
Expirable<V> expirable)
キャッシュに値を設定する。
|
protected void |
clearCache()
キャッシュの全エントリを削除する。
|
protected java.util.Map<K,Expirable<V>> |
createCacheContainer(int max)
キャッシュの実体となるMapを生成する。
本クラスでは
LRUMap が使用される。
本メソッドをオーバライドすることで使用するMap実装を変更することができる。
本クラスをスレッドセーフにするには、このメソッドが返却するMapインスタンスを スレッドセーフとしなければならない。 |
protected Expirable<V> |
getFromCache(K key)
キャッシュから値を取得する。
|
protected Expirable<V> |
removeFromCache(K key)
指定したキーに対応するエントリを削除する。
|
void |
setCacheSize(int max)
キャッシュ上限値を設定する。
ここで設定された件数を超過してキャッシュに値が設定された場合、
最も参照されていないエントリが削除される。
|
add, addUnlimited, clear, getIfNotExpired, getNowDate, remove, setCacheListener, setSystemTimeProvider
public void setCacheSize(int max)
max
- 上限値protected java.util.Map<K,Expirable<V>> createCacheContainer(int max)
LRUMap
が使用される。
本メソッドをオーバライドすることで使用するMap実装を変更することができる。
max
- 最大上限件数protected Expirable<V> getFromCache(K key)
getFromCache
in class ExpirableCacheTemplate<K,V>
key
- キーExpirable
protected Expirable<V> removeFromCache(K key)
removeFromCache
in class ExpirableCacheTemplate<K,V>
key
- キーExpirable
protected void addToCache(K key, Expirable<V> expirable)
addToCache
in class ExpirableCacheTemplate<K,V>
key
- キーexpirable
- 値を格納したExpirable
protected void clearCache()
clearCache
in class ExpirableCacheTemplate<K,V>