Class ReadWriteKeyValueCommand<K,V,T,R>
java.lang.Object
org.infinispan.commands.read.AbstractDataCommand
org.infinispan.commands.write.AbstractDataWriteCommand
org.infinispan.commands.functional.AbstractWriteKeyCommand<K,V>
org.infinispan.commands.functional.ReadWriteKeyValueCommand<K,V,T,R>
- All Implemented Interfaces:
DataCommand
,FlagAffectedCommand
,FunctionalCommand<K,
,V> ReplicableCommand
,SegmentSpecificCommand
,TopologyAffectedCommand
,TracedCommand
,VisitableCommand
,DataWriteCommand
,WriteCommand
,RemoteLockCommand
-
Nested Class Summary
Nested classes/interfaces inherited from interface org.infinispan.commands.VisitableCommand
VisitableCommand.LoadType
-
Field Summary
FieldsFields inherited from class org.infinispan.commands.write.AbstractDataWriteCommand
commandInvocationId
Fields inherited from class org.infinispan.commands.read.AbstractDataCommand
key, segment
-
Constructor Summary
ConstructorsConstructorDescriptionReadWriteKeyValueCommand
(Object key, Object argument, BiFunction<T, EntryView.ReadWriteEntryView<K, V>, R> f, int segment, CommandInvocationId id, ValueMatcher valueMatcher, Params params, DataConversion keyDataConversion, DataConversion valueDataConversion) -
Method Summary
Modifier and TypeMethodDescriptionacceptVisitor
(InvocationContext ctx, Visitor visitor) Accept a visitor, and return the result of accepting this visitor.byte
Used by marshallers to convert this command into an id for streaming.void
init
(ComponentRegistry componentRegistry) boolean
Certain commands only work based on a certain condition or state of the cache.loadType()
void
readFrom
(ObjectInput input) Reads this instance from the stream written byReplicableCommand.writeTo(ObjectOutput)
.void
setPrevValueAndMetadata
(Object prevValue, Metadata prevMetadata) toMutation
(Object key) toString()
void
writeTo
(ObjectOutput output) Writes this instance to theObjectOutput
.Methods inherited from class org.infinispan.commands.functional.AbstractWriteKeyCommand
fail, getInternalMetadata, getKeyDataConversion, getParams, getValueDataConversion, getValueMatcher, isSuccessful, setInternalMetadata, setValueMatcher
Methods inherited from class org.infinispan.commands.write.AbstractDataWriteCommand
getAffectedKeys, getCommandInvocationId, getKeyLockOwner, getKeysToLock, hasSkipLocking, hasZeroLockAcquisition, isReturnValueExpected
Methods inherited from class org.infinispan.commands.read.AbstractDataCommand
equals, getFlagsBitSet, getKey, getSegment, getTopologyId, hashCode, printFlags, setFlagsBitSet, setKey, setTopologyId
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
Methods inherited from interface org.infinispan.commands.DataCommand
getKey
Methods inherited from interface org.infinispan.commands.write.DataWriteCommand
getInternalMetadata, setInternalMetadata
Methods inherited from interface org.infinispan.commands.FlagAffectedCommand
addFlags, getFlags, getFlagsBitSet, hasAllFlags, hasAnyFlag, setFlagsBitSet
Methods inherited from interface org.infinispan.commands.ReplicableCommand
canBlock, invoke, invokeAsync, logThrowable, setOrigin
Methods inherited from interface org.infinispan.commands.SegmentSpecificCommand
getSegment
Methods inherited from interface org.infinispan.commands.TopologyAffectedCommand
getTopologyId, setTopologyId
Methods inherited from interface org.infinispan.commands.TracedCommand
getOperationName, getSpanAttributes, setSpanAttributes
Methods inherited from interface org.infinispan.commands.write.WriteCommand
isWriteOnly, shouldReplicate
-
Field Details
-
COMMAND_ID
public static final byte COMMAND_ID- See Also:
-
-
Constructor Details
-
ReadWriteKeyValueCommand
public ReadWriteKeyValueCommand(Object key, Object argument, BiFunction<T, EntryView.ReadWriteEntryView<K, V>, R> f, int segment, CommandInvocationId id, ValueMatcher valueMatcher, Params params, DataConversion keyDataConversion, DataConversion valueDataConversion) -
ReadWriteKeyValueCommand
public ReadWriteKeyValueCommand()
-
-
Method Details
-
init
- Specified by:
init
in interfaceVisitableCommand
- Overrides:
init
in classAbstractWriteKeyCommand<K,
V>
-
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.
-
writeTo
Description copied from interface:ReplicableCommand
Writes this instance to theObjectOutput
.- Parameters:
output
- the stream.- Throws:
IOException
- if an error occurred during the I/O.
-
readFrom
Description copied from interface:ReplicableCommand
Reads this instance from the stream written byReplicableCommand.writeTo(ObjectOutput)
.- Parameters:
input
- the stream to read.- Throws:
IOException
- if an error occurred during the I/O.ClassNotFoundException
- if it tries to load an undefined class.
-
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
-
acceptVisitor
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
-
loadType
- Returns:
- Nodes on which the command needs to read the previous values of the keys it acts on.
-
toString
- Overrides:
toString
in classAbstractWriteKeyCommand<K,
V>
-
toMutation
-
setPrevValueAndMetadata
-
getArgument
-
getBiFunction
-
getPrevValue
-
getPrevMetadata
-