org.infinispan.commands.write
Class PutKeyValueCommand
java.lang.Object
org.infinispan.commands.AbstractFlagAffectedCommand
org.infinispan.commands.read.AbstractDataCommand
org.infinispan.commands.write.AbstractDataWriteCommand
org.infinispan.commands.write.PutKeyValueCommand
- All Implemented Interfaces:
- DataCommand, FlagAffectedCommand, ReplicableCommand, VisitableCommand, DataWriteCommand, WriteCommand
- Direct Known Subclasses:
- VersionedPutKeyValueCommand
public class PutKeyValueCommand
- extends AbstractDataWriteCommand
Implements functionality defined by Map.put(Object, Object)
- Since:
- 4.0
- Author:
- Mircea.Markus@jboss.com
COMMAND_ID
public static final byte COMMAND_ID
- See Also:
- Constant Field Values
PutKeyValueCommand
public PutKeyValueCommand()
PutKeyValueCommand
public PutKeyValueCommand(Object key,
Object value,
boolean putIfAbsent,
CacheNotifier notifier,
long lifespanMillis,
long maxIdleTimeMillis,
Set<Flag> flags)
init
public void init(CacheNotifier notifier)
getValue
public Object getValue()
setValue
public void setValue(Object value)
acceptVisitor
public Object acceptVisitor(InvocationContext ctx,
Visitor visitor)
throws Throwable
- Description copied from interface:
VisitableCommand
- Accept a visitor, and return the result of accepting this visitor.
- Parameters:
ctx
- invocation contextvisitor
- visitor to accept
- Returns:
- arbitrary return value
- Throws:
Throwable
- in the event of problems
perform
public Object perform(InvocationContext ctx)
throws Throwable
- Description copied from interface:
ReplicableCommand
- Performs the primary function of the command. Please see specific implementation classes for details on what is
performed as well as return types. Important: this method will be invoked at the end of interceptors chain.
It should never be called directly from a custom interceptor.
- Parameters:
ctx
- invocation context
- Returns:
- arbitrary return value generated by performing this command
- Throws:
Throwable
- in the event of problems.
getCommandId
public byte getCommandId()
- Description copied from interface:
ReplicableCommand
- Used by marshallers to convert this command into an id for streaming.
- Returns:
- the method id of this command. This is compatible with pre-2.2.0 MethodCall ids.
getParameters
public Object[] getParameters()
- Description copied from interface:
ReplicableCommand
- Used by marshallers to stream this command across a network
- Specified by:
getParameters
in interface ReplicableCommand
- Specified by:
getParameters
in class AbstractDataCommand
- Returns:
- an object array of arguments, compatible with pre-2.2.0 MethodCall args.
setParameters
public void setParameters(int commandId,
Object[] parameters)
- Description copied from interface:
ReplicableCommand
- Used by the
CommandsFactory
to create a command from raw data read off a stream.
- Specified by:
setParameters
in interface ReplicableCommand
- Specified by:
setParameters
in class AbstractDataCommand
- Parameters:
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 args
isPutIfAbsent
public boolean isPutIfAbsent()
setPutIfAbsent
public void setPutIfAbsent(boolean putIfAbsent)
getLifespanMillis
public long getLifespanMillis()
getMaxIdleTimeMillis
public long getMaxIdleTimeMillis()
equals
public boolean equals(Object o)
- Overrides:
equals
in class AbstractDataCommand
hashCode
public int hashCode()
- Overrides:
hashCode
in class AbstractDataCommand
toString
public String toString()
- Overrides:
toString
in class AbstractDataCommand
isSuccessful
public boolean isSuccessful()
- Description copied from interface:
WriteCommand
- Some commands may want to provide information on whether the command was successful or not. This is different
from a failure, which usually would result in an exception being thrown. An example is a putIfAbsent() not doing
anything because the key in question was present. This would result in a isSuccessful() call returning false.
- Returns:
- true if the command completed successfully, false otherwise.
isConditional
public boolean isConditional()
- Description copied from interface:
WriteCommand
- Certain commands only work based on a certain condition or state of the cache. For example,
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.
- Returns:
- true if the command is conditional, false otherwise
Copyright © 2012 JBoss, a division of Red Hat. All Rights Reserved.