| 
Oracle Fusion Middleware Java API Reference for Oracle Extension SDK Reference 11g Release 1 (11.1.1) E13403-04  | 
|||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
java.lang.Objectoracle.javatools.util.Maps.CacheStrategy<K,V,E>
public abstract static class Maps.CacheStrategy<K,V,E extends Maps.AbstractLinkedEntry<K,V>>
An abstract caching strategy for a cache map.
 
| Field Summary | |
|---|---|
static Maps.AbstractCacheMap.MappingType | 
CANONICAL
 | 
static int | 
DEFAULT_INITIAL_CAPACITY
 | 
static float | 
DEFAULT_LOAD_FACTOR
 | 
static Maps.AbstractCacheMap.ReferenceType | 
HARD
 | 
static Maps.AbstractCacheMap.MappingType | 
NONCANONICAL
 | 
static Maps.AbstractCacheMap.ReferenceType | 
SOFT
 | 
static Maps.AbstractCacheMap.ReferenceType | 
WEAK
 | 
| Constructor Summary | |
|---|---|
protected  | 
Maps.CacheStrategy(int initialCapacity,
                   float loadFactor,
                   Maps.AbstractCacheMap.ReferenceType valueReferenceType,
                   Maps.AbstractCacheMap.MappingType mappingType)
Constructs a cache strategy.  | 
| Method Summary | |
|---|---|
protected  void | 
entryAccessed(Maps.AbstractCacheMap<K,V,E> map,
              E entry)
Invoked when the value of an existing entry is accessed by Maps.AbstractHashMap.get(java.lang.Object). | 
protected  void | 
entryAdded(Maps.AbstractCacheMap<K,V,E> map,
           E entry)
Invoked when a new entry is added to this map, when entries are added by Maps.AbstractHashMap.put(K, V). | 
protected  void | 
entryChanged(Maps.AbstractCacheMap<K,V,E> map,
             E oldEntry,
             V oldValue,
             E newEntry)
Invoked when the value of an existing entry is changed, when entries are changed by Maps.AbstractHashMap.put(K, V) or evicted but not removed by 
 Maps.AbstractCacheMap.evictExistingEntry(E). | 
protected  void | 
entryEvicted(Maps.AbstractCacheMap<K,V,E> map,
             E entry)
