Interface FilterIndexingServiceProvider
-
public interface FilterIndexingServiceProvider
A service provider for filter indexing services. This is supposed to perform the filtering operation in a more efficient way than directly executing the filter by calling theCacheEventFilterConverter.filterAndConvert(Object, Object, Metadata, Object, Metadata, EventType)
method. Implementations are discovered via theServiceLoader
orServiceFinder
mechanism. Implementations may have their dependencies injected using theInject
annotation.- Since:
- 7.2
- Author:
- anistor@redhat.com
-
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description <K,V>
DelegatingCacheEntryListenerInvocation<K,V>interceptListenerInvocation(CacheEntryListenerInvocation<K,V> invocation)
Starts handling an invocation that uses anIndexedFilter
.<K,V>
voidregisterListenerInvocations(boolean isClustered, boolean isPrimaryOnly, boolean filterAndConvert, IndexedFilter<?,?,?> indexedFilter, java.util.Map<java.lang.Class<? extends java.lang.annotation.Annotation>,java.util.List<DelegatingCacheEntryListenerInvocation<K,V>>> listeners, DataConversion keyDataConversion, DataConversion valueDataConversion)
void
start()
Start the provider.void
stop()
Stop the provider.boolean
supportsFilter(IndexedFilter<?,?,?> indexedFilter)
Reports whether this provider supports the given filter type.
-
-
-
Method Detail
-
start
void start()
Start the provider. This is called after the dependencies are injected.
-
supportsFilter
boolean supportsFilter(IndexedFilter<?,?,?> indexedFilter)
Reports whether this provider supports the given filter type.- Parameters:
indexedFilter
- an indexable filter- Returns:
true
if the filter is supported,false
otherwise
-
interceptListenerInvocation
<K,V> DelegatingCacheEntryListenerInvocation<K,V> interceptListenerInvocation(CacheEntryListenerInvocation<K,V> invocation)
Starts handling an invocation that uses anIndexedFilter
.- Type Parameters:
K
- cache key typeV
- cache value type- Parameters:
invocation
- the invocation to handle- Returns:
- the wrapped invocation
-
registerListenerInvocations
<K,V> void registerListenerInvocations(boolean isClustered, boolean isPrimaryOnly, boolean filterAndConvert, IndexedFilter<?,?,?> indexedFilter, java.util.Map<java.lang.Class<? extends java.lang.annotation.Annotation>,java.util.List<DelegatingCacheEntryListenerInvocation<K,V>>> listeners, DataConversion keyDataConversion, DataConversion valueDataConversion)
-
stop
void stop()
Stop the provider.
-
-