woolpack.locale
クラス LocaleCacheMap

java.lang.Object
  上位を拡張 woolpack.config.CacheMap
      上位を拡張 woolpack.locale.LocaleCacheMap
すべての実装されたインタフェース:
ConfigExpression

public class LocaleCacheMap
extends CacheMap

LocaleMapをキャッシュし現在のスレッドのLocaleでキャッシュを取り出すCacheMap

作成者:
nakamura

コンストラクタの概要
LocaleCacheMap(java.util.Map<java.lang.Object,java.util.Map<java.lang.String,java.lang.Object>> cacheMap, ConfigExpression mapMaker, java.lang.ThreadLocal<java.util.Locale> threadLocal)
          コンストラクタ。
 
メソッドの概要
 java.lang.Object getCacheKey()
          委譲先で生成するMapを一意に識別するためのキーを取得するために呼び出される(called)。
 
クラス woolpack.config.CacheMap から継承されたメソッド
interpret
 
クラス java.lang.Object から継承されたメソッド
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

コンストラクタの詳細

LocaleCacheMap

public LocaleCacheMap(java.util.Map<java.lang.Object,java.util.Map<java.lang.String,java.lang.Object>> cacheMap,
                      ConfigExpression mapMaker,
                      java.lang.ThreadLocal<java.util.Locale> threadLocal)
コンストラクタ。

パラメータ:
cacheMap - キャッシュ。本クラスはこの引数の状態を変化させる。null が指定された場合はキャッシュを行わない。LinkedHashMap.removeEldestEntry(java.util.Map.Entry)を指定したLinkedHashMapを指定するとキャッシュの容量を制御することができる。HashMapなどの強参照のMapを指定すると容量制限のないキャッシュになる。WeakHashMapを指定すると弱参照によるキャッシュになる。
mapMaker - Mapを生成し加工する委譲先のConfigExpression
threadLocal - 現在のスレッドのLocaleを保持するThreadLocal。本クラスはこの引数の状態を変化させない。
例外:
java.lang.NullPointerException - 引数のいずれかが null の場合。
メソッドの詳細

getCacheKey

public java.lang.Object getCacheKey()
クラス CacheMap の記述:
委譲先で生成するMapを一意に識別するためのキーを取得するために呼び出される(called)。 デフォルトは常に同一のインスタンスを返す。 これはWeakHashMapが指定されていてもGCにより改修されないオブジェクトである。 Localeや端末ごとにMapをキャッシュする際にオーバライドする。 オーバライドする際はPutResourceBundle.getResourceBundle(String)と整合性を保つ必要がある。

オーバーライド:
クラス CacheMap 内の getCacheKey
戻り値:
cache 委譲先で生成するMapを一意に識別するためのキー。