Magnesium platform upgrade
[lispflowmapping.git] / mappingservice / lisp-proto / src / main / java / org / opendaylight / lispflowmapping / lisp / serializer / LocatorRecordSerializer.java
index 9449e935dca2ca5fda7a3b887122a378a9a5e158..8d736d8e4dd6e867c754966fb3a2d6b1c613828f 100644 (file)
@@ -7,6 +7,8 @@
  */
 package org.opendaylight.lispflowmapping.lisp.serializer;
 
+import static org.opendaylight.yangtools.yang.common.UintConversions.fromJava;
+
 import java.nio.ByteBuffer;
 
 import org.apache.commons.lang3.BooleanUtils;
@@ -18,7 +20,7 @@ import org.opendaylight.yang.gen.v1.urn.opendaylight.lfm.lisp.proto.rev151105.lo
 import org.opendaylight.yang.gen.v1.urn.opendaylight.lfm.lisp.proto.rev151105.locatorrecords.LocatorRecordBuilder;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.lfm.lisp.proto.rev151105.rloc.container.Rloc;
 
-public class LocatorRecordSerializer {
+public final class LocatorRecordSerializer {
 
     private static final LocatorRecordSerializer INSTANCE = new LocatorRecordSerializer();
 
@@ -32,10 +34,10 @@ public class LocatorRecordSerializer {
 
     protected LocatorRecord deserialize(ByteBuffer buffer) {
         LocatorRecordBuilder builder = new LocatorRecordBuilder();
-        builder.setPriority((short) ByteUtil.getUnsignedByte(buffer));
-        builder.setWeight((short) ByteUtil.getUnsignedByte(buffer));
-        builder.setMulticastPriority((short) ByteUtil.getUnsignedByte(buffer));
-        builder.setMulticastWeight((short) ByteUtil.getUnsignedByte(buffer));
+        builder.setPriority(fromJava((short) ByteUtil.getUnsignedByte(buffer)));
+        builder.setWeight(fromJava((short) ByteUtil.getUnsignedByte(buffer)));
+        builder.setMulticastPriority(fromJava((short) ByteUtil.getUnsignedByte(buffer)));
+        builder.setMulticastWeight(fromJava((short) ByteUtil.getUnsignedByte(buffer)));
         byte flags = (byte) buffer.getShort();
         builder.setLocalLocator(ByteUtil.extractBit(flags, Flags.LOCAL_LOCATOR));
         builder.setRlocProbed(ByteUtil.extractBit(flags, Flags.RLOC_PROBED));
@@ -52,9 +54,9 @@ public class LocatorRecordSerializer {
         replyBuffer.put((byte) NumberUtil.asShort(record.getMulticastPriority()));
         replyBuffer.put((byte) NumberUtil.asShort(record.getMulticastWeight()));
         replyBuffer.position(replyBuffer.position() + Length.UNUSED_FLAGS);
-        replyBuffer.put((byte) (ByteUtil.boolToBit(BooleanUtils.isTrue(record.isLocalLocator()), Flags.LOCAL_LOCATOR) | //
-                ByteUtil.boolToBit(BooleanUtils.isTrue(record.isRlocProbed()), Flags.RLOC_PROBED) | //
-                ByteUtil.boolToBit(BooleanUtils.isTrue(record.isRouted()), Flags.ROUTED)));
+        replyBuffer.put((byte) (ByteUtil.boolToBit(BooleanUtils.isTrue(record.isLocalLocator()), Flags.LOCAL_LOCATOR)
+                | ByteUtil.boolToBit(BooleanUtils.isTrue(record.isRlocProbed()), Flags.RLOC_PROBED)
+                ByteUtil.boolToBit(BooleanUtils.isTrue(record.isRouted()), Flags.ROUTED)));
         LispAddressSerializer.getInstance().serialize(replyBuffer, record.getRloc());
     }