public class InvalidateCommand extends AbstractTopologyAffectedCommand implements WriteCommand, RemoteLockCommand
VisitableCommand.LoadType
Modifier and Type | Field and Description |
---|---|
static int |
COMMAND_ID |
protected CommandInvocationId |
commandInvocationId |
protected Object[] |
keys |
Constructor and Description |
---|
InvalidateCommand() |
InvalidateCommand(long flagsBitSet,
Collection<Object> keys,
CommandInvocationId commandInvocationId) |
InvalidateCommand(long flagsBitSet,
CommandInvocationId commandInvocationId,
Object... keys) |
Modifier and Type | Method and Description |
---|---|
Object |
acceptVisitor(InvocationContext ctx,
Visitor visitor)
Accept a visitor, and return the result of accepting this visitor.
|
boolean |
equals(Object obj) |
void |
fail()
Make subsequent invocations of
WriteCommand.isSuccessful() return false . |
Collection<?> |
getAffectedKeys() |
byte |
getCommandId()
Used by marshallers to convert this command into an id for streaming.
|
CommandInvocationId |
getCommandInvocationId() |
PrivateMetadata |
getInternalMetadata(Object key) |
Object |
getKeyLockOwner()
It returns the lock owner of the key.
|
Object[] |
getKeys() |
Collection<?> |
getKeysToLock()
It returns a
Collection with the keys to be lock. |
ValueMatcher |
getValueMatcher() |
int |
hashCode() |
boolean |
hasSkipLocking()
It checks if this command should acquire locks.
|
boolean |
hasZeroLockAcquisition() |
boolean |
isConditional()
Certain commands only work based on a certain condition or state of the cache.
|
boolean |
isReturnValueExpected()
If true, a return value will be provided when performed remotely.
|
boolean |
isSuccessful()
Some commands may want to provide information on whether the command was successful or not.
|
VisitableCommand.LoadType |
loadType() |
void |
readFrom(ObjectInput input)
Reads this instance from the stream written by
ReplicableCommand.writeTo(ObjectOutput) . |
void |
setInternalMetadata(Object key,
PrivateMetadata internalMetadata) |
void |
setValueMatcher(ValueMatcher valueMatcher) |
String |
toString() |
void |
writeTo(ObjectOutput output)
Writes this instance to the
ObjectOutput . |
getTopologyId, setTopologyId
getFlagsBitSet, hasSameFlags, printFlags, setFlagsBitSet
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
isWriteOnly, updateStatusFromRemoteResponse
addFlag, addFlags, addFlags, getFlags, getFlagsBitSet, hasAllFlags, hasAnyFlag, hasFlag, setFlags, setFlagsBitSet
init
canBlock, invoke, invokeAsync, setOrigin
getTopologyId, setTopologyId
public static final int COMMAND_ID
protected Object[] keys
protected CommandInvocationId commandInvocationId
public InvalidateCommand()
public InvalidateCommand(long flagsBitSet, CommandInvocationId commandInvocationId, Object... keys)
public InvalidateCommand(long flagsBitSet, Collection<Object> keys, CommandInvocationId commandInvocationId)
public byte getCommandId()
ReplicableCommand
getCommandId
in interface ReplicableCommand
public boolean isReturnValueExpected()
ReplicableCommand
ResponseGenerator
may choose to simply return null to save on marshalling
costs.isReturnValueExpected
in interface ReplicableCommand
public void writeTo(ObjectOutput output) throws IOException
ReplicableCommand
ObjectOutput
.writeTo
in interface ReplicableCommand
output
- the stream.IOException
- if an error occurred during the I/O.public void readFrom(ObjectInput input) throws IOException, ClassNotFoundException
ReplicableCommand
ReplicableCommand.writeTo(ObjectOutput)
.readFrom
in interface ReplicableCommand
input
- the stream to read.IOException
- if an error occurred during the I/O.ClassNotFoundException
- if it tries to load an undefined class.public Object acceptVisitor(InvocationContext ctx, Visitor visitor) throws Throwable
VisitableCommand
acceptVisitor
in interface VisitableCommand
ctx
- invocation contextvisitor
- visitor to acceptThrowable
- in the event of problemspublic Object[] getKeys()
public boolean isSuccessful()
WriteCommand
isSuccessful
in interface ReplicableCommand
isSuccessful
in interface WriteCommand
public boolean isConditional()
WriteCommand
ConcurrentMap.putIfAbsent(Object, Object)
only does anything if a condition is met, i.e., the entry in
question is not already present. This method tests whether the command in question is conditional or not.isConditional
in interface WriteCommand
public ValueMatcher getValueMatcher()
getValueMatcher
in interface WriteCommand
public void setValueMatcher(ValueMatcher valueMatcher)
setValueMatcher
in interface WriteCommand
valueMatcher
- The new value matching policy.public Collection<?> getAffectedKeys()
getAffectedKeys
in interface WriteCommand
public void fail()
WriteCommand
WriteCommand.isSuccessful()
return false
.fail
in interface WriteCommand
public CommandInvocationId getCommandInvocationId()
getCommandInvocationId
in interface WriteCommand
CommandInvocationId
associated to the command.public PrivateMetadata getInternalMetadata(Object key)
getInternalMetadata
in interface WriteCommand
public void setInternalMetadata(Object key, PrivateMetadata internalMetadata)
setInternalMetadata
in interface WriteCommand
public Collection<?> getKeysToLock()
RemoteLockCommand
Collection
with the keys to be lock.
It may return an empty collection if no keys needs to be locked independently of the return value of RemoteLockCommand.hasSkipLocking()
. It may contains duplicated keys and null
is not a valid return value.
getKeysToLock
in interface RemoteLockCommand
Collection
of keys to lock.public Object getKeyLockOwner()
RemoteLockCommand
Usually, in transaction caches it is the GlobalTransaction
and in
non-transactional caches the CommandInvocationId
.
getKeyLockOwner
in interface RemoteLockCommand
public boolean hasZeroLockAcquisition()
hasZeroLockAcquisition
in interface RemoteLockCommand
public boolean hasSkipLocking()
RemoteLockCommand
hasSkipLocking
in interface RemoteLockCommand
true
if locks should be acquired for the keys in RemoteLockCommand.getKeysToLock()
.public VisitableCommand.LoadType loadType()
loadType
in interface VisitableCommand
Copyright © 2021 JBoss by Red Hat. All rights reserved.