Mass-convert all compontents to use -no-zone addresses
[bgpcep.git] / bgp / extensions / linkstate / src / main / java / org / opendaylight / protocol / bgp / linkstate / impl / attribute / sr / binding / sid / sub / tlvs / Ipv4EroParser.java
index eb0cc7b57e44546fc06114fbab0e3246e2927ce4..65cc2c5f45d95abbb49eb54af4d43af2dc140cf6 100644 (file)
@@ -5,10 +5,10 @@
  * terms of the Eclipse Public License v1.0 which accompanies this distribution,
  * and is available at http://www.eclipse.org/legal/epl-v10.html
  */
-
 package org.opendaylight.protocol.bgp.linkstate.impl.attribute.sr.binding.sid.sub.tlvs;
 
-import com.google.common.base.Preconditions;
+import static com.google.common.base.Preconditions.checkArgument;
+
 import io.netty.buffer.ByteBuf;
 import io.netty.buffer.Unpooled;
 import org.opendaylight.protocol.bgp.linkstate.spi.BindingSubTlvsParser;
@@ -16,11 +16,16 @@ import org.opendaylight.protocol.bgp.linkstate.spi.BindingSubTlvsSerializer;
 import org.opendaylight.protocol.bgp.linkstate.spi.TlvUtil;
 import org.opendaylight.protocol.util.BitArray;
 import org.opendaylight.protocol.util.Ipv4Util;
-import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.inet.types.rev130715.Ipv4Address;
+import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.inet.types.rev130715.Ipv4AddressNoZone;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.bgp.linkstate.rev180329.ProtocolId;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.bgp.segment.routing.ext.rev151014.binding.sub.tlvs.BindingSubTlv;
+import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.bgp.segment.routing.ext.rev151014.binding.sub.tlvs.binding.sub.tlv.Ipv4EroBackupCase;
+import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.bgp.segment.routing.ext.rev151014.binding.sub.tlvs.binding.sub.tlv.Ipv4EroBackupCaseBuilder;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.bgp.segment.routing.ext.rev151014.binding.sub.tlvs.binding.sub.tlv.Ipv4EroCase;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.bgp.segment.routing.ext.rev151014.binding.sub.tlvs.binding.sub.tlv.Ipv4EroCaseBuilder;
+import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.bgp.segment.routing.ext.rev151014.binding.sub.tlvs.binding.sub.tlv.ipv4.ero._case.Ipv4Ero;
+import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.bgp.segment.routing.ext.rev151014.binding.sub.tlvs.binding.sub.tlv.ipv4.ero._case.Ipv4EroBuilder;
+import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.bgp.segment.routing.ext.rev151014.binding.sub.tlvs.binding.sub.tlv.ipv4.ero.backup._case.Ipv4EroBackupBuilder;
 
 public final class Ipv4EroParser implements BindingSubTlvsParser, BindingSubTlvsSerializer {
     private static final int ERO_IPV4 = 1163;
@@ -30,8 +35,7 @@ public final class Ipv4EroParser implements BindingSubTlvsParser, BindingSubTlvs
 
     @Override
     public BindingSubTlv parseSubTlv(final ByteBuf slice, final ProtocolId protocolId) {
-        final Ipv4EroCase ipv4Ero = parseIpv4EroCase(slice);
-        return new Ipv4EroCaseBuilder().setAddress(ipv4Ero.getAddress()).setLoose(ipv4Ero.isLoose()).build();
+        return parseIpv4EroCase(slice);
     }
 
     @Override
@@ -41,22 +45,31 @@ public final class Ipv4EroParser implements BindingSubTlvsParser, BindingSubTlvs
 
     @Override
     public void serializeSubTlv(final BindingSubTlv bindingSubTlv, final ByteBuf aggregator) {
-        Preconditions.checkArgument(bindingSubTlv instanceof Ipv4EroCase, "Wrong BindingSubTlv instance expected", bindingSubTlv);
-        final Ipv4EroCase ipv4Ero = (Ipv4EroCase) bindingSubTlv;
+        checkArgument(bindingSubTlv instanceof Ipv4EroCase, "Wrong BindingSubTlv instance expected",
+            bindingSubTlv);
+        final Ipv4Ero ipv4Ero = ((Ipv4EroCase) bindingSubTlv).getIpv4Ero();
         TlvUtil.writeTLV(getType(), serializeIpv4EroCase(ipv4Ero.isLoose(), ipv4Ero.getAddress()), aggregator);
     }
 
     static Ipv4EroCase parseIpv4EroCase(final ByteBuf buffer) {
-        final Ipv4EroCaseBuilder builder = new Ipv4EroCaseBuilder();
+        final Ipv4EroBuilder builder = new Ipv4EroBuilder();
         final BitArray flags = BitArray.valueOf(buffer, FLAGS_SIZE);
         builder.setLoose(flags.get(LOOSE));
         buffer.skipBytes(RESERVED_ERO);
         builder.setAddress(Ipv4Util.addressForByteBuf(buffer));
-        return builder.build();
+        return new Ipv4EroCaseBuilder().setIpv4Ero(builder.build()).build();
     }
 
+    static Ipv4EroBackupCase parseIpv4EroBackupCase(final ByteBuf buffer) {
+        final Ipv4EroBackupBuilder builder = new Ipv4EroBackupBuilder();
+        final BitArray flags = BitArray.valueOf(buffer, FLAGS_SIZE);
+        builder.setLoose(flags.get(LOOSE));
+        buffer.skipBytes(RESERVED_ERO);
+        builder.setAddress(Ipv4Util.addressForByteBuf(buffer));
+        return new Ipv4EroBackupCaseBuilder().setIpv4EroBackup(builder.build()).build();
+    }
 
-    static ByteBuf serializeIpv4EroCase(final Boolean loose, final Ipv4Address address) {
+    static ByteBuf serializeIpv4EroCase(final Boolean loose, final Ipv4AddressNoZone address) {
         final ByteBuf buffer = Unpooled.buffer();
         serializeEroFlags(buffer, loose);
         buffer.writeBytes(Ipv4Util.byteBufForAddress(address));