woolpack.config
クラス CacheMap
java.lang.Object
woolpack.config.CacheMap
- すべての実装されたインタフェース:
- ConfigExpression
- 直系の既知のサブクラス:
- LocaleCacheMap
public class CacheMap
- extends java.lang.Object
- implements ConfigExpression
MapをキャッシュするConfigExpression。
委譲先で生成されるMapがgetCacheKey()で返されるキーに対して一意であることを想定しているため並行性制御を行っていない。
- 作成者:
- nakamura
|
コンストラクタの概要 |
CacheMap(java.util.Map<java.lang.Object,java.util.Map<java.lang.String,java.lang.Object>> cacheMap,
ConfigExpression mapMaker)
コンストラクタ。 |
| クラス java.lang.Object から継承されたメソッド |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
CacheMap
public CacheMap(java.util.Map<java.lang.Object,java.util.Map<java.lang.String,java.lang.Object>> cacheMap,
ConfigExpression mapMaker)
- コンストラクタ。
- パラメータ:
cacheMap - キャッシュ。本クラスはこの引数の状態を変化させる。null が指定された場合はキャッシュを行わない。LinkedHashMap.removeEldestEntry(java.util.Map.Entry)を指定したLinkedHashMapを指定するとキャッシュの容量を制御することができる。HashMapなどの強参照のMapを指定すると容量制限のないキャッシュになる。WeakHashMapを指定すると弱参照によるキャッシュになる。mapMaker - Mapを生成し加工する委譲先のConfigExpression。
- 例外:
java.lang.NullPointerException - 引数が null の場合。
interpret
public void interpret(ConfigContext context)
- インタフェース
ConfigExpression の記述:
Mapを加工するために呼び出される(called)。
実装クラスでは、引数が null でないことを前提としてよい。
実装クラスでRuntimeExceptionのサブ例外が発生する場合は JavaDoc コメントに記載すると部品の可用性が維持される。
- 定義:
- インタフェース
ConfigExpression 内の interpret
- パラメータ:
context - Context 役。
- 例外:
NullPointerExcpeption - 引数が null の場合。
getCacheKey
public java.lang.Object getCacheKey()
- 委譲先で生成する
Mapを一意に識別するためのキーを取得するために呼び出される(called)。
デフォルトは常に同一のインスタンスを返す。
これはWeakHashMapが指定されていてもGCにより改修されないオブジェクトである。
Localeや端末ごとにMapをキャッシュする際にオーバライドする。
オーバライドする際はPutResourceBundle.getResourceBundle(String)と整合性を保つ必要がある。
- 戻り値:
- cache 委譲先で生成する
Mapを一意に識別するためのキー。