Remove maskLength from MappingRecord 10/38110/2
authorLorand Jakab <lojakab@cisco.com>
Wed, 27 Apr 2016 13:11:59 +0000 (16:11 +0300)
committerLorand Jakab <lojakab@cisco.com>
Wed, 27 Apr 2016 13:11:59 +0000 (16:11 +0300)
The maskLength field was deprecated in Beryllium, when we switched to
the IETF LISP address type model, and its value is now integral part if
the Eid field, which can be a prefix. We can now remove it, to avoid
further confusion.

Change-Id: I7f464bc157065b79bab6110eecf0c71c16aa125b
Signed-off-by: Lorand Jakab <lojakab@cisco.com>
integrationtest/src/test/java/org/opendaylight/lispflowmapping/integrationtest/MappingServiceIntegrationTest.java
mappingservice/implementation/src/main/java/org/opendaylight/lispflowmapping/implementation/util/MappingMergeUtil.java
mappingservice/lisp-proto/src/main/java/org/opendaylight/lispflowmapping/lisp/serializer/MappingRecordSerializer.java
mappingservice/lisp-proto/src/main/yang/odl-lisp-proto.yang
mappingservice/lisp-proto/src/test/java/org/opendaylight/lispflowmapping/serializer/MapNotifySerializationTest.java
mappingservice/lisp-proto/src/test/java/org/opendaylight/lispflowmapping/serializer/MapRegisterSerializationTest.java
mappingservice/lisp-proto/src/test/java/org/opendaylight/lispflowmapping/serializer/MapReplySerializationTest.java
mappingservice/lisp-proto/src/test/java/org/opendaylight/lispflowmapping/serializer/MapRequestSerializationTest.java
mappingservice/southbound/src/test/java/org/opendaylight/lispflowmapping/southbound/lisp/LispSouthboundServiceTest.java

