public class LuceneCacheLoader extends Object implements AdvancedCacheLoader
AdvancedCacheLoader.CacheLoaderTask<K,V>, AdvancedCacheLoader.KeyFilter<K>, AdvancedCacheLoader.TaskContext
Constructor and Description |
---|
LuceneCacheLoader() |
Modifier and Type | Method and Description |
---|---|
boolean |
contains(Object key)
Returns true if the storage contains an entry associated with the given key.
|
void |
init(InitializationContext ctx)
Used to initialize a cache loader.
|
MarshalledEntry |
load(Object key)
Fetches an entry from the storage.
|
void |
process(AdvancedCacheLoader.KeyFilter filter,
AdvancedCacheLoader.CacheLoaderTask task,
Executor executor,
boolean fetchValue,
boolean fetchMetadata)
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.
|
void |
start() |
void |
stop() |
public void init(InitializationContext ctx)
CacheLoader
PersistenceManager
when setting up cache loaders.init
in interface CacheLoader
public MarshalledEntry load(Object key)
CacheLoader
MarshalledEntry
needs to be created here, InitializationContext.getMarshalledEntryFactory()
and InitializationContext.getByteBufferFactory()
should be used.load
in interface CacheLoader
public boolean contains(Object key)
CacheLoader
contains
in interface CacheLoader
public void process(AdvancedCacheLoader.KeyFilter filter, AdvancedCacheLoader.CacheLoaderTask task, Executor executor, boolean fetchValue, boolean fetchMetadata)
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
filter
- to validate which entries should be feed into the task. Might be null.task
- callback to be invoked in parallel for each stored entry that passes the filter checkexecutor
- an external thread pool to be used for parallel iterationfetchValue
- 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
wellfetchMetadata
- 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.