Fix warnings and clean up javadocs in sal-akka-raft
[controller.git] / opendaylight / md-sal / sal-akka-raft / src / main / java / org / opendaylight / controller / cluster / raft / client / messages / OnDemandRaftState.java
index 8c2986f6d19f402137d40efd551667b22a28c151..cf9bb620dd6a4aa98e73a5ba7198ff0e1bdd0b7c 100644 (file)
@@ -7,12 +7,13 @@
  */
 package org.opendaylight.controller.cluster.raft.client.messages;
 
+import com.google.common.collect.ImmutableMap;
 import java.util.Collections;
 import java.util.List;
 import java.util.Map;
 
 /**
- * The response to a GetOnDemandRaftState message,
+ * The response to a GetOnDemandRaftState message.
  *
  * @author Thomas Pantelis
  */
@@ -33,9 +34,12 @@ public class OnDemandRaftState {
     private String raftState;
     private String votedFor;
     private boolean isSnapshotCaptureInitiated;
+    private String customRaftPolicyClassName;
+    private boolean isVoting;
 
     private List<FollowerInfo> followerInfoList = Collections.emptyList();
     private Map<String, String> peerAddresses = Collections.emptyMap();
+    private Map<String, Boolean> peerVotingStates = Collections.emptyMap();
 
     private OnDemandRaftState() {
     }
@@ -108,6 +112,10 @@ public class OnDemandRaftState {
         return isSnapshotCaptureInitiated;
     }
 
+    public boolean isVoting() {
+        return isVoting;
+    }
+
     public List<FollowerInfo> getFollowerInfoList() {
         return followerInfoList;
     }
@@ -116,6 +124,14 @@ public class OnDemandRaftState {
         return peerAddresses;
     }
 
+    public Map<String, Boolean> getPeerVotingStates() {
+        return peerVotingStates;
+    }
+
+    public String getCustomRaftPolicyClassName() {
+        return customRaftPolicyClassName;
+    }
+
     public static class Builder {
         private final OnDemandRaftState stats = new OnDemandRaftState();
 
@@ -194,6 +210,11 @@ public class OnDemandRaftState {
             return this;
         }
 
+        public Builder isVoting(boolean isVoting) {
+            stats.isVoting = isVoting;
+            return this;
+        }
+
         public Builder followerInfoList(List<FollowerInfo> followerInfoList) {
             stats.followerInfoList = followerInfoList;
             return this;
@@ -204,11 +225,21 @@ public class OnDemandRaftState {
             return this;
         }
 
+        public Builder peerVotingStates(Map<String, Boolean> peerVotingStates) {
+            stats.peerVotingStates = ImmutableMap.copyOf(peerVotingStates);
+            return this;
+        }
+
         public Builder isSnapshotCaptureInitiated(boolean value) {
             stats.isSnapshotCaptureInitiated = value;
             return this;
         }
 
+        public Builder customRaftPolicyClassName(String className) {
+            stats.customRaftPolicyClassName = className;
+            return this;
+        }
+
         public OnDemandRaftState build() {
             return stats;
         }