Bug 3020: Add version to AppendEntries and AppendEntriesReply
[controller.git] / opendaylight / md-sal / sal-akka-raft / src / main / java / org / opendaylight / controller / cluster / raft / messages / AppendEntriesReply.java
index 7524d8f2326f0d490c09daa9842130e4b5218984..990605b288201c4d0d3156c65c8077d326d25cdf 100644 (file)
@@ -11,7 +11,8 @@ package org.opendaylight.controller.cluster.raft.messages;
 /**
  * Reply for the AppendEntriesRpc message
  */
-public class AppendEntriesReply extends AbstractRaftRPC{
+public class AppendEntriesReply extends AbstractRaftRPC {
+    private static final long serialVersionUID = -7487547356392536683L;
 
     // true if follower contained entry matching
     // prevLogIndex and prevLogTerm
@@ -28,15 +29,20 @@ public class AppendEntriesReply extends AbstractRaftRPC{
     // responding
     private final String followerId;
 
-    public AppendEntriesReply(String followerId, long term, boolean success, long logLastIndex, long logLastTerm) {
+    private final short payloadVersion;
+
+    public AppendEntriesReply(String followerId, long term, boolean success, long logLastIndex, long logLastTerm,
+            short payloadVersion) {
         super(term);
 
         this.followerId = followerId;
         this.success = success;
         this.logLastIndex = logLastIndex;
         this.logLastTerm = logLastTerm;
+        this.payloadVersion = payloadVersion;
     }
 
+    @Override
     public long getTerm() {
         return term;
     }
@@ -56,4 +62,17 @@ public class AppendEntriesReply extends AbstractRaftRPC{
     public String getFollowerId() {
         return followerId;
     }
+
+    public short getPayloadVersion() {
+        return payloadVersion;
+    }
+
+    @Override
+    public String toString() {
+        StringBuilder builder = new StringBuilder();
+        builder.append("AppendEntriesReply [success=").append(success).append(", logLastIndex=").append(logLastIndex)
+                .append(", logLastTerm=").append(logLastTerm).append(", followerId=").append(followerId)
+                .append(", payloadVersion=").append(payloadVersion).append("]");
+        return builder.toString();
+    }
 }