public class PutKeyValueCommand extends AbstractDataWriteCommand implements MetadataAwareCommand
BasicCache.put(Object, Object)| Modifier and Type | Field and Description |
|---|---|
static byte |
COMMAND_ID |
commandInvocationIdkeyflags| Constructor and Description |
|---|
PutKeyValueCommand() |
PutKeyValueCommand(Object key,
Object value,
boolean putIfAbsent,
CacheNotifier notifier,
Metadata metadata,
Set<Flag> flags,
Equivalence valueEquivalence,
CommandInvocationId commandInvocationId) |
| Modifier and Type | Method and Description |
|---|---|
Object |
acceptVisitor(InvocationContext ctx,
Visitor visitor)
Accept a visitor, and return the result of accepting this visitor.
|
boolean |
alwaysReadsExistingValues() |
boolean |
equals(Object o) |
byte |
getCommandId()
Used by marshallers to convert this command into an id for streaming.
|
Metadata |
getMetadata()
Get metadata of this command.
|
Object |
getValue() |
ValueMatcher |
getValueMatcher() |
int |
hashCode() |
void |
init(CacheNotifier notifier,
Configuration cfg) |
boolean |
isConditional()
Certain commands only work based on a certain condition or state of the cache.
|
boolean |
isPutIfAbsent() |
boolean |
isSuccessful()
Some commands may want to provide information on whether the command was successful or not.
|
Object |
perform(InvocationContext ctx)
Performs the primary function of the command.
|
void |
readFrom(ObjectInput input)
Reads this instance from the stream written by
ReplicableCommand.writeTo(ObjectOutput). |
boolean |
readsExistingValues() |
void |
setMetadata(Metadata metadata)
Sets metadata for this command.
|
void |
setPutIfAbsent(boolean putIfAbsent) |
void |
setValue(Object value) |
void |
setValueMatcher(ValueMatcher valueMatcher) |
String |
toString() |
void |
updateStatusFromRemoteResponse(Object remoteResponse)
Used for conditional commands, to update the status of the command on the originator
based on the result of its execution on the primary owner.
|
void |
writeTo(ObjectOutput output)
Writes this instance to the
ObjectOutput. |
canBlock, getAffectedKeys, getKeyLockOwner, getKeysToLock, hasSkipLocking, hasZeroLockAcquisition, isReturnValueExpectedgetKey, ignoreCommandOnStatus, setKey, shouldInvokegetTopologyId, setTopologyIdgetFlags, setFlagsclone, finalize, getClass, notify, notifyAll, wait, wait, waitisWriteOnlyignoreCommandOnStatus, shouldInvokegetTopologyId, setTopologyIdgetParameters, setParametersaddFlag, addFlags, getFlags, hasFlag, setFlags, setFlagsgetKeypublic static final byte COMMAND_ID
public PutKeyValueCommand()
public PutKeyValueCommand(Object key, Object value, boolean putIfAbsent, CacheNotifier notifier, Metadata metadata, Set<Flag> flags, Equivalence valueEquivalence, CommandInvocationId commandInvocationId)
public void init(CacheNotifier notifier, Configuration cfg)
public Object getValue()
public void setValue(Object value)
public Object acceptVisitor(InvocationContext ctx, Visitor visitor) throws Throwable
VisitableCommandacceptVisitor in interface VisitableCommandctx - invocation contextvisitor - visitor to acceptThrowable - in the event of problemspublic boolean readsExistingValues()
readsExistingValues in interface VisitableCommandtrue if the command needs to read the previous values of the keys it acts on.public boolean alwaysReadsExistingValues()
alwaysReadsExistingValues in interface VisitableCommandtrue if the command needs to read the previous values even on the backup owners.
In transactional caches, this refers to all the owners except the originator.public Object perform(InvocationContext ctx) throws Throwable
ReplicableCommandperform in interface ReplicableCommandctx - invocation contextThrowable - in the event of problems.public byte getCommandId()
ReplicableCommandgetCommandId in interface ReplicableCommandpublic void writeTo(ObjectOutput output) throws IOException
ReplicableCommandObjectOutput.writeTo in interface ReplicableCommandoutput - the stream.IOException - if an error occurred during the I/O.public void readFrom(ObjectInput input) throws IOException, ClassNotFoundException
ReplicableCommandReplicableCommand.writeTo(ObjectOutput).readFrom in interface ReplicableCommandinput - the stream to read.IOException - if an error occurred during the I/O.ClassNotFoundException - if it tries to load an undefined class.public Metadata getMetadata()
MetadataAwareCommandgetMetadata in interface MetadataAwareCommandgetMetadata in class AbstractFlagAffectedCommandpublic void setMetadata(Metadata metadata)
MetadataAwareCommandsetMetadata in interface MetadataAwareCommandsetMetadata in class AbstractFlagAffectedCommandpublic boolean isPutIfAbsent()
public void setPutIfAbsent(boolean putIfAbsent)
public boolean equals(Object o)
equals in class AbstractDataCommandpublic int hashCode()
hashCode in class AbstractDataCommandpublic String toString()
toString in class AbstractDataCommandpublic boolean isSuccessful()
WriteCommandisSuccessful in interface WriteCommandpublic boolean isConditional()
WriteCommandConcurrentMap.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 WriteCommandpublic ValueMatcher getValueMatcher()
getValueMatcher in interface WriteCommandpublic void setValueMatcher(ValueMatcher valueMatcher)
setValueMatcher in interface WriteCommandvalueMatcher - The new value matching policy.public void updateStatusFromRemoteResponse(Object remoteResponse)
WriteCommandupdateStatusFromRemoteResponse in interface WriteCommandCopyright © 2024 JBoss, a division of Red Hat. All rights reserved.