|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
java.lang.Objectorg.infinispan.container.DefaultDataContainer
@ThreadSafe public class DefaultDataContainer
DefaultDataContainer is both eviction and non-eviction based data container.
| Nested Class Summary | |
|---|---|
static class |
DefaultDataContainer.EntryIterator
|
| Field Summary | |
|---|---|
protected ConcurrentMap<Object,InternalCacheEntry> |
entries
|
protected InternalEntryFactory |
entryFactory
|
protected org.infinispan.container.DefaultDataContainer.DefaultEvictionListener |
evictionListener
|
| Constructor Summary | |
|---|---|
|
DefaultDataContainer(int concurrencyLevel)
|
|
DefaultDataContainer(int concurrencyLevel,
Equivalence keyEq,
Equivalence valueEq)
|
protected |
DefaultDataContainer(int concurrencyLevel,
int maxEntries,
EvictionStrategy strategy,
EvictionThreadPolicy policy,
Equivalence keyEquivalence,
Equivalence valueEquivalence)
|
| Method Summary | |
|---|---|
static DataContainer |
boundedDataContainer(int concurrencyLevel,
int maxEntries,
EvictionStrategy strategy,
EvictionThreadPolicy policy,
Equivalence keyEquivalence,
Equivalence valueEquivalence)
|
void |
clear()
Removes all entries in the container |
boolean |
containsKey(Object k)
Tests whether an entry exists in the container |
Set<InternalCacheEntry> |
entrySet()
Returns a mutable set of immutable cache entries exposed as immutable Map.Entry instances. |
InternalCacheEntry |
get(Object k)
Retrieves a cached entry |
void |
initialize(EvictionManager evictionManager,
PassivationManager passivator,
InternalEntryFactory entryFactory,
ActivationManager activator,
CacheLoaderManager clm,
TimeService timeService)
|
Iterator<InternalCacheEntry> |
iterator()
|
Set<Object> |
keySet()
Returns a set of keys in the container. |
InternalCacheEntry |
peek(Object key)
Retrieves a cache entry in the same way as DataContainer.get(Object)}
except that it does not update or reorder any of the internal constructs. |
void |
purgeExpired()
Purges entries that have passed their expiry time |
void |
put(Object k,
Object v,
Metadata metadata)
Puts an entry in the cache along with metadata adding information such lifespan of entry, max idle time, version information...etc. |
InternalCacheEntry |
remove(Object k)
Removes an entry from the cache |
int |
size()
|
static DataContainer |
unBoundedDataContainer(int concurrencyLevel)
|
static DataContainer |
unBoundedDataContainer(int concurrencyLevel,
Equivalence keyEquivalence,
Equivalence valueEquivalence)
|
Collection<Object> |
values()
|
| Methods inherited from class java.lang.Object |
|---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Field Detail |
|---|
protected final ConcurrentMap<Object,InternalCacheEntry> entries
protected InternalEntryFactory entryFactory
protected final org.infinispan.container.DefaultDataContainer.DefaultEvictionListener evictionListener
| Constructor Detail |
|---|
public DefaultDataContainer(int concurrencyLevel)
public DefaultDataContainer(int concurrencyLevel,
Equivalence keyEq,
Equivalence valueEq)
protected DefaultDataContainer(int concurrencyLevel,
int maxEntries,
EvictionStrategy strategy,
EvictionThreadPolicy policy,
Equivalence keyEquivalence,
Equivalence valueEquivalence)
| Method Detail |
|---|
public void initialize(EvictionManager evictionManager,
PassivationManager passivator,
InternalEntryFactory entryFactory,
ActivationManager activator,
CacheLoaderManager clm,
TimeService timeService)
public static DataContainer boundedDataContainer(int concurrencyLevel,
int maxEntries,
EvictionStrategy strategy,
EvictionThreadPolicy policy,
Equivalence keyEquivalence,
Equivalence valueEquivalence)
public static DataContainer unBoundedDataContainer(int concurrencyLevel,
Equivalence keyEquivalence,
Equivalence valueEquivalence)
public static DataContainer unBoundedDataContainer(int concurrencyLevel)
public InternalCacheEntry peek(Object key)
DataContainerDataContainer.get(Object)}
except that it does not update or reorder any of the internal constructs.
I.e., expiration does not happen, and in the case of the LRU container,
the entry is not moved to the end of the chain.
This method should be used instead of DataContainer.get(Object)} when called
while iterating through the data container using methods like DataContainer.keySet()
to avoid changing the underlying collection's order.
peek in interface DataContainerkey - key under which entry is stored
public InternalCacheEntry get(Object k)
DataContainer
get in interface DataContainerk - key under which entry is stored
public void put(Object k,
Object v,
Metadata metadata)
DataContainer
put in interface DataContainerk - key under which to store entryv - value to storemetadata - metadata of the entrypublic boolean containsKey(Object k)
DataContainer
containsKey in interface DataContainerk - key to test
public InternalCacheEntry remove(Object k)
DataContainer
remove in interface DataContainerk - key to remove
public int size()
size in interface DataContainerpublic void clear()
DataContainer
clear in interface DataContainerpublic Set<Object> keySet()
DataContainer#get() method but instead #peek(), in order to avoid
changing the order of the underlying collection as a side of effect of iterating through it.
keySet in interface DataContainerpublic Collection<Object> values()
values in interface DataContainerpublic Set<InternalCacheEntry> entrySet()
DataContainer
entrySet in interface DataContainerpublic void purgeExpired()
DataContainer
purgeExpired in interface DataContainerpublic Iterator<InternalCacheEntry> iterator()
iterator in interface Iterable<InternalCacheEntry>
|
--> | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||