|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
java.lang.Objectabk.util.ACachedReference<Map<K,Reference<V>>>
abk.util.ACachedMap<K,V>
K - Tipo de la clave del mapa.V - Tipo de las instancias referencias, con instancia de Reference<V>.public class ACachedMap<K,V>
Clase que implementa una referencia volátil a un mapa caché que asocia claves con referencias, igualmente dinámicas, a una instancia.
Se supone que a partir del valor de clave se puede reconstruir el valor de la instancia (desde base de datos, o fichero de propiedades, por ejemplo), funcionando este mapa como una caché de estos valores, que podrá ser borrada por el Garbage Collector si fuese necesaria la memoria.
| Nested Class Summary | |
|---|---|
static interface |
ACachedMap.Factory<K,V>
Interfaz para crear nuevas instancias de un tipo a partir del valor de su clave primaria. |
| Field Summary | |
|---|---|
private ACachedMap.Factory<K,V> |
iFactory
Instancia para volver a crear/recuperar instancias a partir de su clave. |
| Constructor Summary | |
|---|---|
protected |
ACachedMap(ACachedMap.Factory<K,V> factory)
Constructor del mapa cacheado, basado en un mapa de tipo WeakHashMap. |
protected |
ACachedMap(ACachedMap.Factory<K,V> valueFactory,
Instantiator<Map<K,Reference<V>>> mapFactory)
Constructor del mapa cacheado. |
| Method Summary | ||
|---|---|---|
static
|
create(ACachedMap.Factory<K,V> factory)
Constructor del mapa cacheado, basado en un mapa de tipo WeakHashMap. |
|
static
|
create(ACachedMap.Factory<K,V> valueFactory,
Instantiator<Map<K,Reference<V>>> mapFactory)
Constructor del mapa cacheado. |
|
V |
getValue(K key)
Devuelve el valor archivado en caché para la clave, recuperándolo a través del ACachedMap.Factory si no estuviera cacheado su valor. |
|
V |
putValue(K key,
V value)
Coloca un nuevo valor en la caché. |
|
| Methods inherited from class abk.util.ACachedReference |
|---|
clear, create, get |
| Methods inherited from class java.lang.Object |
|---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Field Detail |
|---|
private final ACachedMap.Factory<K,V> iFactory
| Constructor Detail |
|---|
protected ACachedMap(ACachedMap.Factory<K,V> valueFactory,
Instantiator<Map<K,Reference<V>>> mapFactory)
valueFactory - Factoria de los valores.mapFactory - Factoría del mapa.
NullArgumentException - si cualquier de los dos argumentos es nulo.protected ACachedMap(ACachedMap.Factory<K,V> factory)
factory - Factoria de los valores.
NullPointerException - si cualquier factory es nulo.| Method Detail |
|---|
public static final <K,V> ACachedMap<K,V> create(ACachedMap.Factory<K,V> valueFactory,
Instantiator<Map<K,Reference<V>>> mapFactory)
K - Tipo de dato de la clave.V - Tipo de datos del valor.valueFactory - Factoria de los valores.mapFactory - Factoría del mapa.
NullPointerException - si cualquier de los dos argumentos es nulo.public static final <K,V> ACachedMap<K,V> create(ACachedMap.Factory<K,V> factory)
K - Tipo de dato de la clave.V - Tipo de datos del valor.factory - Factoria de los valores.
NullPointerException - si cualquier factory es nulo.
public V putValue(K key,
V value)
key - Clave del valor.value - Valor que se guarda.
nu en otro caso.public V getValue(K key)
key - Clave de la instancia.
|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||