Class NoopRaftActorSnapshotCohort

java.lang.Object
org.opendaylight.controller.cluster.raft.NoopRaftActorSnapshotCohort
All Implemented Interfaces:
RaftActorSnapshotCohort

public final class NoopRaftActorSnapshotCohort extends Object implements RaftActorSnapshotCohort
RaftActorSnapshotCohort implementation that does nothing.
Author:
Thomas Pantelis
  • Field Details

  • Method Details

    • createSnapshot

      public void createSnapshot(akka.actor.ActorRef actorRef, Optional<OutputStream> installSnapshotStream)
      Description copied from interface: RaftActorSnapshotCohort
      This method is called by the RaftActor when a snapshot needs to be created. The implementation should send a CaptureSnapshotReply to the given actor.
      Specified by:
      createSnapshot in interface RaftActorSnapshotCohort
      Parameters:
      actorRef - the actor to which to respond
      installSnapshotStream - Optional OutputStream that is present if the snapshot is to also be installed on a follower. The implementation must serialize its state to the OutputStream and return the installSnapshotStream instance in the CaptureSnapshotReply along with the snapshot State instance. The snapshot State is serialized directly to the snapshot store while the OutputStream is used to send the state data to follower(s) in chunks. The RaftActorSnapshotCohort.deserializeSnapshot(com.google.common.io.ByteSource) method is used to convert the serialized data back to a State instance on the follower end. The serialization for snapshot install is passed off so the cost of serialization is not charged to the raft actor's thread.
    • applySnapshot

      public void applySnapshot(Snapshot.State snapshotState)
      Description copied from interface: RaftActorSnapshotCohort
      This method is called to apply a snapshot installed by the leader.
      Specified by:
      applySnapshot in interface RaftActorSnapshotCohort
      Parameters:
      snapshotState - a snapshot of the state of the actor
    • deserializeSnapshot

      public Snapshot.State deserializeSnapshot(com.google.common.io.ByteSource snapshotBytes)
      Description copied from interface: RaftActorSnapshotCohort
      This method is called to de-serialize snapshot data that was previously serialized via RaftActorSnapshotCohort.createSnapshot(akka.actor.ActorRef, java.util.Optional<java.io.OutputStream>) to a State instance.
      Specified by:
      deserializeSnapshot in interface RaftActorSnapshotCohort
      Parameters:
      snapshotBytes - the ByteSource containing the serialized data
      Returns:
      the converted snapshot State