public class AdvancedAsyncCacheLoader extends AsyncCacheLoader implements AdvancedCacheLoader
AdvancedCacheLoader.CacheLoaderTask<K,V>, AdvancedCacheLoader.KeyFilter<K>, AdvancedCacheLoader.TaskContext
state
actual, ctx
Constructor and Description |
---|
AdvancedAsyncCacheLoader(CacheLoader actual,
AtomicReference<State> state) |
Modifier and Type | Method and Description |
---|---|
void |
process(AdvancedCacheLoader.KeyFilter keyFilter,
AdvancedCacheLoader.CacheLoaderTask cacheLoaderTask,
Executor executor,
boolean loadValues,
boolean loadMetadata)
Iterates in parallel over the entries in the storage using the threads from the executor pool.
|
int |
size()
Returns the number of elements in the store.
|
contains, load, start, stop
init, undelegate
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
contains, init, load
public AdvancedAsyncCacheLoader(CacheLoader actual, AtomicReference<State> state)
public void process(AdvancedCacheLoader.KeyFilter keyFilter, AdvancedCacheLoader.CacheLoaderTask cacheLoaderTask, Executor executor, boolean loadValues, boolean loadMetadata)
AdvancedCacheLoader
CacheLoaderTask#processEntry(org.infinispan.marshall.core.MarshalledEntry, TaskContext)
is
invoked. Before passing an entry to the callback task, the entry should be validated against the filter.
Implementors should build an AdvancedCacheLoader.TaskContext
instance (implementation) that is fed to the AdvancedCacheLoader.CacheLoaderTask
on every invocation. The AdvancedCacheLoader.CacheLoaderTask
might invoke AdvancedCacheLoader.TaskContext.stop()
at any time, so implementors of this method
should verify TaskContext's state for early termination of iteration. The method should only return once the
iteration is complete or as soon as possible in the case TaskContext.stop() is invoked.process
in interface AdvancedCacheLoader
keyFilter
- to validate which entries should be feed into the task. Might be null.cacheLoaderTask
- callback to be invoked in parallel for each stored entry that passes the filter checkexecutor
- an external thread pool to be used for parallel iterationloadValues
- whether or not to fetch the value from the persistent store. E.g. if the iteration is
intended only over the key set, no point fetching the values from the persistent store as
wellloadMetadata
- whether or not to fetch the metadata from the persistent store. E.g. if the iteration is
intended only ove the key set, then no pint fetching the metadata from the persistent store
as wellpublic int size()
AdvancedCacheLoader
size
in interface AdvancedCacheLoader
Copyright © 2014 JBoss, a division of Red Hat. All Rights Reserved.