Switch current {ABI,DataStore,Payload}Version to Sodium SR1
[controller.git] / opendaylight / md-sal / cds-access-api / src / main / java / org / opendaylight / controller / cluster / access / ABIVersion.java
index e523cca75a1e2cdefaac8676225fd2cadbedcfa6..26093c1b23d36982079f3197b60b33aa1f665251 100644 (file)
@@ -50,7 +50,6 @@ public enum ABIVersion implements WritableObject {
             return NormalizedNodeStreamVersion.LITHIUM;
         }
     },
-
     /**
      * Revised ABI version. The messages remain the same as {@link #BORON}, but messages bearing QNames in any shape
      * are using {@link NormalizedNodeStreamVersion#NEON_SR2}, which improves encoding.
@@ -61,6 +60,26 @@ public enum ABIVersion implements WritableObject {
             return NormalizedNodeStreamVersion.NEON_SR2;
         }
     },
+    /**
+     * Revised ABI version. The messages remain the same as {@link #BORON}, but messages bearing QNames in any shape
+     * are using {@link NormalizedNodeStreamVersion#SODIUM_SR1}, which improves encoding.
+     */
+    SODIUM_SR1(7) {
+        @Override
+        public NormalizedNodeStreamVersion getStreamVersion() {
+            return NormalizedNodeStreamVersion.SODIUM_SR1;
+        }
+    },
+    /**
+     * Revised ABI version. The messages remain the same as {@link #BORON}, but messages bearing QNames in any shape
+     * are using {@link NormalizedNodeStreamVersion#MAGNESIUM}, which improves encoding.
+     */
+    MAGNESIUM(8) {
+        @Override
+        public NormalizedNodeStreamVersion getStreamVersion() {
+            return NormalizedNodeStreamVersion.MAGNESIUM;
+        }
+    },
 
     /**
      * Version which is newer than any other version. This version exists purely for testing purposes.
@@ -98,7 +117,7 @@ public enum ABIVersion implements WritableObject {
      * @return Current {@link ABIVersion}
      */
     public static @NonNull ABIVersion current() {
-        return NEON_SR2;
+        return SODIUM_SR1;
     }
 
     /**
@@ -122,8 +141,12 @@ public enum ABIVersion implements WritableObject {
                 return BORON;
             case 6:
                 return NEON_SR2;
+            case 7:
+                return SODIUM_SR1;
+            case 8:
+                return MAGNESIUM;
             default:
-                throw new FutureVersionException(value, NEON_SR2);
+                throw new FutureVersionException(value, MAGNESIUM);
         }
     }