Class DelegatingRemoteCache<K,V>
- Type Parameters:
K- key typeV- value type
- All Implemented Interfaces:
ConcurrentMap<K,,V> Map<K,,V> InternalRemoteCache<K,,V> RemoteCache<K,,V> AsyncCache<K,,V> BasicCache<K,,V> Lifecycle,TransactionalCache
- Direct Known Subclasses:
InvalidatedNearRemoteCache
InternalRemoteCache but provides extensibility to intercept
when a method is invoked. Currently all methods are supported except for iterators produced from the
keyIterator(IntSet) and entryIterator(IntSet) which are known to invoke back into the delegate cache.-
Nested Class Summary
-
Field Summary
FieldsFields inherited from class org.infinispan.client.hotrod.impl.RemoteCacheSupport
defaultLifespan, defaultMaxIdleTime -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoidaddClientListener(Object listener) Add a client listener to receive events that happen in the remote cache.voidaddClientListener(Object listener, Object[] filterFactoryParams, Object[] converterFactoryParams) Add a client listener to receive events that happen in the remote cache.addNearCacheListener(Object listener, int bloomBits) Add a client listener to handle near cache with bloom filter optimization The listener object must be annotated with @ClientListenerannotation.Asynchronous version ofMap.clear().Returns client-side statistics for this cache.computeAsync(K key, BiFunction<? super K, ? super V, ? extends V> remappingFunction, long lifespan, TimeUnit lifespanUnit, long maxIdle, TimeUnit maxIdleUnit) Asynchronous version ofBasicCache.compute(Object, BiFunction, long, TimeUnit, long, TimeUnit).computeIfAbsentAsync(K key, Function<? super K, ? extends V> mappingFunction, long lifespan, TimeUnit lifespanUnit, long maxIdle, TimeUnit maxIdleUnit) Asynchronous version ofBasicCache.computeIfAbsent(Object, Function, long, TimeUnit, long, TimeUnit).computeIfPresentAsync(K key, BiFunction<? super K, ? super V, ? extends V> remappingFunction, long lifespan, TimeUnit lifespanUnit, long maxIdle, TimeUnit maxIdleUnit) Asynchronous version ofBasicCache.computeIfPresent(Object, BiFunction, long, TimeUnit, long, TimeUnit).containsKeyAsync(K key) Asynchronous version ofMap.containsKey(Object)booleancontainsValue(Object value) entryIterator(IntSet segments) This method is identical toRemoteCache.entrySet()except that it will only return entries that map to the given segments.<T> TExecutes a remote task passing a set of named parametersgetAllAsync(Set<?> keys) TODO This should be in AdvancedCache with getAllAsynchronous version ofMap.get(Object)that allows user code to retrieve the value associated with a key at a later stage, hence allowing multiple parallel get requests to be sent.ReturnsCacheTopologyInfofor this cache.Return the currentlyDataFormatbeing used.Returns a set with all the listeners registered by this client for the given cache.getName()Retrieves the name of the cacheorg.infinispan.client.hotrod.impl.operations.OperationsFactoryReturns the HotRod protocol version supported by this RemoteCache implementationReturns theRemoteCacheContainerthat created this cache.Retrieves the version of InfinispangetWithMetadataAsync(K key) Asynchronously returns theMetadataValueassociated to the supplied key param, or null if it doesn't exist.org.infinispan.client.hotrod.impl.operations.RetryAwareCompletionStage<MetadataValue<V>>getWithMetadataAsync(K key, SocketAddress preferredAddres) booleanvoidinit(org.infinispan.client.hotrod.impl.operations.OperationsFactory operationsFactory, Configuration configuration) voidinit(org.infinispan.client.hotrod.impl.operations.OperationsFactory operationsFactory, Configuration configuration, ObjectName jmxParent) booleanisEmpty()booleanbooleankeyIterator(IntSet segments) This method is identical toRemoteCache.keySet()except that it will only return keys that map to the given segments.byte[]keyToBytes(Object o) mergeAsync(K key, V value, BiFunction<? super V, ? super V, ? extends V> remappingFunction, long lifespan, TimeUnit lifespanUnit, long maxIdleTime, TimeUnit maxIdleTimeUnit) Asynchronous version ofBasicCache.merge(Object, Object, BiFunction, long, TimeUnit, long, TimeUnit).CompletionStage<org.infinispan.client.hotrod.impl.operations.PingResponse>ping()publishEntries(String filterConverterFactory, Object[] filterConverterParams, Set<Integer> segments, int batchSize) Publishes the entries from the server in a non blocking fashion.publishEntriesByQuery(Query<?> filterQuery, Set<Integer> segments, int batchSize) Publish entries from the server matching a query.org.reactivestreams.Publisher<Map.Entry<K,MetadataValue<V>>> publishEntriesWithMetadata(Set<Integer> segments, int batchSize) Publish entries with metadata informationputAllAsync(Map<? extends K, ? extends V> data, long lifespan, TimeUnit lifespanUnit, long maxIdle, TimeUnit maxIdleUnit) Adds or overrides each specified entry in the remote cache.Asynchronous version ofBasicCache.put(Object, Object, long, TimeUnit, long, TimeUnit).putIfAbsentAsync(K key, V value, long lifespan, TimeUnit lifespanUnit, long maxIdle, TimeUnit maxIdleUnit) Asynchronous version ofBasicCache.putIfAbsent(Object, Object, long, TimeUnit, long, TimeUnit).removeAsync(Object key) Asynchronous version ofBasicCache.remove(Object).removeAsync(Object key, Object value) Asynchronous version ofConcurrentMap.remove(Object, Object).voidremoveClientListener(Object listener) Remove a previously added client listener.removeWithVersionAsync(K key, long version) voidreplaceAll(BiFunction<? super K, ? super V, ? extends V> function) replaceAsync(K key, V value, long lifespan, TimeUnit lifespanUnit, long maxIdle, TimeUnit maxIdleUnit) Asynchronous version ofBasicCache.replace(Object, Object, long, TimeUnit, long, TimeUnit).replaceAsync(K key, V oldValue, V newValue, long lifespan, TimeUnit lifespanUnit, long maxIdle, TimeUnit maxIdleUnit) Asynchronous version ofBasicCache.replace(Object, Object, Object, long, TimeUnit, long, TimeUnit).replaceWithVersionAsync(K key, V newValue, long version, long lifespanSeconds, TimeUnit lifespanTimeUnit, long maxIdle, TimeUnit maxIdleTimeUnit) voidresolveStorage(boolean objectStorage) retrieveEntries(String filterConverterFactory, Object[] filterConverterParams, Set<Integer> segments, int batchSize) Retrieve entries from the server.retrieveEntriesByQuery(Query<?> filterQuery, Set<Integer> segments, int batchSize) Retrieve entries from the server matching a query.retrieveEntriesWithMetadata(Set<Integer> segments, int batchSize) Retrieve entries with metadata informationReturns server-side statistics for this cache.Returns server-side statistics for this cache.Asynchronous version ofMap.size().voidstart()Invoked on component startvoidstop()Invoked on component stopReturns a cache where values are manipulated usingInputStreamandOutputStreamSends the current bloom filter to the listener node where a near cache listener is installed.This method is identical toRemoteCache.values()except that it will only return values that map to the given segments.<T,U> InternalRemoteCache<T, U> withDataFormat(DataFormat dataFormat) Return a new instance ofRemoteCacheusing the suppliedDataFormat.Applies one or moreFlags to the scope of a single invocation.Methods inherited from class org.infinispan.client.hotrod.impl.RemoteCacheSupport
clear, compute, compute, compute, computeAsync, computeAsync, computeIfAbsent, computeIfAbsent, computeIfAbsent, computeIfAbsentAsync, computeIfAbsentAsync, computeIfPresent, computeIfPresent, computeIfPresent, computeIfPresentAsync, computeIfPresentAsync, containsKey, get, getAll, getWithMetadata, merge, merge, merge, mergeAsync, mergeAsync, put, put, put, putAll, putAll, putAll, putAllAsync, putAllAsync, putAsync, putAsync, putIfAbsent, putIfAbsent, putIfAbsent, putIfAbsentAsync, putIfAbsentAsync, remove, remove, removeWithVersion, replace, replace, replace, replace, replace, replace, replaceAsync, replaceAsync, replaceAsync, replaceAsync, replaceWithVersion, replaceWithVersion, replaceWithVersion, replaceWithVersion, replaceWithVersionAsync, replaceWithVersionAsync, replaceWithVersionAsync, sizeMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface org.infinispan.commons.api.AsyncCache
computeAsync, computeAsync, computeIfAbsentAsync, computeIfAbsentAsync, computeIfPresentAsync, computeIfPresentAsync, mergeAsync, mergeAsync, putAsync, putAsync, putIfAbsentAsync, putIfAbsentAsync, replaceAsync, replaceAsync, replaceAsync, replaceAsyncMethods inherited from interface org.infinispan.commons.api.BasicCache
compute, compute, computeIfAbsent, computeIfAbsent, computeIfPresent, computeIfPresent, merge, merge, put, put, put, putIfAbsent, putIfAbsent, replace, replaceMethods inherited from interface java.util.concurrent.ConcurrentMap
compute, computeIfAbsent, computeIfPresent, forEach, getOrDefault, merge, putIfAbsent, replaceMethods inherited from interface org.infinispan.client.hotrod.impl.InternalRemoteCache
removeEntry, removeEntry, resolveStorageMethods inherited from interface org.infinispan.client.hotrod.RemoteCache
entrySet, execute, execute, getAll, getRemoteCacheManager, getWithMetadata, keySet, putAll, putAll, putAll, putAllAsync, putAllAsync, remove, remove, removeWithVersion, replace, replace, replace, replaceWithVersion, replaceWithVersion, replaceWithVersion, replaceWithVersion, replaceWithVersionAsync, replaceWithVersionAsync, replaceWithVersionAsync, retrieveEntries, retrieveEntries, stats, valuesMethods inherited from interface org.infinispan.commons.api.TransactionalCache
getTransactionManager
-
Field Details
-
delegate
-
-
Constructor Details
-
DelegatingRemoteCache
-
-
Method Details
-
putAllAsync
public CompletableFuture<Void> putAllAsync(Map<? extends K, ? extends V> data, long lifespan, TimeUnit lifespanUnit, long maxIdle, TimeUnit maxIdleUnit) Description copied from interface:RemoteCacheAdds or overrides each specified entry in the remote cache. This operation provides better performance than calling put() for each entry.- Specified by:
putAllAsyncin interfaceAsyncCache<K,V> - Specified by:
putAllAsyncin interfaceRemoteCache<K,V> - Specified by:
putAllAsyncin classRemoteCacheSupport<K,V> - Parameters:
data- to storelifespan- lifespan of entrylifespanUnit- time unit for lifespanmaxIdle- the maximum amount of time this key is allowed to be idle for before it is considered as expiredmaxIdleUnit- time unit for max idle time- Returns:
- a future containing a void return type
- See Also:
-
clearAsync
Description copied from interface:AsyncCacheAsynchronous version ofMap.clear(). This method does not block on remote calls, even if your cache mode is synchronous.- Specified by:
clearAsyncin interfaceAsyncCache<K,V> - Returns:
- a future containing a void return type
-
clientStatistics
Description copied from interface:RemoteCacheReturns client-side statistics for this cache.- Specified by:
clientStatisticsin interfaceInternalRemoteCache<K,V> - Specified by:
clientStatisticsin interfaceRemoteCache<K,V>
-
serverStatistics
Description copied from interface:RemoteCacheReturns server-side statistics for this cache.- Specified by:
serverStatisticsin interfaceRemoteCache<K,V>
-
serverStatisticsAsync
Description copied from interface:RemoteCacheReturns server-side statistics for this cache.- Specified by:
serverStatisticsAsyncin interfaceRemoteCache<K,V>
-
withFlags
Description copied from interface:RemoteCacheApplies one or moreFlags to the scope of a single invocation. See theFlagenumeration to for information on available flags. Sample usage:remoteCache.withFlags(Flag.FORCE_RETURN_VALUE).put("hello", "world");- Specified by:
withFlagsin interfaceInternalRemoteCache<K,V> - Specified by:
withFlagsin interfaceRemoteCache<K,V> - Returns:
- the current RemoteCache instance to continue running operations on.
-
getRemoteCacheContainer
Description copied from interface:RemoteCacheReturns theRemoteCacheContainerthat created this cache.- Specified by:
getRemoteCacheContainerin interfaceRemoteCache<K,V>
-
getAllAsync
Description copied from interface:AsyncCacheTODO This should be in AdvancedCache with getAll- Specified by:
getAllAsyncin interfaceAsyncCache<K,V> - Specified by:
getAllAsyncin classRemoteCacheSupport<K,V>
-
getProtocolVersion
Description copied from interface:RemoteCacheReturns the HotRod protocol version supported by this RemoteCache implementation- Specified by:
getProtocolVersionin interfaceRemoteCache<K,V>
-
addClientListener
Description copied from interface:RemoteCacheAdd a client listener to receive events that happen in the remote cache. The listener object must be annotated with @ClientListenerannotation.- Specified by:
addClientListenerin interfaceRemoteCache<K,V>
-
addClientListener
public void addClientListener(Object listener, Object[] filterFactoryParams, Object[] converterFactoryParams) Description copied from interface:RemoteCacheAdd a client listener to receive events that happen in the remote cache. The listener object must be annotated with @ClientListener annotation.- Specified by:
addClientListenerin interfaceRemoteCache<K,V>
-
removeClientListener
Description copied from interface:RemoteCacheRemove a previously added client listener. If the listener was not added before, this operation is a no-op.- Specified by:
removeClientListenerin interfaceRemoteCache<K,V>
-
addNearCacheListener
Description copied from interface:InternalRemoteCacheAdd a client listener to handle near cache with bloom filter optimization The listener object must be annotated with @ClientListenerannotation.- Specified by:
addNearCacheListenerin interfaceInternalRemoteCache<K,V>
-
getListeners
Description copied from interface:RemoteCacheReturns a set with all the listeners registered by this client for the given cache.- Specified by:
getListenersin interfaceRemoteCache<K,V>
-
execute
Description copied from interface:RemoteCacheExecutes a remote task passing a set of named parameters- Specified by:
executein interfaceRemoteCache<K,V>
-
getCacheTopologyInfo
Description copied from interface:RemoteCacheReturnsCacheTopologyInfofor this cache.- Specified by:
getCacheTopologyInfoin interfaceRemoteCache<K,V>
-
streaming
Description copied from interface:RemoteCacheReturns a cache where values are manipulated usingInputStreamandOutputStream- Specified by:
streamingin interfaceRemoteCache<K,V>
-
withDataFormat
Description copied from interface:RemoteCacheReturn a new instance ofRemoteCacheusing the suppliedDataFormat.- Specified by:
withDataFormatin interfaceInternalRemoteCache<K,V> - Specified by:
withDataFormatin interfaceRemoteCache<K,V>
-
getDataFormat
Description copied from interface:RemoteCacheReturn the currentlyDataFormatbeing used.- Specified by:
getDataFormatin interfaceRemoteCache<K,V>
-
isTransactional
public boolean isTransactional()- Specified by:
isTransactionalin interfaceRemoteCache<K,V> - Returns:
trueif the cache can participate in a transaction,falseotherwise.
-
putIfAbsentAsync
public CompletableFuture<V> putIfAbsentAsync(K key, V value, long lifespan, TimeUnit lifespanUnit, long maxIdle, TimeUnit maxIdleUnit) Description copied from interface:AsyncCacheAsynchronous version ofBasicCache.putIfAbsent(Object, Object, long, TimeUnit, long, TimeUnit). This method does not block on remote calls, even if your cache mode is synchronous.- Specified by:
putIfAbsentAsyncin interfaceAsyncCache<K,V> - Specified by:
putIfAbsentAsyncin classRemoteCacheSupport<K,V> - Parameters:
key- key to usevalue- value to storelifespan- lifespan of entrylifespanUnit- time unit for lifespanmaxIdle- the maximum amount of time this key is allowed to be idle for before it is considered as expiredmaxIdleUnit- time unit for max idle time- Returns:
- a future containing the old value replaced
-
replaceAsync
public CompletableFuture<Boolean> replaceAsync(K key, V oldValue, V newValue, long lifespan, TimeUnit lifespanUnit, long maxIdle, TimeUnit maxIdleUnit) Description copied from interface:AsyncCacheAsynchronous version ofBasicCache.replace(Object, Object, Object, long, TimeUnit, long, TimeUnit). This method does not block on remote calls, even if your cache mode is synchronous.- Specified by:
replaceAsyncin interfaceAsyncCache<K,V> - Specified by:
replaceAsyncin classRemoteCacheSupport<K,V> - Parameters:
key- key to removeoldValue- value to overwritenewValue- value to storelifespan- lifespan of entrylifespanUnit- time unit for lifespanmaxIdle- the maximum amount of time this key is allowed to be idle for before it is considered as expiredmaxIdleUnit- time unit for max idle time- Returns:
- a future containing a boolean, indicating whether the entry was replaced or not
-
replaceAsync
public CompletableFuture<V> replaceAsync(K key, V value, long lifespan, TimeUnit lifespanUnit, long maxIdle, TimeUnit maxIdleUnit) Description copied from interface:AsyncCacheAsynchronous version ofBasicCache.replace(Object, Object, long, TimeUnit, long, TimeUnit). This method does not block on remote calls, even if your cache mode is synchronous.- Specified by:
replaceAsyncin interfaceAsyncCache<K,V> - Specified by:
replaceAsyncin classRemoteCacheSupport<K,V> - Parameters:
key- key to removevalue- value to storelifespan- lifespan of entrylifespanUnit- time unit for lifespanmaxIdle- the maximum amount of time this key is allowed to be idle for before it is considered as expiredmaxIdleUnit- time unit for max idle time- Returns:
- a future containing the previous value overwritten
-
getAsync
Description copied from interface:AsyncCacheAsynchronous version ofMap.get(Object)that allows user code to retrieve the value associated with a key at a later stage, hence allowing multiple parallel get requests to be sent. Normally, when this method detects that the value is likely to be retrieved from from a remote entity, it will span a different thread in order to allow the asynchronous get call to return immediately. If the call will definitely resolve locally, for example when the cache is configured with LOCAL mode and no stores are configured, the get asynchronous call will act sequentially and will have no different toMap.get(Object).- Specified by:
getAsyncin interfaceAsyncCache<K,V> - Specified by:
getAsyncin classRemoteCacheSupport<K,V> - Parameters:
key- key to retrieve- Returns:
- a future that can be used to retrieve value associated with the
key when this is available. The actual value returned by the future
follows the same rules as
Map.get(Object)
-
getWithMetadataAsync
Description copied from interface:RemoteCacheAsynchronously returns theMetadataValueassociated to the supplied key param, or null if it doesn't exist.- Specified by:
getWithMetadataAsyncin interfaceRemoteCache<K,V> - Specified by:
getWithMetadataAsyncin classRemoteCacheSupport<K,V>
-
getWithMetadataAsync
public org.infinispan.client.hotrod.impl.operations.RetryAwareCompletionStage<MetadataValue<V>> getWithMetadataAsync(K key, SocketAddress preferredAddres) - Specified by:
getWithMetadataAsyncin interfaceInternalRemoteCache<K,V>
-
isEmpty
public boolean isEmpty() -
containsValue
- Specified by:
containsValuein interfaceMap<K,V>
-
keySet
Description copied from interface:RemoteCacheThis method is identical toRemoteCache.keySet()except that it will only return keys that map to the given segments. Note that these segments will be determined by the remote server. Thus you should be aware of how many segments it has configured and hashing algorithm it is using. If the segments and hashing algorithm are not the same this method may return unexpected keys.- Specified by:
keySetin interfaceRemoteCache<K,V> - Parameters:
segments- the segments of keys to return - null means all available- Returns:
- set containing keys that map to the given segments
- See Also:
-
values
Description copied from interface:RemoteCacheThis method is identical toRemoteCache.values()except that it will only return values that map to the given segments. Note that these segments will be determined by the remote server. Thus you should be aware of how many segments it has configured and hashing algorithm it is using. If the segments and hashing algorithm are not the same this method may return unexpected values.- Specified by:
valuesin interfaceRemoteCache<K,V> - Parameters:
segments- the segments of values to return - null means all available- Returns:
- collection containing values that map to the given segments
- See Also:
-
entrySet
Description copied from interface:RemoteCacheThis method is identical toRemoteCache.entrySet()except that it will only return entries that map to the given segments. Note that these segments will be determined by the remote server. Thus you should be aware of how many segments it has configured and hashing algorithm it is using. If the segments and hashing algorithm are not the same this method may return unexpected entries.- Specified by:
entrySetin interfaceRemoteCache<K,V> - Parameters:
segments- the segments of entries to return - null means all available- Returns:
- set containing entries that map to the given segments
- See Also:
-
containsKeyAsync
Description copied from interface:AsyncCacheAsynchronous version ofMap.containsKey(Object)- Specified by:
containsKeyAsyncin interfaceAsyncCache<K,V> - Specified by:
containsKeyAsyncin classRemoteCacheSupport<K,V> - Parameters:
key- key to retrieve- Returns:
- future containing true if the mapping exists.
-
putAsync
public CompletableFuture<V> putAsync(K key, V value, long lifespan, TimeUnit lifespanUnit, long maxIdle, TimeUnit maxIdleUnit) Description copied from interface:AsyncCacheAsynchronous version ofBasicCache.put(Object, Object, long, TimeUnit, long, TimeUnit). This method does not block on remote calls, even if your cache mode is synchronous.- Specified by:
putAsyncin interfaceAsyncCache<K,V> - Specified by:
putAsyncin classRemoteCacheSupport<K,V> - Parameters:
key- key to usevalue- value to storelifespan- lifespan of entrylifespanUnit- time unit for lifespanmaxIdle- the maximum amount of time this key is allowed to be idle for before it is considered as expiredmaxIdleUnit- time unit for max idle time- Returns:
- a future containing the old value replaced
-
replaceWithVersionAsync
public CompletableFuture<Boolean> replaceWithVersionAsync(K key, V newValue, long version, long lifespanSeconds, TimeUnit lifespanTimeUnit, long maxIdle, TimeUnit maxIdleTimeUnit) - Specified by:
replaceWithVersionAsyncin interfaceRemoteCache<K,V> - See Also:
-
retrieveEntries
public CloseableIterator<Map.Entry<Object,Object>> retrieveEntries(String filterConverterFactory, Object[] filterConverterParams, Set<Integer> segments, int batchSize) Description copied from interface:RemoteCacheRetrieve entries from the server.- Specified by:
retrieveEntriesin interfaceRemoteCache<K,V> - Parameters:
filterConverterFactory- Factory name for the KeyValueFilterConverter or null for no filtering.filterConverterParams- Parameters to the KeyValueFilterConvertersegments- The segments to iterate. If null all segments will be iterated. An empty set will filter out all entries.batchSize- The number of entries transferred from the server at a time.- Returns:
- Iterator for the entries
-
publishEntries
public <E> org.reactivestreams.Publisher<Map.Entry<K,E>> publishEntries(String filterConverterFactory, Object[] filterConverterParams, Set<Integer> segments, int batchSize) Description copied from interface:RemoteCachePublishes the entries from the server in a non blocking fashion.Any subscriber that subscribes to the returned Publisher must not block. It is therefore recommended to offload any blocking or long running operations to a different thread and not use the invoking one. Failure to do so may cause concurrent operations to stall.
- Specified by:
publishEntriesin interfaceRemoteCache<K,V> - Parameters:
filterConverterFactory- Factory name for the KeyValueFilterConverter or null for no filtering.filterConverterParams- Parameters to the KeyValueFilterConvertersegments- The segments to utilize. If null all segments will be utilized. An empty set will filter out all entries.batchSize- The number of entries transferred from the server at a time.- Returns:
- Publisher for the entries
-
retrieveEntriesByQuery
public CloseableIterator<Map.Entry<Object,Object>> retrieveEntriesByQuery(Query<?> filterQuery, Set<Integer> segments, int batchSize) Description copied from interface:RemoteCacheRetrieve entries from the server matching a query.- Specified by:
retrieveEntriesByQueryin interfaceRemoteCache<K,V> - Parameters:
filterQuery-Querysegments- The segments to iterate. If null all segments will be iterated. An empty set will filter out all entries.batchSize- The number of entries transferred from the server at a time.- Returns:
CloseableIterator
-
publishEntriesByQuery
public <E> org.reactivestreams.Publisher<Map.Entry<K,E>> publishEntriesByQuery(Query<?> filterQuery, Set<Integer> segments, int batchSize) Description copied from interface:RemoteCachePublish entries from the server matching a query.Any subscriber that subscribes to the returned Publisher must not block. It is therefore recommended to offload any blocking or long running operations to a different thread and not use the invoking one. Failure to do so may cause concurrent operations to stall.
- Specified by:
publishEntriesByQueryin interfaceRemoteCache<K,V> - Parameters:
filterQuery-Querysegments- The segments to utilize. If null all segments will be utilized. An empty set will filter out all entries.batchSize- The number of entries transferred from the server at a time.- Returns:
- Publisher containing matching entries
-
retrieveEntriesWithMetadata
public CloseableIterator<Map.Entry<Object,MetadataValue<Object>>> retrieveEntriesWithMetadata(Set<Integer> segments, int batchSize) Description copied from interface:RemoteCacheRetrieve entries with metadata information- Specified by:
retrieveEntriesWithMetadatain interfaceRemoteCache<K,V>
-
publishEntriesWithMetadata
public org.reactivestreams.Publisher<Map.Entry<K,MetadataValue<V>>> publishEntriesWithMetadata(Set<Integer> segments, int batchSize) Description copied from interface:RemoteCachePublish entries with metadata informationAny subscriber that subscribes to the returned Publisher must not block. It is therefore recommended to offload any blocking or long running operations to a different thread and not use the invoking one. Failure to do so may cause concurrent operations to stall.
- Specified by:
publishEntriesWithMetadatain interfaceRemoteCache<K,V> - Parameters:
segments- The segments to utilize. If null all segments will be utilized. An empty set will filter out all entries.batchSize- The number of entries transferred from the server at a time.- Returns:
- Publisher containing entries along with metadata
-
removeAsync
Description copied from interface:AsyncCacheAsynchronous version ofBasicCache.remove(Object). This method does not block on remote calls, even if your cache mode is synchronous.- Specified by:
removeAsyncin interfaceAsyncCache<K,V> - Specified by:
removeAsyncin classRemoteCacheSupport<K,V> - Parameters:
key- key to remove- Returns:
- a future containing the value removed
-
removeAsync
Description copied from interface:AsyncCacheAsynchronous version ofConcurrentMap.remove(Object, Object). This method does not block on remote calls, even if your cache mode is synchronous.- Specified by:
removeAsyncin interfaceAsyncCache<K,V> - Specified by:
removeAsyncin classRemoteCacheSupport<K,V> - Parameters:
key- key to removevalue- value to match on- Returns:
- a future containing a boolean, indicating whether the entry was removed or not
-
removeWithVersionAsync
- Specified by:
removeWithVersionAsyncin interfaceRemoteCache<K,V> - Specified by:
removeWithVersionAsyncin classRemoteCacheSupport<K,V> - See Also:
-
mergeAsync
public CompletableFuture<V> mergeAsync(K key, V value, BiFunction<? super V, ? super V, ? extends V> remappingFunction, long lifespan, TimeUnit lifespanUnit, long maxIdleTime, TimeUnit maxIdleTimeUnit) Description copied from interface:AsyncCacheAsynchronous version ofBasicCache.merge(Object, Object, BiFunction, long, TimeUnit, long, TimeUnit). This method does not block on remote calls, even if your cache mode is synchronous.- Specified by:
mergeAsyncin interfaceAsyncCache<K,V> - Specified by:
mergeAsyncin classRemoteCacheSupport<K,V>
-
computeAsync
public CompletableFuture<V> computeAsync(K key, BiFunction<? super K, ? super V, ? extends V> remappingFunction, long lifespan, TimeUnit lifespanUnit, long maxIdle, TimeUnit maxIdleUnit) Description copied from interface:AsyncCacheAsynchronous version ofBasicCache.compute(Object, BiFunction, long, TimeUnit, long, TimeUnit). This method does not block on remote calls, even if your cache mode is synchronous.- Specified by:
computeAsyncin interfaceAsyncCache<K,V> - Specified by:
computeAsyncin classRemoteCacheSupport<K,V>
-
computeIfAbsentAsync
public CompletableFuture<V> computeIfAbsentAsync(K key, Function<? super K, ? extends V> mappingFunction, long lifespan, TimeUnit lifespanUnit, long maxIdle, TimeUnit maxIdleUnit) Description copied from interface:AsyncCacheAsynchronous version ofBasicCache.computeIfAbsent(Object, Function, long, TimeUnit, long, TimeUnit). This method does not block on remote calls, even if your cache mode is synchronous.- Specified by:
computeIfAbsentAsyncin interfaceAsyncCache<K,V> - Specified by:
computeIfAbsentAsyncin classRemoteCacheSupport<K,V>
-
computeIfPresentAsync
public CompletableFuture<V> computeIfPresentAsync(K key, BiFunction<? super K, ? super V, ? extends V> remappingFunction, long lifespan, TimeUnit lifespanUnit, long maxIdle, TimeUnit maxIdleUnit) Description copied from interface:AsyncCacheAsynchronous version ofBasicCache.computeIfPresent(Object, BiFunction, long, TimeUnit, long, TimeUnit). This method does not block on remote calls, even if your cache mode is synchronous.- Specified by:
computeIfPresentAsyncin interfaceAsyncCache<K,V> - Specified by:
computeIfPresentAsyncin classRemoteCacheSupport<K,V>
-
replaceAll
- Specified by:
replaceAllin interfaceConcurrentMap<K,V> - Specified by:
replaceAllin interfaceMap<K,V> - Specified by:
replaceAllin classRemoteCacheSupport<K,V>
-
sizeAsync
Description copied from interface:AsyncCacheAsynchronous version ofMap.size(). This method does not block on remote calls, even if your cache mode is synchronous.- Specified by:
sizeAsyncin interfaceAsyncCache<K,V> - Specified by:
sizeAsyncin classRemoteCacheSupport<K,V> - Returns:
- a future containing the count of the cache
-
getName
Description copied from interface:BasicCacheRetrieves the name of the cache- Specified by:
getNamein interfaceBasicCache<K,V> - Returns:
- the name of the cache
-
getVersion
Description copied from interface:BasicCacheRetrieves the version of Infinispan- Specified by:
getVersionin interfaceBasicCache<K,V> - Returns:
- a version string
-
start
public void start()Description copied from interface:LifecycleInvoked on component start -
stop
public void stop()Description copied from interface:LifecycleInvoked on component stop -
keyIterator
- Specified by:
keyIteratorin interfaceInternalRemoteCache<K,V>
-
entryIterator
- Specified by:
entryIteratorin interfaceInternalRemoteCache<K,V>
-
hasForceReturnFlag
public boolean hasForceReturnFlag()- Specified by:
hasForceReturnFlagin interfaceInternalRemoteCache<K,V>
-
resolveStorage
public void resolveStorage(boolean objectStorage) - Specified by:
resolveStoragein interfaceInternalRemoteCache<K,V>
-
keyToBytes
- Specified by:
keyToBytesin interfaceInternalRemoteCache<K,V>
-
init
public void init(org.infinispan.client.hotrod.impl.operations.OperationsFactory operationsFactory, Configuration configuration, ObjectName jmxParent) - Specified by:
initin interfaceInternalRemoteCache<K,V>
-
init
public void init(org.infinispan.client.hotrod.impl.operations.OperationsFactory operationsFactory, Configuration configuration) - Specified by:
initin interfaceInternalRemoteCache<K,V>
-
getOperationsFactory
public org.infinispan.client.hotrod.impl.operations.OperationsFactory getOperationsFactory()- Specified by:
getOperationsFactoryin interfaceInternalRemoteCache<K,V>
-
isObjectStorage
public boolean isObjectStorage()- Specified by:
isObjectStoragein interfaceInternalRemoteCache<K,V>
-
ping
- Specified by:
pingin interfaceInternalRemoteCache<K,V>
-
updateBloomFilter
Description copied from interface:InternalRemoteCacheSends the current bloom filter to the listener node where a near cache listener is installed. If this cache does not have near caching this will return an already completed stage.- Specified by:
updateBloomFilterin interfaceInternalRemoteCache<K,V> - Returns:
- stage that when complete the filter was sent to the listener node
-