Class XSiteStatePushCommand

java.lang.Object
org.infinispan.commands.remote.BaseRpcCommand
org.infinispan.xsite.statetransfer.XSiteStatePushCommand
All Implemented Interfaces:
org.infinispan.commands.remote.CacheRpcCommand, ReplicableCommand, TracedCommand

public class XSiteStatePushCommand extends org.infinispan.commands.remote.BaseRpcCommand
Wraps the state to be sent to another site
Since:
7.0
Author:
Pedro Ruivo
  • Field Details

  • Constructor Details

    • XSiteStatePushCommand

      public XSiteStatePushCommand(ByteString cacheName, XSiteState[] chunk)
    • XSiteStatePushCommand

      public XSiteStatePushCommand(ByteString cacheName)
    • XSiteStatePushCommand

      public XSiteStatePushCommand()
  • Method Details

    • invokeAsync

      public CompletionStage<?> invokeAsync(ComponentRegistry componentRegistry) throws Throwable
      Throws:
      Throwable
    • 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

      public void writeTo(ObjectOutput output) throws IOException
      Description copied from interface: ReplicableCommand
      Writes this instance to the ObjectOutput.
      Parameters:
      output - the stream.
      Throws:
      IOException - if an error occurred during the I/O.
    • readFrom

      public void readFrom(ObjectInput input) throws IOException, ClassNotFoundException
      Description copied from interface: ReplicableCommand
      Reads this instance from the stream written by ReplicableCommand.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.
    • isReturnValueExpected

      public boolean isReturnValueExpected()
      Description copied from interface: ReplicableCommand
      If true, a return value will be provided when performed remotely. Otherwise, a remote ResponseGenerator may choose to simply return null to save on marshalling costs.
      Returns:
      true or false
    • 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
    • toString

      public String toString()
      Overrides:
      toString in class Object