Merge "Bug 6097: Add xTR-ID and Site-ID to Map-Notify"
authorVina Ermagan <vermagan@cisco.com>
Wed, 13 Jul 2016 05:27:13 +0000 (05:27 +0000)
committerGerrit Code Review <gerrit@opendaylight.org>
Wed, 13 Jul 2016 05:27:13 +0000 (05:27 +0000)
mappingservice/implementation/src/test/java/org/opendaylight/lispflowmapping/implementation/lisp/MapServerTest.java
mappingservice/lisp-proto/src/main/java/org/opendaylight/lispflowmapping/lisp/serializer/MapNotifySerializer.java
mappingservice/lisp-proto/src/main/java/org/opendaylight/lispflowmapping/lisp/util/MapNotifyBuilderHelper.java

index a0fc1269588724140d879b8b12e3fb10bcf1cc93..77b971d8c499615068ec70fef147c759e2ad23bc 100644 (file)
@@ -473,6 +473,9 @@ public class MapServerTest {
 
     private static MapNotifyBuilder getDefaultMapNotifyBuilder(MapRegister mapRegister) {
         final MapNotifyBuilder mapNotifyBuilder = new MapNotifyBuilder()
+                .setXtrSiteIdPresent(mapRegister.isXtrSiteIdPresent())
+                .setSiteId(mapRegister.getSiteId())
+                .setXtrId(mapRegister.getXtrId())
                 .setNonce(mapRegister.getNonce())
                 .setKeyId(mapRegister.getKeyId())
                 .setMergeEnabled(mapRegister.isMergeEnabled())
index 901ccde594177bbeb2c05874e747dc3d9ae4c204..368becb835d065e9da2700868f9b425571518b94 100644 (file)
@@ -10,7 +10,6 @@ package org.opendaylight.lispflowmapping.lisp.serializer;
 import java.nio.ByteBuffer;
 import java.util.ArrayList;
 import java.util.List;
-
 import org.apache.commons.lang3.BooleanUtils;
 import org.opendaylight.lispflowmapping.lisp.serializer.exception.LispSerializationException;
 import org.opendaylight.lispflowmapping.lisp.util.ByteUtil;
@@ -53,7 +52,8 @@ public final class MapNotifySerializer {
         }
 
         ByteBuffer replyBuffer = ByteBuffer.allocate(size);
-        replyBuffer.put((byte) (MessageType.MapNotify.getIntValue() << 4));
+        replyBuffer.put((byte) ((byte) (MessageType.MapNotify.getIntValue() << 4) |
+                ByteUtil.boolToBit(BooleanUtils.isTrue(mapNotify.isXtrSiteIdPresent()), Flags.XTRSITEID)));
         replyBuffer.position(replyBuffer.position() + Length.RES);
         replyBuffer.put(ByteUtil.boolToBit(BooleanUtils.isTrue(mapNotify.isMergeEnabled()), Flags.MERGE_ENABLED));
         if (mapNotify.getMappingRecordItem() != null) {
index d2c35a4d07805967e3fb5f62fcc94550450b5bef..562f5b2877187200161b7154863fd83404338929 100644 (file)
@@ -42,6 +42,11 @@ public final class MapNotifyBuilderHelper {
         builder.setNonce(mapRegister.getNonce());
         builder.setKeyId(mapRegister.getKeyId());
         builder.setMergeEnabled(mapRegister.isMergeEnabled());
+        builder.setXtrSiteIdPresent(mapRegister.isXtrSiteIdPresent());
+        if (mapRegister.isXtrSiteIdPresent()) {
+            builder.setXtrId(mapRegister.getXtrId());
+            builder.setSiteId(mapRegister.getSiteId());
+        }
 
         byte[] authenticationData = mapRegister.getAuthenticationData();
         if (authenticationData != null) {