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=3d1976483a96ddde4618ae5f4caa3e69e52bb511;hp=8e0fcca9f7ca22a5077b874184332f79a78c21e3;hb=cc2566a2570ce97c5ec054fca77f380ca35b942d;hpb=4ef563c481b83e360e688a59ac346b8328870d58 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 8e0fcca9f7..3d1976483a 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 @@ -12,30 +12,48 @@ import java.util.List; public class Snapshot implements Serializable { + private static final long serialVersionUID = -8298574936724056236L; + private final byte[] state; private final List unAppliedEntries; private final long lastIndex; private final long lastTerm; private final long lastAppliedIndex; 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) { + private Snapshot(byte[] state, List unAppliedEntries, long lastIndex, long lastTerm, + long lastAppliedIndex, long lastAppliedTerm, long electionTerm, String electionVotedFor, + ServerConfigurationPayload serverConfig) { this.state = state; this.unAppliedEntries = unAppliedEntries; this.lastIndex = lastIndex; this.lastTerm = lastTerm; this.lastAppliedIndex = lastAppliedIndex; 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, null); + } - 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); + 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, 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() { @@ -62,15 +80,24 @@ public class Snapshot implements Serializable { return this.lastIndex; } - public String getLogMessage() { - StringBuilder sb = new StringBuilder(); - return sb.append("Snapshot={") - .append("lastTerm:" + this.getLastTerm() + ", ") - .append("lastIndex:" + this.getLastIndex() + ", ") - .append("LastAppliedIndex:" + this.getLastAppliedIndex() + ", ") - .append("LastAppliedTerm:" + this.getLastAppliedTerm() + ", ") - .append("UnAppliedEntries size:" + this.getUnAppliedEntries().size() + "}") - .toString(); + public long getElectionTerm() { + return electionTerm; + } + + + public String getElectionVotedFor() { + 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 + "]"; } }