cvj2.util
クラス CacheMap<K,V>

java.lang.Object
  上位を拡張 cvj2.util.CacheMap<K,V>

public class CacheMap<K,V>
extends java.lang.Object

キーに対応する値をキャッシュするMap。 容量の制限値があり、古いデータは自動的に消す。 スレッドセーフに使用できる。


入れ子のクラスの概要
static interface CacheMap.RemoveCallback<K,V>
          削除された時のコールバック
 
コンストラクタの概要
CacheMap(int limit)
           
CacheMap(int limit, CacheMap.RemoveCallback<K,V> callback, boolean callbackOnOverwrite)
          コンストラクタ
 
メソッドの概要
 void clear()
          キャッシュクリア
 void dump()
          デバッグダンプ
 boolean exists(K key)
          存在チェック (データの新旧を更新しない)
 V get(K key)
          データを取得する
 void getAll(java.util.ArrayList<K> keys, java.util.ArrayList<V> vals)
          全て取得 (先頭に古いデータが来る)
 int getLimit()
          容量制限の取得
 void put(K key, V val)
          データをキャッシュにセットする
 V remove(K key)
          削除
 void setLimit(int limit)
          容量制限の設定
 
クラス java.lang.Object から継承されたメソッド
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

コンストラクタの詳細

CacheMap

public CacheMap(int limit,
                CacheMap.RemoveCallback<K,V> callback,
                boolean callbackOnOverwrite)
コンストラクタ


CacheMap

public CacheMap(int limit)
メソッドの詳細

getAll

public void getAll(java.util.ArrayList<K> keys,
                   java.util.ArrayList<V> vals)
全て取得 (先頭に古いデータが来る)


dump

public void dump()
デバッグダンプ


exists

public boolean exists(K key)
存在チェック (データの新旧を更新しない)


remove

public V remove(K key)
削除

パラメータ:
key - 削除対象のキー
戻り値:
削除された値

get

public V get(K key)
データを取得する

戻り値:
存在しないなら、null

put

public void put(K key,
                V val)
データをキャッシュにセットする

パラメータ:
key - データのキー
val - データ

setLimit

public void setLimit(int limit)
容量制限の設定


getLimit

public int getLimit()
容量制限の取得


clear

public void clear()
キャッシュクリア