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%2FSnapshot.java;h=fe4b79ae3dbbea1a111d8a7366fd5895175d1c32;hp=a369c25ddf41bad10e788669b225e233dbff47ec;hb=9d5ec5cdd146a56bc03e35b6718e9492a5c8410a;hpb=7873bfcd1735ce86a58c015b2865c7f3627fb121 diff --git a/opendaylight/md-sal/sal-akka-raft/src/main/java/org/opendaylight/controller/cluster/raft/Snapshot.java b/opendaylight/md-sal/sal-akka-raft/src/main/java/org/opendaylight/controller/cluster/raft/Snapshot.java index a369c25ddf..fe4b79ae3d 100644 --- a/opendaylight/md-sal/sal-akka-raft/src/main/java/org/opendaylight/controller/cluster/raft/Snapshot.java +++ b/opendaylight/md-sal/sal-akka-raft/src/main/java/org/opendaylight/controller/cluster/raft/Snapshot.java @@ -9,7 +9,7 @@ package org.opendaylight.controller.cluster.raft; import java.io.Serializable; import java.util.List; - +import org.opendaylight.controller.cluster.raft.persisted.ServerConfigurationPayload; public class Snapshot implements Serializable { private static final long serialVersionUID = -8298574936724056236L; @@ -22,9 +22,11 @@ public class Snapshot implements Serializable { private final long lastAppliedTerm; private final long electionTerm; private final String electionVotedFor; + private final ServerConfigurationPayload serverConfig; private Snapshot(byte[] state, List unAppliedEntries, long lastIndex, long lastTerm, - long lastAppliedIndex, long lastAppliedTerm, long electionTerm, String electionVotedFor) { + long lastAppliedIndex, long lastAppliedTerm, long electionTerm, String electionVotedFor, + ServerConfigurationPayload serverConfig) { this.state = state; this.unAppliedEntries = unAppliedEntries; this.lastIndex = lastIndex; @@ -33,17 +35,25 @@ public class Snapshot implements Serializable { this.lastAppliedTerm = lastAppliedTerm; this.electionTerm = electionTerm; this.electionVotedFor = electionVotedFor; + this.serverConfig = serverConfig; } public static Snapshot create(byte[] state, List entries, long lastIndex, long lastTerm, long lastAppliedIndex, long lastAppliedTerm) { - return new Snapshot(state, entries, lastIndex, lastTerm, lastAppliedIndex, lastAppliedTerm, -1, null); + return new Snapshot(state, entries, lastIndex, lastTerm, lastAppliedIndex, lastAppliedTerm, -1, null, null); } public static Snapshot create(byte[] state, List entries, long lastIndex, long lastTerm, long lastAppliedIndex, long lastAppliedTerm, long electionTerm, String electionVotedFor) { return new Snapshot(state, entries, lastIndex, lastTerm, lastAppliedIndex, lastAppliedTerm, - electionTerm, electionVotedFor); + electionTerm, electionVotedFor, null); + } + + public static Snapshot create(byte[] state, List entries, long lastIndex, long lastTerm, + long lastAppliedIndex, long lastAppliedTerm, long electionTerm, String electionVotedFor, + ServerConfigurationPayload serverConfig) { + return new Snapshot(state, entries, lastIndex, lastTerm, lastAppliedIndex, lastAppliedTerm, + electionTerm, electionVotedFor, serverConfig); } public byte[] getState() { @@ -79,11 +89,15 @@ public class Snapshot implements Serializable { return electionVotedFor; } + public ServerConfigurationPayload getServerConfiguration() { + return serverConfig; + } + @Override public String toString() { return "Snapshot [lastIndex=" + lastIndex + ", lastTerm=" + lastTerm + ", lastAppliedIndex=" + lastAppliedIndex + ", lastAppliedTerm=" + lastAppliedTerm + ", unAppliedEntries size=" + unAppliedEntries.size() + ", state size=" + state.length + ", electionTerm=" + electionTerm + ", electionVotedFor=" + electionVotedFor - + "]"; + + ", ServerConfigPayload=" + serverConfig + "]"; } }