public class PutKeyValueCommand extends AbstractDataWriteCommand implements MetadataAwareCommand
BasicCache.put(Object, Object)
Modifier and Type | Field and Description |
---|---|
static byte |
COMMAND_ID |
key
flags
Constructor and Description |
---|
PutKeyValueCommand() |
PutKeyValueCommand(Object key,
Object value,
boolean putIfAbsent,
CacheNotifier notifier,
Metadata metadata,
Set<Flag> flags) |
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 o) |
byte |
getCommandId()
Used by marshallers to convert this command into an id for streaming.
|
Metadata |
getMetadata()
Get metadata of this command.
|
Object[] |
getParameters()
Used by marshallers to stream this command across a network
|
Object |
getValue() |
int |
hashCode() |
void |
init(CacheNotifier notifier) |
boolean |
isConditional()
Certain commands only work based on a certain condition or state of the cache.
|
boolean |
isIgnorePreviousValue()
Only relevant for conditional commands.
|
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 |
setIgnorePreviousValue(boolean ignorePreviousValue)
Only relevant for conditional commands.
|
void |
setMetadata(Metadata metadata)
Sets metadata for this command.
|
void |
setParameters(int commandId,
Object[] parameters)
Used by the
CommandsFactory to create a command from raw data read off a stream. |
void |
setPutIfAbsent(boolean putIfAbsent) |
void |
setValue(Object value) |
String |
toString() |
canBlock, getAffectedKeys, isReturnValueExpected
getKey, ignoreCommandOnStatus, setKey, shouldInvoke
getTopologyId, setTopologyId
getFlags, hasFlag, setFlags, setFlags
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
ignoreCommandOnStatus, shouldInvoke
getTopologyId, setTopologyId
getFlags, hasFlag, setFlags, setFlags
getKey
public static final byte COMMAND_ID
public void init(CacheNotifier notifier)
public Object getValue()
public void setValue(Object value)
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 perform(InvocationContext ctx) throws Throwable
ReplicableCommand
perform
in interface ReplicableCommand
ctx
- invocation contextThrowable
- in the event of problems.public byte getCommandId()
ReplicableCommand
getCommandId
in interface ReplicableCommand
public Object[] getParameters()
ReplicableCommand
getParameters
in interface ReplicableCommand
getParameters
in class AbstractDataCommand
public void setParameters(int commandId, Object[] parameters)
ReplicableCommand
CommandsFactory
to create a command from raw data read off a stream.setParameters
in interface ReplicableCommand
setParameters
in class AbstractDataCommand
commandId
- command id to set. This is usually unused but *could* be used in the event of a command having
multiple IDs, such as PutKeyValueCommand
.parameters
- object array of argspublic Metadata getMetadata()
MetadataAwareCommand
getMetadata
in interface MetadataAwareCommand
getMetadata
in class AbstractFlagAffectedCommand
public void setMetadata(Metadata metadata)
MetadataAwareCommand
setMetadata
in interface MetadataAwareCommand
setMetadata
in class AbstractFlagAffectedCommand
public boolean isPutIfAbsent()
public void setPutIfAbsent(boolean putIfAbsent)
public boolean equals(Object o)
equals
in class AbstractDataCommand
public int hashCode()
hashCode
in class AbstractDataCommand
public String toString()
toString
in class AbstractDataCommand
public boolean isSuccessful()
WriteCommand
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 boolean isIgnorePreviousValue()
WriteCommand
isIgnorePreviousValue
in interface WriteCommand
true
if the command isn't really conditional, because the previous value was already checked
- either on the originator (tx) or on the primary owner (non-tx).public void setIgnorePreviousValue(boolean ignorePreviousValue)
WriteCommand
setIgnorePreviousValue
in interface WriteCommand
ignorePreviousValue
- true
if the command isn't really conditional, because the previous value
was already checked - either on the originator (tx) or on the primary owner (non-tx).Copyright © 2013 JBoss, a division of Red Hat. All rights reserved.