public static class Maps.ManagedCacheMap<K,V> extends Maps.CacheMap<K,V> implements Maps.ManagedCacheMapMBean
This map will be registered with the MBean server using the following
object name, where name
is the name given in the constructor:
"oracle.javatools.cache:type=CacheMap,name=" + name
Typically, the given name should uniquely identify the instance object
which contains and uses the map. If that instance object is a singleton,
its class name is typically sufficient; if not, then an additional
distinguishing property should be appended. For example, if the containing
instances are uniquely characterized by a URL property, then the string
passed to the constructor could be:
getClass().getSimpleName() + ",url=" + getUrl()
Notice how the URL is appended as an additional property, separated by a
comma (",url="). This is not strictly required, but better fits standard
JMX object naming conventions. Also note that if the value contains
certain characters (for example, a file path if a URL contained a "?" or
a file name contained a "\", see ObjectName
), it
must be quoted using ObjectName.quote(java.lang.String)
.
ObjectName
,
Serialized FormMaps.CacheMap.Canonicity, Maps.CacheMap.Strength
CANONICAL, HARD, NOT_CANONICAL, SOFT, STRONG, WEAK
DEFAULT_INITIAL_CAPACITY, DEFAULT_LOAD_FACTOR, MAXIMUM_CAPACITY
Constructor and Description |
---|
Maps.ManagedCacheMap(int bound,
Maps.CacheMap.Strength strength,
java.lang.String name)
Constructs a bounded LRU (least recently used) cache map.
|
Maps.ManagedCacheMap(int bound,
java.lang.String name)
Constructs a bounded LRU (least recently used), canonical, cache map of
strongly-referenced values.
|
Maps.ManagedCacheMap(Maps.CacheMap.Strength strength,
java.lang.String name)
Constructs an unbounded, non-canonical cache map.
|
Maps.ManagedCacheMap(Maps.CacheStrategy<K,V> strategy,
java.lang.String name)
Constructs a cache map.
|
Maps.ManagedCacheMap(java.lang.String name)
Constructs an unbounded, non-canonical cache map of strongly-referenced
values.
|
Modifier and Type | Method and Description |
---|---|
void |
clearKeyStatistics() |
protected Maps.CacheStrategy<K,V> |
decoratedStrategy(Maps.CacheStrategy<K,V> strategy)
Invoked by the
Maps.CacheMap constructor to allow a subclass to
replace the strategy passed to the constructor. |
boolean |
getCollectKeyStatistics() |
javax.management.openmbean.TabularData |
getKeyStatistics() |
int |
getMaximumSize() |
int |
getSize() |
javax.management.openmbean.CompositeData |
getStatistics() |
int |
getTotalKeyCount() |
void |
setCollectKeyStatistics(boolean collect) |
clear, createEntry, entryAccessed, entryAdded, entryChanged, entryEvicted, entryPurged, entryRemoved, evictEntry, getEldestEntry, mapChanged, removeEldestEntry
createEntryIterator, createEntrySetIterator, createKeySetIterator, createValuesIterator, evict, transfer
addEntry, capacity, change, clone, containsKey, containsValue, entrySet, equals, get, getChangeCount, getEntry, getQueue, hashCode, isEmpty, keyEquals, keyHashCode, keySet, loadFactor, mapConstructed, mapInitialized, purge, purgeEntry, put, putAll, remove, removeExistingEntry, removeKey, size, toString, valueEquals, valueHashCode, values
public Maps.ManagedCacheMap(java.lang.String name)
values
.name
- The unique name of this cache (see Maps.ManagedCacheMap
).public Maps.ManagedCacheMap(Maps.CacheMap.Strength strength, java.lang.String name)
values
.strength
- The default strength of value references.name
- The unique name of this cache (see Maps.ManagedCacheMap
).public Maps.ManagedCacheMap(int bound, java.lang.String name)
values
.bound
- The maximum number of entries allowed in the cache.name
- The unique name of this cache (see Maps.ManagedCacheMap
).public Maps.ManagedCacheMap(int bound, Maps.CacheMap.Strength strength, java.lang.String name)
values
.bound
- The maximum number of entries allowed in the cache.strength
- The default strength of value references.name
- The unique name of this cache (see Maps.ManagedCacheMap
).public Maps.ManagedCacheMap(Maps.CacheStrategy<K,V> strategy, java.lang.String name)
strategy
- The cache strategy to use.name
- The unique name of this cache (see Maps.ManagedCacheMap
).protected Maps.CacheStrategy<K,V> decoratedStrategy(Maps.CacheStrategy<K,V> strategy)
Maps.CacheMap
Maps.CacheMap
constructor to allow a subclass to
replace the strategy passed to the constructor. The default Maps.CacheMap
implementation returns the strategy passed to it.
This hook is provided to allow a subclass to decorate a strategy given to its constructor without running afoul of superclass-not- initialized issues.
decoratedStrategy
in class Maps.CacheMap<K,V>
strategy
- The strategy passed to the CacheMap constructor.public int getSize()
getSize
in interface Maps.ManagedCacheMapMBean
public int getMaximumSize()
getMaximumSize
in interface Maps.ManagedCacheMapMBean
public javax.management.openmbean.CompositeData getStatistics() throws javax.management.openmbean.OpenDataException
getStatistics
in interface Maps.ManagedCacheMapMBean
javax.management.openmbean.OpenDataException
public void setCollectKeyStatistics(boolean collect)
setCollectKeyStatistics
in interface Maps.ManagedCacheMapMBean
public boolean getCollectKeyStatistics()
getCollectKeyStatistics
in interface Maps.ManagedCacheMapMBean
public int getTotalKeyCount()
getTotalKeyCount
in interface Maps.ManagedCacheMapMBean
public javax.management.openmbean.TabularData getKeyStatistics() throws javax.management.openmbean.OpenDataException
getKeyStatistics
in interface Maps.ManagedCacheMapMBean
javax.management.openmbean.OpenDataException
public void clearKeyStatistics()
clearKeyStatistics
in interface Maps.ManagedCacheMapMBean