X-Git-Url: https://git.opendaylight.org/gerrit/gitweb?p=controller.git;a=blobdiff_plain;f=opendaylight%2Fmd-sal%2Fsal-akka-raft%2Fsrc%2Fmain%2Fjava%2Forg%2Fopendaylight%2Fcontroller%2Fcluster%2Fraft%2FSnapshotState.java;h=f5a175f3891de08defa6a0a7cefccf816fbf8213;hp=b0cbf4b00f6c9f39daadbc23b76b8eab81df89b2;hb=3fda1a923defdbf18849c6080c3aa19f1ebf2c5f;hpb=cd5b4bd47e1cfc40751ef15f6fcdf33fc131c1f8 diff --git a/opendaylight/md-sal/sal-akka-raft/src/main/java/org/opendaylight/controller/cluster/raft/SnapshotState.java b/opendaylight/md-sal/sal-akka-raft/src/main/java/org/opendaylight/controller/cluster/raft/SnapshotState.java index b0cbf4b00f..f5a175f389 100644 --- a/opendaylight/md-sal/sal-akka-raft/src/main/java/org/opendaylight/controller/cluster/raft/SnapshotState.java +++ b/opendaylight/md-sal/sal-akka-raft/src/main/java/org/opendaylight/controller/cluster/raft/SnapshotState.java @@ -8,13 +8,12 @@ package org.opendaylight.controller.cluster.raft; -import org.opendaylight.controller.cluster.DataPersistenceProvider; +import org.opendaylight.controller.cluster.raft.base.messages.ApplySnapshot; import org.opendaylight.controller.cluster.raft.behaviors.RaftActorBehavior; public interface SnapshotState { /** - * Should return true when a snapshot is being captured - * @return + * @return true when a snapshot is being captured */ boolean isCapturing(); @@ -39,24 +38,28 @@ public interface SnapshotState { */ boolean captureToInstall(ReplicatedLogEntry lastLogEntry, long replicatedToAllIndex, String targetFollower); + /** + * Applies a snapshot on a follower that was installed by the leader. + * + * @param snapshot the Snapshot to apply. + */ + void apply(ApplySnapshot snapshot); + /** * Persist the snapshot * - * @param persistenceProvider * @param snapshotBytes * @param currentBehavior * @param totalMemory */ - void persist(DataPersistenceProvider persistenceProvider, byte[] snapshotBytes, RaftActorBehavior currentBehavior - ,long totalMemory); + void persist(byte[] snapshotBytes, RaftActorBehavior currentBehavior, long totalMemory); /** * Commit the snapshot by trimming the log * - * @param persistenceProvider * @param sequenceNumber */ - void commit(DataPersistenceProvider persistenceProvider, long sequenceNumber); + void commit(long sequenceNumber, RaftActorBehavior currentBehavior); /** * Rollback the snapshot