public class JpaStore<K,V> extends Object implements AdvancedLoadWriteStore<K,V>
JpaStoreConfiguration.storeMetadata() was set to false.AdvancedCacheLoader.CacheLoaderTask<K,V>, AdvancedCacheLoader.TaskContextAdvancedCacheWriter.PurgeListener<K>| Constructor and Description |
|---|
JpaStore() |
| Modifier and Type | Method and Description |
|---|---|
void |
clear()
Removes all the data from the storage.
|
boolean |
contains(Object key)
Returns true if the storage contains an entry associated with the given key.
|
boolean |
delete(Object key) |
void |
deleteBatch(Iterable<Object> keys)
Remove all provided keys from the store in a single batch operation.
|
void |
init(InitializationContext ctx)
Used to initialize a cache loader.
|
protected boolean |
isValidKeyType(Object key) |
MarshalledEntry |
load(Object key)
Fetches an entry from the storage.
|
io.reactivex.Flowable<MarshalledEntry<K,V>> |
publishEntries(Predicate<? super K> filter,
boolean fetchValue,
boolean fetchMetadata)
Publishes all entries from this store.
|
io.reactivex.Flowable<K> |
publishKeys(Predicate<? super K> filter)
Publishes all the keys from this store.
|
void |
purge(Executor threadPool,
AdvancedCacheWriter.PurgeListener listener)
Using the thread in the pool, removed all the expired data from the persistence storage.
|
int |
size()
Returns the number of elements in the store.
|
void |
start()
Invoked on component start
|
void |
stop()
Invoked on component stop
|
void |
write(MarshalledEntry entry)
Persists the entry to the storage.
|
void |
writeBatch(Iterable<MarshalledEntry<? extends K,? extends V>> marshalledEntries)
Persist all provided entries to the store in a single batch update.
|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitdestroy, isAvailableprocesspublic void init(InitializationContext ctx)
CacheLoaderPersistenceManager
when setting up cache loaders.init in interface CacheLoader<K,V>init in interface CacheWriter<K,V>public void start()
Lifecyclepublic void stop()
Lifecycleprotected boolean isValidKeyType(Object key)
public void clear()
AdvancedCacheWriterclear in interface AdvancedCacheWriter<K,V>public boolean delete(Object key)
delete in interface CacheWriter<K,V>public void deleteBatch(Iterable<Object> keys)
CacheWriterCacheWriter.delete(Object).deleteBatch in interface CacheWriter<K,V>keys - an Iterable of entry Keys to be removed from the store.public void write(MarshalledEntry entry)
CacheWriterwrite in interface CacheWriter<K,V>MarshalledEntrypublic void writeBatch(Iterable<MarshalledEntry<? extends K,? extends V>> marshalledEntries)
CacheWriterCacheWriter.write(MarshalledEntry).writeBatch in interface CacheWriter<K,V>marshalledEntries - an Iterable of MarshalledEntry to be written to the store.public boolean contains(Object key)
CacheLoadercontains in interface CacheLoader<K,V>public MarshalledEntry load(Object key)
CacheLoaderMarshalledEntry needs to be created here, InitializationContext.getMarshalledEntryFactory() and InitializationContext.getByteBufferFactory() should be used.load in interface CacheLoader<K,V>public io.reactivex.Flowable<K> publishKeys(Predicate<? super K> filter)
AdvancedCacheLoaderSubscribers as desired. Keys are not retrieved until a given Subscriber requests
them from the Subscription.
Stores will return only non expired keys
publishKeys in interface AdvancedCacheLoader<K,V>filter - a filter - null is treated as allowing all entriespublic io.reactivex.Flowable<MarshalledEntry<K,V>> publishEntries(Predicate<? super K> filter, boolean fetchValue, boolean fetchMetadata)
AdvancedCacheLoaderSubscribers as desired. Entries are not retrieved until a given Subscriber requests
them from the Subscription.
If fetchMetadata is true this store must guarantee to not return any expired entries.
publishEntries in interface AdvancedCacheLoader<K,V>filter - a filter - null is treated as allowing all entriesfetchValue - 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 point fetching the metadata from the persistent store
as wellpublic int size()
AdvancedCacheLoadersize in interface AdvancedCacheLoader<K,V>public void purge(Executor threadPool, AdvancedCacheWriter.PurgeListener listener)
AdvancedCacheWriterWhen this method returns all entries will be purged and no tasks will be running due to this loader in the provided executor. If however an exception is thrown there could be tasks still pending or running in the executor.
purge in interface AdvancedCacheWriter<K,V>Copyright © 2018 JBoss, a division of Red Hat. All rights reserved.