Package org.infinispan.commands
Interface ReplicableCommand
-
- All Known Subinterfaces:
CacheRpcCommand,DataCommand,DataWriteCommand,FlagAffectedCommand,GlobalRpcCommand,RemoteLockCommand,TopologyAffectedCommand,TransactionalRemoteLockCommand,TransactionBoundaryCommand,VisitableCommand,WriteCommand
- All Known Implementing Classes:
AbstractCacheControlCommand,AbstractDataCommand,AbstractDataWriteCommand,AbstractFlagAffectedCommand,AbstractLocalCommand,AbstractTopologyAffectedCommand,AbstractTransactionBoundaryCommand,AbstractWriteKeyCommand,AbstractWriteManyCommand,BackupAckCommand,BackupMultiKeyAckCommand,BackupWriteCommand,BaseClusteredReadCommand,BaseRpcCommand,CacheAvailabilityUpdateCommand,CacheJoinCommand,CacheLeaveCommand,CacheShutdownCommand,CacheShutdownRequestCommand,CacheStatusRequestCommand,CancelPublisherCommand,CheckTransactionRpcCommand,ClearCommand,ClusteredGetAllCommand,ClusteredGetCommand,CommitCommand,CompleteTransactionCommand,ComputeCommand,ComputeIfAbsentCommand,ConflictResolutionStartCommand,EntrySetCommand,EvictCommand,ExceptionAckCommand,GetAllCommand,GetCacheEntryCommand,GetInDoubtTransactionsCommand,GetInDoubtTxInfoCommand,GetKeysInGroupCommand,GetKeyValueCommand,HeartBeatCommand,InitialPublisherCommand,InvalidateCommand,InvalidateL1Command,InvalidateVersionsCommand,IracCleanupKeyCommand,IracClearKeysCommand,IracMetadataRequestCommand,IracPutKeyCommand,IracRemoveKeyCommand,IracRequestStateCommand,IracStateResponseCommand,IracUpdateKeyCommand,KeySetCommand,LockControlCommand,MultiClusterEventCommand,MultiEntriesFunctionalBackupWriteCommand,MultiKeyFunctionalBackupWriteCommand,NextPublisherCommand,PrepareCommand,PutKeyValueCommand,PutMapBackupWriteCommand,PutMapCommand,ReadOnlyKeyCommand,ReadOnlyManyCommand,ReadWriteKeyCommand,ReadWriteKeyValueCommand,ReadWriteManyCommand,ReadWriteManyEntriesCommand,RebalancePhaseConfirmCommand,RebalancePolicyUpdateCommand,RebalanceStartCommand,RebalanceStatusRequestCommand,RecoveryCommand,ReductionPublisherRequestCommand,RemoveCommand,RemoveExpiredCommand,RenewBiasCommand,ReplaceCommand,ReplicableManagerFunctionCommand,ReplicableRunnableCommand,RevokeBiasCommand,RollbackCommand,ScatteredStateConfirmRevokedCommand,ScatteredStateGetKeysCommand,SingleKeyBackupWriteCommand,SingleKeyFunctionalBackupWriteCommand,SingleRpcCommand,SingleXSiteRpcCommand,SizeCommand,StateResponseCommand,StateTransferCancelCommand,StateTransferGetListenersCommand,StateTransferGetTransactionsCommand,StateTransferStartCommand,TopologyUpdateCommand,TopologyUpdateStableCommand,TouchCommand,TxCompletionNotificationCommand,TxReadOnlyKeyCommand,TxReadOnlyManyCommand,VersionedCommitCommand,VersionedPrepareCommand,WriteOnlyKeyCommand,WriteOnlyKeyValueCommand,WriteOnlyManyCommand,WriteOnlyManyEntriesCommand,XSiteAmendOfflineStatusCommand,XSiteBringOnlineCommand,XSiteOfflineStatusCommand,XSiteReplicateCommand,XSiteStatePushCommand,XSiteStateTransferCancelSendCommand,XSiteStateTransferClearStatusCommand,XSiteStateTransferFinishReceiveCommand,XSiteStateTransferFinishSendCommand,XSiteStateTransferRestartSendingCommand,XSiteStateTransferStartReceiveCommand,XSiteStateTransferStartSendCommand,XSiteStateTransferStatusRequestCommand,XSiteStatusCommand,XSiteTakeOfflineCommand
public interface ReplicableCommandThe core of the command-based cache framework. Commands correspond to specific areas of functionality in the cache, and can be replicated using theRpcManager- Since:
- 4.0
- Author:
- Mircea.Markus@jboss.com, Manik Surtani
-
-
Method Summary
All Methods Instance Methods Abstract Methods Default Methods Deprecated Methods Modifier and Type Method Description default booleancanBlock()Deprecated.since 11.0 - All commands will be required to be non blocking!bytegetCommandId()Used by marshallers to convert this command into an id for streaming.default Objectinvoke()Deprecated.since 11.0, please useCacheRpcCommand.invokeAsync(ComponentRegistry)orGlobalRpcCommand.invokeAsync(GlobalComponentRegistry)instead.default CompletableFuture<Object>invokeAsync()Deprecated.since 11.0, please useCacheRpcCommand.invokeAsync(ComponentRegistry)orGlobalRpcCommand.invokeAsync(GlobalComponentRegistry)instead.booleanisReturnValueExpected()If true, a return value will be provided when performed remotely.default booleanisSuccessful()If true, a return value will be marshalled as aSuccessfulResponse, otherwise it will be marshalled as aUnsuccessfulResponse.default voidreadFrom(ObjectInput input)Reads this instance from the stream written bywriteTo(ObjectOutput).default voidsetOrigin(Address origin)Sets the sender'sAddress.default voidwriteTo(ObjectOutput output)Writes this instance to theObjectOutput.
-
-
-
Method Detail
-
invokeAsync
@Deprecated default CompletableFuture<Object> invokeAsync() throws Throwable
Deprecated.since 11.0, please useCacheRpcCommand.invokeAsync(ComponentRegistry)orGlobalRpcCommand.invokeAsync(GlobalComponentRegistry)instead.Invoke the command asynchronously.- Throws:
Throwable- Since:
- 9.0
-
invoke
@Deprecated default Object invoke() throws Throwable
Deprecated.since 11.0, please useCacheRpcCommand.invokeAsync(ComponentRegistry)orGlobalRpcCommand.invokeAsync(GlobalComponentRegistry)instead.Invoke the command synchronously.- Throws:
Throwable- Since:
- 9.0
-
getCommandId
byte getCommandId()
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.
-
isReturnValueExpected
boolean isReturnValueExpected()
If true, a return value will be provided when performed remotely. Otherwise, a remoteResponseGeneratormay choose to simply return null to save on marshalling costs.- Returns:
- true or false
-
isSuccessful
default boolean isSuccessful()
If true, a return value will be marshalled as aSuccessfulResponse, otherwise it will be marshalled as aUnsuccessfulResponse.
-
canBlock
@Deprecated default boolean canBlock()
Deprecated.since 11.0 - All commands will be required to be non blocking!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:
trueif the command can block/wait,falseotherwise
-
writeTo
default void writeTo(ObjectOutput output) throws IOException
Writes this instance to theObjectOutput.- Parameters:
output- the stream.- Throws:
IOException- if an error occurred during the I/O.
-
readFrom
default void readFrom(ObjectInput input) throws IOException, ClassNotFoundException
Reads this instance from the stream written bywriteTo(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.
-
-