X-Git-Url: https://git.opendaylight.org/gerrit/gitweb?a=blobdiff_plain;f=opendaylight%2Fmd-sal%2Fsal-akka-raft%2Fsrc%2Fmain%2Fjava%2Forg%2Fopendaylight%2Fcontroller%2Fcluster%2Fraft%2Fmessages%2FAppendEntriesReply.java;h=ffdfaa6a0ed112ce50eb22d881d2731dd7a69978;hb=b8c6400766f7324dd57d059bd48e435569fe1a27;hp=7e6628abe1464800ef2449501a165a89c19cbcb3;hpb=ed693440aa741fee9b94447f8404d89b4020f616;p=controller.git diff --git a/opendaylight/md-sal/sal-akka-raft/src/main/java/org/opendaylight/controller/cluster/raft/messages/AppendEntriesReply.java b/opendaylight/md-sal/sal-akka-raft/src/main/java/org/opendaylight/controller/cluster/raft/messages/AppendEntriesReply.java index 7e6628abe1..ffdfaa6a0e 100644 --- a/opendaylight/md-sal/sal-akka-raft/src/main/java/org/opendaylight/controller/cluster/raft/messages/AppendEntriesReply.java +++ b/opendaylight/md-sal/sal-akka-raft/src/main/java/org/opendaylight/controller/cluster/raft/messages/AppendEntriesReply.java @@ -8,12 +8,13 @@ package org.opendaylight.controller.cluster.raft.messages; -import java.io.Serializable; +import org.opendaylight.controller.cluster.raft.RaftVersions; /** * Reply for the AppendEntriesRpc message */ -public class AppendEntriesReply extends AbstractRaftRPC implements Serializable { +public class AppendEntriesReply extends AbstractRaftRPC { + private static final long serialVersionUID = -7487547356392536683L; // true if follower contained entry matching // prevLogIndex and prevLogTerm @@ -30,17 +31,27 @@ public class AppendEntriesReply extends AbstractRaftRPC implements Serializable // responding private final String followerId; - public AppendEntriesReply(String followerId, long term, boolean success, long logLastIndex, long logLastTerm) { + private final short payloadVersion; + + private final short raftVersion = RaftVersions.CURRENT_VERSION; + + private final boolean forceInstallSnapshot; + + public AppendEntriesReply(String followerId, long term, boolean success, long logLastIndex, long logLastTerm, + short payloadVersion) { + this(followerId, term, success, logLastIndex, logLastTerm, payloadVersion, false); + } + + public AppendEntriesReply(String followerId, long term, boolean success, long logLastIndex, long logLastTerm, + short payloadVersion, boolean forceInstallSnapshot) { super(term); this.followerId = followerId; this.success = success; this.logLastIndex = logLastIndex; this.logLastTerm = logLastTerm; - } - - public long getTerm() { - return term; + this.payloadVersion = payloadVersion; + this.forceInstallSnapshot = forceInstallSnapshot; } public boolean isSuccess() { @@ -58,4 +69,23 @@ public class AppendEntriesReply extends AbstractRaftRPC implements Serializable public String getFollowerId() { return followerId; } + + public short getPayloadVersion() { + return payloadVersion; + } + + public short getRaftVersion() { + return raftVersion; + } + + public boolean isForceInstallSnapshot() { + return forceInstallSnapshot; + } + + @Override + public String toString() { + return "AppendEntriesReply [term=" + getTerm() + ", success=" + success + ", followerId=" + followerId + + ", logLastIndex=" + logLastIndex + ", logLastTerm=" + logLastTerm + ", forceInstallSnapshot=" + + forceInstallSnapshot + ", payloadVersion=" + payloadVersion + ", raftVersion=" + raftVersion + "]"; + } }