Invoked when an existing entry is evicted by Maps.AbstractCacheMap.evictExistingEntry(E) (e.g., because evictEldest(oracle.javatools.util.Maps.AbstractCacheMap returned 
 true) and the map is not canonical. | 
protected  void | 
entryPurged(Maps.AbstractCacheMap<K,V,E> map,
            E entry)
Invoked when an existing entry is purged after its value has been garbage collected.  | 
protected  void | 
entryRemoved(Maps.AbstractCacheMap<K,V,E> map,
             E entry)
Invoked when an existing entry is removed by a remove method of this map, of a view collection of this map, or of an iterator of a view collection of this map The Maps.AbstractCacheMap implementation never invokes entryRemoved(oracle.javatools.util.Maps.AbstractCacheMap 
 when entries are removed by the Maps.AbstractLinkedHashMap.clear() method of this
 map, or of a view collection of this map. | 
protected  boolean | 
evictEldest(Maps.AbstractCacheMap<K,V,E> map,
            E eldest)
Gets whether to evict the eldest entry from a cache.  | 
 int | 
getInitialCapacity()
Gets the initial capacity of the cache map.  | 
 float | 
getLoadFactor()
Gets the load factor of the cache map.  | 
 Maps.AbstractCacheMap.MappingType | 
getMappingType()
Gets whether the cache maps canonically.  | 
 Maps.AbstractCacheMap.ReferenceType | 
getValueReferenceType()
Gets the value reference type of the cache map.  | 
protected  void | 
mapChanged(Maps.AbstractCacheMap<K,V,E> map)
Invoked when the map has changed, when entries are added, removed, or accessed.  | 
| Methods inherited from class java.lang.Object | 
|---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait | 
| Field Detail | 
|---|
public static final int DEFAULT_INITIAL_CAPACITY
public static final float DEFAULT_LOAD_FACTOR
public static final Maps.AbstractCacheMap.ReferenceType HARD
public static final Maps.AbstractCacheMap.ReferenceType SOFT
public static final Maps.AbstractCacheMap.ReferenceType WEAK
public static final Maps.AbstractCacheMap.MappingType CANONICAL
public static final Maps.AbstractCacheMap.MappingType NONCANONICAL
| Constructor Detail | 
|---|
protected Maps.CacheStrategy(int initialCapacity,
                             float loadFactor,
                             Maps.AbstractCacheMap.ReferenceType valueReferenceType,
                             Maps.AbstractCacheMap.MappingType mappingType)
| Method Detail | 
|---|
public int getInitialCapacity()
public float getLoadFactor()
public Maps.AbstractCacheMap.ReferenceType getValueReferenceType()
public Maps.AbstractCacheMap.MappingType getMappingType()
protected void mapChanged(Maps.AbstractCacheMap<K,V,E> map)
entryAdded(oracle.javatools.util.Maps.AbstractCacheMap, E) , entryRemoved(oracle.javatools.util.Maps.AbstractCacheMap, E) , or entryAccessed(oracle.javatools.util.Maps.AbstractCacheMap, E)  method is
 invoked.
 
 The Maps.CacheStrategy implementation does nothing.
protected void entryAdded(Maps.AbstractCacheMap<K,V,E> map,
                          E entry)
Maps.AbstractHashMap.put(K, V).
 
 The Maps.CacheStrategy implementation does nothing.
protected void entryChanged(Maps.AbstractCacheMap<K,V,E> map,
                            E oldEntry,
                            V oldValue,
                            E newEntry)
Maps.AbstractHashMap.put(K, V) or evicted but not removed by 
 Maps.AbstractCacheMap.evictExistingEntry(E).
 
 If the entry to change was mutable, its value is changed with Map.Entry#setValue and oldEntry and newEntry are the
 same object. If the entry to change was not mutable, a new entry
 must be created and oldEntry and newEntry are
 different objects.
 
 When a client directly invokes the Map.Entry#setValue method of
 any of the Map.Entry implementations provided in this class,
 this method is not invoked (while this could be addressed, it would
 require each entry instance to hold a reference to its map).
 
 The Maps.CacheStrategy implementation does nothing.
oldEntry - The existing entry that changed.oldValue - The old value of the entry.newEntry - The new entry, which may be the same as the old.
protected void entryAccessed(Maps.AbstractCacheMap<K,V,E> map,
                             E entry)
Maps.AbstractHashMap.get(java.lang.Object). Access to an entry by iterating a view collection of this 
 map does not cause this method to be invoked.
 
 The Maps.CacheStrategy implementation does nothing.
protected void entryRemoved(Maps.AbstractCacheMap<K,V,E> map,
                            E entry)
Maps.AbstractCacheMap implementation never invokes entryRemoved(oracle.javatools.util.Maps.AbstractCacheMap, E)  
 when entries are removed by the Maps.AbstractLinkedHashMap.clear() method of this
 map, or of a view collection of this map.
 
 The Maps.CacheStrategy implementation does nothing.
protected void entryPurged(Maps.AbstractCacheMap<K,V,E> map,
                           E entry)
Maps.AbstractCacheMap implementation only ever invokes entryPurged(oracle.javatools.util.Maps.AbstractCacheMap, E)  for entries which extend SoftReference or
 WeakReference and which register themselves with the
 ReferenceQueue returned by Maps.AbstractHashMap.getQueue(). 
 Maps provides four such classes: Maps.SoftEntry, 
 Maps.WeakEntry, Maps.SoftLinkedEntry, and Maps.WeakLinkedEntry.
 
 The Maps.CacheStrategy implementation does nothing.
protected void entryEvicted(Maps.AbstractCacheMap<K,V,E> map,
                            E entry)
Maps.AbstractCacheMap.evictExistingEntry(E) (e.g., because evictEldest(oracle.javatools.util.Maps.AbstractCacheMap, E)  returned 
 true) and the map is not canonical.
 
 The Maps.CacheStrategy implementation does nothing.
protected boolean evictEldest(Maps.AbstractCacheMap<K,V,E> map,
                              E eldest)
entryAdded(oracle.javatools.util.Maps.AbstractCacheMap, E)  is invoked, but not
 if entryAdded(oracle.javatools.util.Maps.AbstractCacheMap, E)  modifies the map.
 
 The Maps.CacheStrategy implementation returns false.
eldest - The eldest entry in the map, potentially to be evicted.
  | 
Oracle Fusion Middleware Java API Reference for Oracle Extension SDK Reference 11g Release 1 (11.1.1) E13403-04  | 
|||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||