org.infinispan.commands.write
Class ApplyDeltaCommand
java.lang.Object
org.infinispan.commands.AbstractFlagAffectedCommand
org.infinispan.commands.read.AbstractDataCommand
org.infinispan.commands.write.AbstractDataWriteCommand
org.infinispan.commands.write.ApplyDeltaCommand
- All Implemented Interfaces:
- DataCommand, FlagAffectedCommand, ReplicableCommand, VisitableCommand, DataWriteCommand, WriteCommand
public class ApplyDeltaCommand
- extends AbstractDataWriteCommand
- Since:
- 5.1
- Author:
- Vladimir Blagojevic
COMMAND_ID
public static final int COMMAND_ID
- See Also:
- Constant Field Values
ApplyDeltaCommand
public ApplyDeltaCommand()
ApplyDeltaCommand
public ApplyDeltaCommand(Object deltaAwareValueKey,
Delta delta,
Collection<Object> keys)
getDeltaAwareKey
public Object getDeltaAwareKey()
getDelta
public Delta getDelta()
getKey
public Object getKey()
- Specified by:
getKey
in interface DataCommand
- Overrides:
getKey
in class AbstractDataCommand
perform
public Object perform(InvocationContext ctx)
throws Throwable
- Performs an application of delta on a specified entry
- Parameters:
ctx
- invocation context
- Returns:
- null
- 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.
toString
public String toString()
- Overrides:
toString
in class AbstractDataCommand
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[] args)
- 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
.args
- object array of args
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
getKeys
public Object[] getKeys()
getCompositeKeys
public Object[] getCompositeKeys()
ignoreCommandOnStatus
public boolean ignoreCommandOnStatus(ComponentStatus status)
- Description copied from interface:
VisitableCommand
- Similar to
VisitableCommand.shouldInvoke(InvocationContext)
but evaluated by InvocationContextInterceptor
.
Commands can opt to be discarded in case the cache status is not suited (as InvalidateCommand
)
- Specified by:
ignoreCommandOnStatus
in interface VisitableCommand
- Overrides:
ignoreCommandOnStatus
in class AbstractDataCommand
- Returns:
- true if the command should NOT be invoked.
equals
public boolean equals(Object o)
- Overrides:
equals
in class AbstractDataCommand
hashCode
public int hashCode()
- Overrides:
hashCode
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.