Package org.infinispan.commands.remote
Class SingleRpcCommand
java.lang.Object
org.infinispan.commands.remote.BaseRpcCommand
org.infinispan.commands.remote.SingleRpcCommand
- All Implemented Interfaces:
CacheRpcCommand
,ReplicableCommand
,TracedCommand
Aggregates a single command for replication.
- Author:
- [email protected]
-
Field Summary
Fields inherited from class org.infinispan.commands.remote.BaseRpcCommand
cacheName, origin
-
Constructor Summary
ConstructorDescriptionSingleRpcCommand
(ByteString cacheName) SingleRpcCommand
(ByteString cacheName, VisitableCommand command) -
Method Summary
Modifier and TypeMethodDescriptionboolean
canBlock()
If true, the command is processed asynchronously in a thread provided by an Infinispan thread pool.boolean
byte
Used by marshallers to convert this command into an id for streaming.int
hashCode()
invokeAsync
(ComponentRegistry componentRegistry) Invoke the command asynchronously.boolean
If true, a return value will be provided when performed remotely.boolean
If true, a return value will be marshalled as aSuccessfulResponse
, otherwise it will be marshalled as aUnsuccessfulResponse
.boolean
void
readFrom
(ObjectInput input) Reads this instance from the stream written byReplicableCommand.writeTo(ObjectOutput)
.void
setSpanAttributes
(InfinispanSpanAttributes attributes) toString()
void
writeTo
(ObjectOutput output) Writes this instance to theObjectOutput
.Methods inherited from class org.infinispan.commands.remote.BaseRpcCommand
getCacheName, getOrigin, setOrigin
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
Methods inherited from interface org.infinispan.commands.ReplicableCommand
invoke, invokeAsync
-
Field Details
-
COMMAND_ID
public static final int COMMAND_ID- See Also:
-
-
Constructor Details
-
SingleRpcCommand
-
SingleRpcCommand
-
-
Method Details
-
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.
-
invokeAsync
Description copied from interface:CacheRpcCommand
Invoke the command asynchronously.This method replaces
ReplicableCommand.invoke()
for remote execution. The default implementation andReplicableCommand.invoke()
will be removed in future versions.- Throws:
Throwable
-
equals
-
hashCode
public int hashCode() -
toString
- Overrides:
toString
in classBaseRpcCommand
-
getCommand
-
isReturnValueExpected
public boolean isReturnValueExpected()Description copied from interface:ReplicableCommand
If true, a return value will be provided when performed remotely. Otherwise, a remoteResponseGenerator
may choose to simply return null to save on marshalling costs.- Returns:
- true or false
-
isSuccessful
public boolean isSuccessful()Description copied from interface:ReplicableCommand
If true, a return value will be marshalled as aSuccessfulResponse
, otherwise it will be marshalled as aUnsuccessfulResponse
. -
canBlock
public boolean canBlock()Description copied from interface:ReplicableCommand
If true, the command is processed asynchronously in a thread provided by an Infinispan thread pool. Otherwise, the command is processed directly in the JGroups thread. This feature allows to avoid keep a JGroups thread busy that can originate discard of messages and retransmissions. So, the commands that can block (waiting for some state, acquiring locks, etc.) should return true.- Returns:
true
if the command can block/wait,false
otherwise
-
logThrowable
-
getSpanAttributes
-
getOperationName
-
setSpanAttributes
-