Add optional timeout parameter for backup rpc
[controller.git] / opendaylight / md-sal / sal-akka-raft / src / main / java / org / opendaylight / controller / cluster / raft / messages / ServerChangeStatus.java
index b5caa1656c4f149a30f3d0e0054375ed595b2240..ca6f34c5c446e499157aac9cc9451e8e6bf1b6cf 100644 (file)
@@ -13,7 +13,44 @@ package org.opendaylight.controller.cluster.raft.messages;
  * @author Thomas Pantelis
  */
 public enum ServerChangeStatus {
+    /**
+     * Request successfully completed.
+     */
     OK,
+
+    /**
+     * No leader exists to process the request.
+     */
     NO_LEADER,
-    TIMEOUT
+
+    /**
+     * For an AddServer request, the leader timed out trying to install a snapshot on the new server.
+     */
+    TIMEOUT,
+
+    /**
+     * For an AddServer request, the server to add already exists.
+     */
+    ALREADY_EXISTS,
+
+    /**
+     * For a RemoveServer request, the server to remove does not exist.
+     */
+    DOES_NOT_EXIST,
+
+    /**
+     * The leader could not process the request due to a prior request that timed out while trying to
+     * achieve replication consensus.
+     */
+    PRIOR_REQUEST_CONSENSUS_TIMEOUT,
+
+    /**
+     * An unsupported request, for example removing the leader in a single node cluster.
+     */
+    NOT_SUPPORTED,
+
+    /**
+     * Some part of the request is invalid.
+     */
+    INVALID_REQUEST,
 }