index 750be7140723f7dfe5da1ffe54237780ecde6d16..842790e2d9440c3f4086bb43c5f9c97072f9490b 100644 (file)
@@ -1803,7 +1803,6 @@ public class MappingServiceIntegrationTest extends AbstractMdsalTestBase {
 
         MappingRecordBuilder etlrBuilder = new MappingRecordBuilder();
         etlrBuilder.setEid(eid);
-        etlrBuilder.setMaskLength((short) 32);
         etlrBuilder.setRecordTtl(254);
 
         LocatorRecordBuilder recordBuilder = new LocatorRecordBuilder();
@@ -1905,7 +1904,6 @@ public class MappingServiceIntegrationTest extends AbstractMdsalTestBase {
         mapRegisterbuilder.setKeyId((short) 0);
         MappingRecordBuilder etlrBuilder = new MappingRecordBuilder();
         etlrBuilder.setEid(eid);
-        etlrBuilder.setMaskLength((short) 24);
         etlrBuilder.setRecordTtl(254);
         etlrBuilder.setAuthoritative(false);
         etlrBuilder.setAction(Action.NoAction);
index 3bdb712cc928290321acd33ba6d45479c6d3ece2..aab708237a1a2fe35a48b29dcc7652a3a2999fa7 100644 (file)
@@ -257,7 +257,6 @@ public final class MappingMergeUtil {
             } else if (nbMask < sbMask) {
                 // Both EIDs are IP prefixes. SB mapping is a subprefix so we have to update EID intersection
                 mrb.setEid(sbMapping.getEid());
-                mrb.setMaskLength(sbMask);
             }
         }
         // find and update locators intersection if not empty
index 6f7e1b52c0b992613dbc9e1e508d666caa47559a..8174608b0b80b9a8f883b76e50528ebbbc646c78 100644 (file)
@@ -41,7 +41,7 @@ public final class MappingRecordSerializer {
         MappingRecordBuilder builder = new MappingRecordBuilder();
         builder.setRecordTtl(buffer.getInt());
         byte locatorCount = (byte) ByteUtil.getUnsignedByte(buffer);
-        builder.setMaskLength((short) ByteUtil.getUnsignedByte(buffer));
+        short maskLength = ((short) ByteUtil.getUnsignedByte(buffer));
         byte actionAndAuthoritative = buffer.get();
         Action act = Action.forValue(actionAndAuthoritative >> 5);
         if (act == null) {
@@ -52,7 +52,7 @@ public final class MappingRecordSerializer {
         buffer.position(buffer.position() + Length.RESERVED);
         builder.setMapVersion(buffer.getShort());
 
-        LispAddressSerializerContext ctx = new LispAddressSerializerContext(builder.getMaskLength());
+        LispAddressSerializerContext ctx = new LispAddressSerializerContext(maskLength);
         builder.setEid(LispAddressSerializer.getInstance().deserializeEid(buffer, ctx));
 
         builder.setLocatorRecord(new ArrayList<LocatorRecord>());
index 4fd885e030766c2da21a5fd0c2192bd42feffead..8ca9955204744fa131984baf80895f0e324c493c 100644 (file)
@@ -166,9 +166,6 @@ module odl-lisp-proto {
             leaf recordTtl {
                 type int32;
             }
-            leaf maskLength {
-                type uint8;
-            }
             leaf mapVersion {
                 type int16;
             }
index f2ec8ef025ee439146d5f4ef9f59431982775fa2..87fcbc2af9574f091af2d5504e73941a081afbdb 100644 (file)
@@ -21,6 +21,7 @@ import org.junit.Test;
 import org.opendaylight.lispflowmapping.lisp.serializer.MapNotifySerializer;
 import org.opendaylight.lispflowmapping.lisp.serializer.exception.LispSerializationException;
 import org.opendaylight.lispflowmapping.lisp.util.LispAddressUtil;
+import org.opendaylight.lispflowmapping.lisp.util.MaskUtil;
 import org.opendaylight.lispflowmapping.tools.junit.BaseTestCase;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.lfm.lisp.proto.rev151105.MapNotify;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.lfm.lisp.proto.rev151105.locatorrecords.LocatorRecord;
@@ -319,8 +320,8 @@ public class MapNotifySerializationTest extends BaseTestCase {
         assertEquals(10, record0.getRecordTtl().intValue());
         assertEquals(13, record3.getRecordTtl().intValue());
 
-        assertEquals(32, record0.getMaskLength().intValue());
-        assertEquals(23, record1.getMaskLength().intValue());
+        assertEquals(32, MaskUtil.getMaskForAddress(record0.getEid().getAddress()));
+        assertEquals(23, MaskUtil.getMaskForAddress(record1.getEid().getAddress()));
 
         assertEquals(Action.NoAction, record0.getAction());
         assertEquals(Action.SendMapRequest, record1.getAction());
index dc446a8e732580cba50744c28bc58019ef6e046a..4a091c9035a099c0575b5eed297b2cbf0ce02a0d 100644 (file)
@@ -22,6 +22,7 @@ import org.opendaylight.lispflowmapping.lisp.serializer.MapRegisterSerializer;
 import org.opendaylight.lispflowmapping.lisp.serializer.MapRegisterSerializer.Length;
 import org.opendaylight.lispflowmapping.lisp.serializer.exception.LispSerializationException;
 import org.opendaylight.lispflowmapping.lisp.util.LispAddressUtil;
+import org.opendaylight.lispflowmapping.lisp.util.MaskUtil;
 import org.opendaylight.lispflowmapping.tools.junit.BaseTestCase;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.lfm.lisp.proto.rev151105.MapRegister;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.lfm.lisp.proto.rev151105.SiteId;
@@ -112,7 +113,6 @@ public class MapRegisterSerializationTest extends BaseTestCase {
 
         recordBuilder.setAction(Action.NoAction);
         recordBuilder.setMapVersion((short) 0);
-        recordBuilder.setMaskLength((short) 0);
         recordBuilder.setRecordTtl(0);
         mrBuilder.setNonce(6161616161L);
         mrBuilder.setKeyId((short) 0x0001);
@@ -365,8 +365,8 @@ public class MapRegisterSerializationTest extends BaseTestCase {
         assertEquals(10, record0.getRecordTtl().intValue());
         assertEquals(13, record3.getRecordTtl().intValue());
 
-        assertEquals(32, record0.getMaskLength().intValue());
-        assertEquals(23, record1.getMaskLength().intValue());
+        assertEquals(32, MaskUtil.getMaskForAddress(record0.getEid().getAddress()));
+        assertEquals(23, MaskUtil.getMaskForAddress(record1.getEid().getAddress()));
 
         assertEquals(Action.NoAction, record0.getAction());
         assertEquals(Action.SendMapRequest, record1.getAction());
index eb7500d03cc3116c6b708dc008d11494410a350f..8852dbf4ca553afd8a678f70547d6e0dffae83d4 100644 (file)
@@ -19,6 +19,7 @@ import org.junit.Ignore;
 import org.junit.Test;
 import org.opendaylight.lispflowmapping.lisp.serializer.MapReplySerializer;
 import org.opendaylight.lispflowmapping.lisp.util.LispAddressUtil;
+import org.opendaylight.lispflowmapping.lisp.util.MaskUtil;
 import org.opendaylight.lispflowmapping.tools.junit.BaseTestCase;
 import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.lisp.address.types.rev151105.lisp.address.address.Ipv4;
 import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.lisp.address.types.rev151105.lisp.address.address.Ipv4Prefix;
@@ -97,8 +98,10 @@ public class MapReplySerializationTest extends BaseTestCase {
         assertEquals(Action.NativelyForward, mr.getMappingRecordItem().get(1).getMappingRecord().getAction());
         assertEquals(0, mr.getMappingRecordItem().get(0).getMappingRecord().getMapVersion().shortValue());
         assertEquals(2, mr.getMappingRecordItem().get(1).getMappingRecord().getMapVersion().shortValue());
-        assertEquals(32, mr.getMappingRecordItem().get(0).getMappingRecord().getMaskLength().shortValue());
-        assertEquals(16, mr.getMappingRecordItem().get(1).getMappingRecord().getMaskLength().shortValue());
+        assertEquals(32, MaskUtil.getMaskForAddress(mr.getMappingRecordItem().get(0).getMappingRecord()
+                .getEid().getAddress()));
+        assertEquals(16, MaskUtil.getMaskForAddress(mr.getMappingRecordItem().get(1).getMappingRecord()
+                .getEid().getAddress()));
         assertEquals(2, mr.getMappingRecordItem().get(0).getMappingRecord().getRecordTtl().byteValue());
         assertEquals(0, mr.getMappingRecordItem().get(1).getMappingRecord().getRecordTtl().byteValue());
         assertEquals("1:2:3:4:5:6:7:8", ((Ipv6) mr.getMappingRecordItem().get(0).getMappingRecord()
@@ -177,8 +180,10 @@ public class MapReplySerializationTest extends BaseTestCase {
         assertEquals(Action.NativelyForward, mr.getMappingRecordItem().get(1).getMappingRecord().getAction());
         assertEquals(0, mr.getMappingRecordItem().get(0).getMappingRecord().getMapVersion().shortValue());
         assertEquals(2, mr.getMappingRecordItem().get(1).getMappingRecord().getMapVersion().shortValue());
-        assertEquals(32, mr.getMappingRecordItem().get(0).getMappingRecord().getMaskLength().shortValue());
-        assertEquals(16, mr.getMappingRecordItem().get(1).getMappingRecord().getMaskLength().shortValue());
+        assertEquals(32, MaskUtil.getMaskForAddress(mr.getMappingRecordItem().get(0).getMappingRecord()
+                .getEid().getAddress()));
+        assertEquals(16, MaskUtil.getMaskForAddress(mr.getMappingRecordItem().get(1).getMappingRecord()
+                .getEid().getAddress()));
         assertEquals(1, mr.getMappingRecordItem().get(0).getMappingRecord().getRecordTtl().byteValue());
         assertEquals(0, mr.getMappingRecordItem().get(1).getMappingRecord().getRecordTtl().byteValue());
     }
index 8ff9099843f3198ebae9ebee45012a17b6e3762a..7a9cbd6ff1dbd7fce4e9a81a52fb06e5df2c0705 100644 (file)
@@ -19,6 +19,7 @@ import java.util.ArrayList;
 import org.junit.Test;
 import org.opendaylight.lispflowmapping.lisp.serializer.MapRequestSerializer;
 import org.opendaylight.lispflowmapping.lisp.util.LispAddressUtil;
+import org.opendaylight.lispflowmapping.lisp.util.MaskUtil;
 import org.opendaylight.lispflowmapping.tools.junit.BaseTestCase;
 import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.lisp.address.types.rev151105.NoAddressAfi;
 import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.lisp.address.types.rev151105.lisp.address.address.Ipv4;
@@ -187,7 +188,7 @@ public class MapRequestSerializationTest extends BaseTestCase {
         assertEquals(false, record.isAuthoritative());
         assertEquals(Action.NoAction, record.getAction());
         assertEquals(0, record.getMapVersion().shortValue());
-        assertEquals(32, record.getMaskLength().shortValue());
+        assertEquals(32, MaskUtil.getMaskForAddress(record.getEid().getAddress()));
         assertEquals(2, record.getRecordTtl().byteValue());
         assertEquals("10.10.10.10",
                 ((Ipv4) record.getLocatorRecord().get(0).getRloc().getAddress()).getIpv4().getValue());
index f3be91732c3c9f19fa732d37bc7df6e1c92fd41d..ef74593c2e89b405db4c35ad6be81cfd3e77794c 100644 (file)
@@ -136,7 +136,6 @@ public class LispSouthboundServiceTest extends BaseTestCase {
         mappingRecordBuilder.setLocatorRecord(new ArrayList<LocatorRecord>());
         mappingRecordBuilder.setRecordTtl(10);
         mappingRecordBuilder.setMapVersion((short) 0);
-        mappingRecordBuilder.setMaskLength((short) 0);
         mappingRecordBuilder.setAction(Action.NativelyForward);
         mappingRecordBuilder.setAuthoritative(false);
         // eidToLocatorBuilder.setPrefix(new LispIpv4Address(0));