Class TxInvalidationInterceptor
java.lang.Object
org.infinispan.interceptors.BaseAsyncInterceptor
org.infinispan.interceptors.DDAsyncInterceptor
org.infinispan.interceptors.impl.BaseRpcInterceptor
org.infinispan.hibernate.cache.commons.access.BaseInvalidationInterceptor
org.infinispan.hibernate.cache.commons.access.TxInvalidationInterceptor
- All Implemented Interfaces:
org.infinispan.commands.Visitor,org.infinispan.interceptors.AsyncInterceptor,org.infinispan.jmx.JmxStatisticsExposer
@MBean(objectName="Invalidation",
description="Component responsible for invalidating entries on remote caches when entries are written to locally.")
public class TxInvalidationInterceptor
extends BaseInvalidationInterceptor
This interceptor acts as a replacement to the replication interceptor when the CacheImpl is configured with
ClusteredSyncMode as INVALIDATE.
The idea is that rather than replicating changes to all caches in a cluster when write methods are called, simply
broadcast an
InvalidateCommand on the remote caches containing all keys modified. This allows the remote
cache to look up the value in a shared cache loader which would have been updated with the changes.- Since:
- 4.0
- Author:
- Manik Surtani, Galder ZamarreƱo, Mircea.Markus@jboss.com
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionstatic class -
Field Summary
Fields inherited from class org.infinispan.hibernate.cache.commons.access.BaseInvalidationInterceptor
cache, cacheName, commandsFactory, distributionManager, statisticsEnabled, syncRpcOptionsFields inherited from class org.infinispan.interceptors.impl.BaseRpcInterceptor
componentRegistry, defaultSynchronous, rpcManagerFields inherited from class org.infinispan.interceptors.BaseAsyncInterceptor
cacheConfiguration -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionprotected org.infinispan.util.logging.LoggetLog()visitClearCommand(org.infinispan.context.InvocationContext ctx, org.infinispan.commands.write.ClearCommand command) visitCommitCommand(org.infinispan.context.impl.TxInvocationContext ctx, org.infinispan.commands.tx.CommitCommand command) visitLockControlCommand(org.infinispan.context.impl.TxInvocationContext ctx, org.infinispan.commands.control.LockControlCommand command) visitPrepareCommand(org.infinispan.context.impl.TxInvocationContext ctx, org.infinispan.commands.tx.PrepareCommand command) visitPutKeyValueCommand(org.infinispan.context.InvocationContext ctx, org.infinispan.commands.write.PutKeyValueCommand command) visitPutMapCommand(org.infinispan.context.InvocationContext ctx, org.infinispan.commands.write.PutMapCommand command) visitRemoveCommand(org.infinispan.context.InvocationContext ctx, org.infinispan.commands.write.RemoveCommand command) visitReplaceCommand(org.infinispan.context.InvocationContext ctx, org.infinispan.commands.write.ReplaceCommand command) Methods inherited from class org.infinispan.hibernate.cache.commons.access.BaseInvalidationInterceptor
getInvalidations, getMembers, getStatisticsEnabled, incrementInvalidations, isPutForExternalRead, resetStatistics, setStatisticsEnabledMethods inherited from class org.infinispan.interceptors.impl.BaseRpcInterceptor
init, isLocalModeForced, isSynchronous, shouldInvokeRemoteTxCommand, shouldLoad, transactionRemotelyPreparedMethods inherited from class org.infinispan.interceptors.DDAsyncInterceptor
handleDefault, visitCommand, visitComputeCommand, visitComputeIfAbsentCommand, visitEntrySetCommand, visitEvictCommand, visitGetAllCommand, visitGetCacheEntryCommand, visitGetKeyValueCommand, visitInvalidateCommand, visitInvalidateL1Command, visitIracPutKeyValueCommand, visitKeySetCommand, visitReadOnlyKeyCommand, visitReadOnlyManyCommand, visitReadWriteKeyCommand, visitReadWriteKeyValueCommand, visitReadWriteManyCommand, visitReadWriteManyEntriesCommand, visitRollbackCommand, visitSizeCommand, visitTouchCommand, visitUnknownCommand, visitWriteOnlyKeyCommand, visitWriteOnlyKeyValueCommand, visitWriteOnlyManyCommand, visitWriteOnlyManyEntriesCommandMethods inherited from class org.infinispan.interceptors.BaseAsyncInterceptor
asyncInvokeNext, asyncInvokeNext, asyncInvokeNext, asyncValue, delayedNull, delayedValue, delayedValue, invokeNext, invokeNextAndExceptionally, invokeNextAndFinally, invokeNextAndHandle, invokeNextThenAccept, invokeNextThenApply, isSuccessfullyDone, makeStage, setNextInterceptor, valueOrExceptionMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface org.infinispan.commands.Visitor
visitRemoveExpiredCommand
-
Constructor Details
-
TxInvalidationInterceptor
public TxInvalidationInterceptor()
-
-
Method Details
-
visitPutKeyValueCommand
public Object visitPutKeyValueCommand(org.infinispan.context.InvocationContext ctx, org.infinispan.commands.write.PutKeyValueCommand command) - Specified by:
visitPutKeyValueCommandin interfaceorg.infinispan.commands.Visitor- Overrides:
visitPutKeyValueCommandin classorg.infinispan.interceptors.DDAsyncInterceptor
-
visitReplaceCommand
public Object visitReplaceCommand(org.infinispan.context.InvocationContext ctx, org.infinispan.commands.write.ReplaceCommand command) - Specified by:
visitReplaceCommandin interfaceorg.infinispan.commands.Visitor- Overrides:
visitReplaceCommandin classorg.infinispan.interceptors.DDAsyncInterceptor
-
visitRemoveCommand
public Object visitRemoveCommand(org.infinispan.context.InvocationContext ctx, org.infinispan.commands.write.RemoveCommand command) - Specified by:
visitRemoveCommandin interfaceorg.infinispan.commands.Visitor- Overrides:
visitRemoveCommandin classorg.infinispan.interceptors.DDAsyncInterceptor
-
visitClearCommand
public Object visitClearCommand(org.infinispan.context.InvocationContext ctx, org.infinispan.commands.write.ClearCommand command) - Specified by:
visitClearCommandin interfaceorg.infinispan.commands.Visitor- Overrides:
visitClearCommandin classorg.infinispan.interceptors.DDAsyncInterceptor
-
visitPutMapCommand
public Object visitPutMapCommand(org.infinispan.context.InvocationContext ctx, org.infinispan.commands.write.PutMapCommand command) - Specified by:
visitPutMapCommandin interfaceorg.infinispan.commands.Visitor- Overrides:
visitPutMapCommandin classorg.infinispan.interceptors.DDAsyncInterceptor
-
visitPrepareCommand
public Object visitPrepareCommand(org.infinispan.context.impl.TxInvocationContext ctx, org.infinispan.commands.tx.PrepareCommand command) - Specified by:
visitPrepareCommandin interfaceorg.infinispan.commands.Visitor- Overrides:
visitPrepareCommandin classorg.infinispan.interceptors.DDAsyncInterceptor
-
visitCommitCommand
public Object visitCommitCommand(org.infinispan.context.impl.TxInvocationContext ctx, org.infinispan.commands.tx.CommitCommand command) throws Throwable - Specified by:
visitCommitCommandin interfaceorg.infinispan.commands.Visitor- Overrides:
visitCommitCommandin classorg.infinispan.interceptors.DDAsyncInterceptor- Throws:
Throwable
-
visitLockControlCommand
public Object visitLockControlCommand(org.infinispan.context.impl.TxInvocationContext ctx, org.infinispan.commands.control.LockControlCommand command) - Specified by:
visitLockControlCommandin interfaceorg.infinispan.commands.Visitor- Overrides:
visitLockControlCommandin classorg.infinispan.interceptors.DDAsyncInterceptor
-
getLog
protected org.infinispan.util.logging.Log getLog()- Specified by:
getLogin classorg.infinispan.interceptors.impl.BaseRpcInterceptor
-