Migrate pcep-base-parser to use ByteBufUtils
[bgpcep.git] / pcep / base-parser / src / main / java / org / opendaylight / protocol / pcep / parser / subobject / AsNumberCaseParser.java
index d3329e44d0dd4ef140f9fde2111f661d8080cc00..336ae5e0d070de2dda66b69d7b6ef9bc2ce4ba0c 100644 (file)
@@ -8,7 +8,6 @@
 package org.opendaylight.protocol.pcep.parser.subobject;
 
 import static com.google.common.base.Preconditions.checkArgument;
-import static org.opendaylight.protocol.util.ByteBufWriteUtil.writeShort;
 
 import io.netty.buffer.ByteBuf;
 import io.netty.buffer.Unpooled;
@@ -18,7 +17,7 @@ import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.rsvp.rev
 import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.rsvp.rev150820.basic.explicit.route.subobjects.subobject.type.AsNumberCase;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.rsvp.rev150820.basic.explicit.route.subobjects.subobject.type.AsNumberCaseBuilder;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.rsvp.rev150820.basic.explicit.route.subobjects.subobject.type.as.number._case.AsNumberBuilder;
-import org.opendaylight.yangtools.yang.common.Uint32;
+import org.opendaylight.yangtools.yang.common.netty.ByteBufUtils;
 
 final class AsNumberCaseParser {
     private static final int CONTENT_LENGTH = 2;
@@ -33,15 +32,19 @@ final class AsNumberCaseParser {
             throw new PCEPDeserializerException("Wrong length of array of bytes. Passed: " + buffer.readableBytes()
                 + "; Expected: " + CONTENT_LENGTH + ".");
         }
-        return new AsNumberCaseBuilder().setAsNumber(new AsNumberBuilder().setAsNumber(
-            new AsNumber(Uint32.valueOf(buffer.readUnsignedShort()))).build()).build();
+        return new AsNumberCaseBuilder()
+                .setAsNumber(new AsNumberBuilder()
+                    .setAsNumber(new AsNumber(ByteBufUtils.readUint16(buffer).toUint32()))
+                    .build())
+                .build();
     }
 
     static ByteBuf serializeSubobject(final AsNumberCase asCase) {
         final AsNumberSubobject asNumber = asCase.getAsNumber();
         final ByteBuf body = Unpooled.buffer(CONTENT_LENGTH);
-        checkArgument(asNumber.getAsNumber() != null, "AsNumber is mandatory.");
-        writeShort(asNumber.getAsNumber().getValue().shortValue(), body);
+        final AsNumber asn = asNumber.getAsNumber();
+        checkArgument(asn != null, "AsNumber is mandatory.");
+        body.writeShort(asn.getValue().shortValue());
         return body;
     }
 }