Class VersionedDistributionInterceptor
- java.lang.Object
-
- org.infinispan.interceptors.BaseAsyncInterceptor
-
- org.infinispan.interceptors.DDAsyncInterceptor
-
- org.infinispan.interceptors.impl.BaseRpcInterceptor
-
- org.infinispan.interceptors.impl.ClusteringInterceptor
-
- org.infinispan.interceptors.distribution.BaseDistributionInterceptor
-
- org.infinispan.interceptors.distribution.TxDistributionInterceptor
-
- org.infinispan.interceptors.distribution.VersionedDistributionInterceptor
-
- All Implemented Interfaces:
org.infinispan.commands.Visitor
,AsyncInterceptor
- Direct Known Subclasses:
TotalOrderVersionedDistributionInterceptor
public class VersionedDistributionInterceptor extends TxDistributionInterceptor
A version of theTxDistributionInterceptor
that adds logic to handling prepares when entries are versioned.- Author:
- Manik Surtani, Dan Berindei
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from class org.infinispan.interceptors.distribution.BaseDistributionInterceptor
BaseDistributionInterceptor.ReadManyCommandHelper<C extends org.infinispan.commands.VisitableCommand>, BaseDistributionInterceptor.ReadOnlyManyHelper
-
-
Field Summary
-
Fields inherited from class org.infinispan.interceptors.distribution.BaseDistributionInterceptor
expirationManager, isL1Enabled, isReplicated, keyPartitioner, rvrl, timeService
-
Fields inherited from class org.infinispan.interceptors.impl.ClusteringInterceptor
cf, dataContainer, distributionManager, entryFactory, lockManager
-
Fields inherited from class org.infinispan.interceptors.impl.BaseRpcInterceptor
componentRegistry, defaultSynchronous, rpcManager
-
Fields inherited from class org.infinispan.interceptors.BaseAsyncInterceptor
cacheConfiguration
-
-
Constructor Summary
Constructors Constructor Description VersionedDistributionInterceptor()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected org.infinispan.util.logging.Log
getLog()
protected java.util.concurrent.CompletionStage<java.lang.Object>
prepareOnAffectedNodes(org.infinispan.context.impl.TxInvocationContext<?> ctx, org.infinispan.commands.tx.PrepareCommand command, java.util.Collection<Address> recipients)
protected java.lang.Object[]
unwrapFunctionalManyResultOnOrigin(InvocationContext ctx, java.util.List<java.lang.Object> keys, java.lang.Object responseValue)
protected java.lang.Object
unwrapFunctionalResultOnOrigin(InvocationContext ctx, java.lang.Object key, java.lang.Object responseValue)
protected java.lang.Object
wrapFunctionalManyResultOnNonOrigin(InvocationContext ctx, java.util.Collection<?> keys, java.lang.Object[] values)
protected java.lang.Object
wrapFunctionalResultOnNonOriginOnReturn(java.lang.Object rv, CacheEntry entry)
protected void
wrapRemoteEntry(InvocationContext ctx, java.lang.Object key, CacheEntry ice, boolean isWrite)
-
Methods inherited from class org.infinispan.interceptors.distribution.TxDistributionInterceptor
checkTxCommandResponses, configure, handleRemotelyRetrievedKeys, handleTxFunctionalCommand, handleTxWriteManyCommand, handleTxWriteManyEntriesCommand, remoteGetSingleKey, remoteReadOnlyCommand, visitCommitCommand, visitComputeCommand, visitComputeIfAbsentCommand, visitLockControlCommand, visitPrepareCommand, visitPutKeyValueCommand, visitPutMapCommand, visitReadOnlyManyCommand, visitReadWriteKeyCommand, visitReadWriteKeyValueCommand, visitReadWriteManyCommand, visitReadWriteManyEntriesCommand, visitRemoveCommand, visitRemoveExpiredCommand, visitReplaceCommand, visitRollbackCommand, visitWriteOnlyKeyCommand, visitWriteOnlyKeyValueCommand, visitWriteOnlyManyCommand, visitWriteOnlyManyEntriesCommand
-
Methods inherited from class org.infinispan.interceptors.distribution.BaseDistributionInterceptor
checkTopologyId, handleFunctionalReadManyCommand, handleNonTxWriteCommand, invokeRemotely, invokeRemoveExpiredCommand, readNeedsRemoteValue, remoteGetMany, retrieveDistributionInfo, visitClearCommand, visitGetAllCommand, visitGetCacheEntryCommand, visitGetKeysInGroupCommand, visitGetKeyValueCommand, visitReadOnlyKeyCommand
-
Methods inherited from class org.infinispan.interceptors.impl.ClusteringInterceptor
getSuccessfulResponseOrFail, unexpected
-
Methods inherited from class org.infinispan.interceptors.impl.BaseRpcInterceptor
init, isLocalModeForced, isSynchronous, shouldInvokeRemoteTxCommand, shouldTotalOrderRollbackBeInvokedRemotely, totalOrderPrepare, totalOrderTxCommit, totalOrderTxRollback, transactionRemotelyPrepared
-
Methods inherited from class org.infinispan.interceptors.DDAsyncInterceptor
handleDefault, visitCommand, visitEntrySetCommand, visitEvictCommand, visitInvalidateCommand, visitInvalidateL1Command, visitKeySetCommand, visitSizeCommand, visitUnknownCommand
-
Methods inherited from class org.infinispan.interceptors.BaseAsyncInterceptor
asyncInvokeNext, asyncInvokeNext, asyncInvokeNext, asyncValue, delayedNull, delayedValue, delayedValue, invokeNext, invokeNextAndExceptionally, invokeNextAndFinally, invokeNextAndHandle, invokeNextThenAccept, invokeNextThenApply, isSuccessfullyDone, makeStage, setNextInterceptor, valueOrException
-
-
-
-
Method Detail
-
getLog
protected org.infinispan.util.logging.Log getLog()
- Overrides:
getLog
in classBaseDistributionInterceptor
-
wrapRemoteEntry
protected void wrapRemoteEntry(InvocationContext ctx, java.lang.Object key, CacheEntry ice, boolean isWrite)
- Overrides:
wrapRemoteEntry
in classBaseDistributionInterceptor
-
wrapFunctionalResultOnNonOriginOnReturn
protected java.lang.Object wrapFunctionalResultOnNonOriginOnReturn(java.lang.Object rv, CacheEntry entry)
- Overrides:
wrapFunctionalResultOnNonOriginOnReturn
in classBaseDistributionInterceptor
-
wrapFunctionalManyResultOnNonOrigin
protected java.lang.Object wrapFunctionalManyResultOnNonOrigin(InvocationContext ctx, java.util.Collection<?> keys, java.lang.Object[] values)
- Overrides:
wrapFunctionalManyResultOnNonOrigin
in classBaseDistributionInterceptor
-
unwrapFunctionalManyResultOnOrigin
protected java.lang.Object[] unwrapFunctionalManyResultOnOrigin(InvocationContext ctx, java.util.List<java.lang.Object> keys, java.lang.Object responseValue)
- Overrides:
unwrapFunctionalManyResultOnOrigin
in classBaseDistributionInterceptor
-
unwrapFunctionalResultOnOrigin
protected java.lang.Object unwrapFunctionalResultOnOrigin(InvocationContext ctx, java.lang.Object key, java.lang.Object responseValue)
- Overrides:
unwrapFunctionalResultOnOrigin
in classBaseDistributionInterceptor
-
prepareOnAffectedNodes
protected java.util.concurrent.CompletionStage<java.lang.Object> prepareOnAffectedNodes(org.infinispan.context.impl.TxInvocationContext<?> ctx, org.infinispan.commands.tx.PrepareCommand command, java.util.Collection<Address> recipients)
- Overrides:
prepareOnAffectedNodes
in classTxDistributionInterceptor
-
-