Class OutboundTransferTask

java.lang.Object
org.infinispan.statetransfer.OutboundTransferTask

public class OutboundTransferTask extends Object
Outbound state transfer task. Pushes data segments to another cluster member on request. Instances of OutboundTransferTask are created and managed by StateTransferManagerImpl. There should be at most one such task per destination at any time.
Since:
5.2
Author:
anistor@redhat.com
  • Constructor Details

    • OutboundTransferTask

      public OutboundTransferTask(Address destination, org.infinispan.commons.util.IntSet segments, int segmentCount, int chunkSize, int topologyId, Consumer<Collection<StateChunk>> onChunkReplicated, RpcManager rpcManager, CommandsFactory commandsFactory, long timeout, String cacheName, boolean applyState)
  • Method Details

    • getDestination

      public Address getDestination()
    • getSegments

      public org.infinispan.commons.util.IntSet getSegments()
    • getTopologyId

      public int getTopologyId()
    • execute

      public CompletionStage<Void> execute(io.reactivex.rxjava3.core.Flowable<SegmentPublisherSupplier.Notification<InternalCacheEntry<?,?>>> notifications)
      Starts sending entries from the data container and the first loader with fetch persistent data enabled to the target node.
      Parameters:
      notifications - a Flowable with all the entries that need to be sent
      Returns:
      a completion stage that completes when all the entries have been sent.
    • cancel

      public void cancel()
      Cancel the whole task.
    • isCancelled

      public boolean isCancelled()
    • toString

      public String toString()
      Overrides:
      toString in class Object