Bump upstreams for 2022.09 Chlorine
[ovsdb.git] / hwvtepsouthbound / hwvtepsouthbound-impl / src / test / java / org / opendaylight / ovsdb / hwvtepsouthbound / TestBuilders.java
index 63ac489213f8c67c1a7793da7f57dbbce0570a07..5886ef7f745635710f00ae0897069b9e6f86cb00 100644 (file)
@@ -5,21 +5,19 @@
  * 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.ovsdb.hwvtepsouthbound;
 
 import java.util.ArrayList;
 import java.util.Arrays;
 import java.util.List;
+import java.util.Map;
 import java.util.UUID;
-import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.inet.types.rev130715.IpAddressBuilder;
+import org.opendaylight.ovsdb.hwvtepsouthbound.transact.TransactUtils;
 import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.yang.types.rev130715.MacAddress;
 import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.yang.types.rev130715.Uuid;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.ovsdb.hwvtep.rev150901.HwvtepGlobalAugmentation;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.ovsdb.hwvtep.rev150901.HwvtepGlobalAugmentationBuilder;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.ovsdb.hwvtep.rev150901.HwvtepLogicalSwitchRef;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.ovsdb.hwvtep.rev150901.HwvtepNodeName;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.ovsdb.hwvtep.rev150901.HwvtepPhysicalLocatorAugmentation;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.ovsdb.hwvtep.rev150901.HwvtepPhysicalLocatorAugmentationBuilder;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.ovsdb.hwvtep.rev150901.HwvtepPhysicalLocatorRef;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.ovsdb.hwvtep.rev150901.hwvtep.global.attributes.LogicalSwitches;
@@ -27,17 +25,19 @@ import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.ovsdb.hw
 import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.ovsdb.hwvtep.rev150901.hwvtep.global.attributes.LogicalSwitchesKey;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.ovsdb.hwvtep.rev150901.hwvtep.global.attributes.RemoteMcastMacs;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.ovsdb.hwvtep.rev150901.hwvtep.global.attributes.RemoteMcastMacsBuilder;
+import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.ovsdb.hwvtep.rev150901.hwvtep.global.attributes.RemoteMcastMacsKey;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.ovsdb.hwvtep.rev150901.hwvtep.global.attributes.RemoteUcastMacs;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.ovsdb.hwvtep.rev150901.hwvtep.global.attributes.RemoteUcastMacsBuilder;
+import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.ovsdb.hwvtep.rev150901.hwvtep.global.attributes.RemoteUcastMacsKey;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.ovsdb.hwvtep.rev150901.hwvtep.physical.locator.set.attributes.LocatorSet;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.ovsdb.hwvtep.rev150901.hwvtep.physical.locator.set.attributes.LocatorSetBuilder;
 import org.opendaylight.yang.gen.v1.urn.tbd.params.xml.ns.yang.network.topology.rev131021.TpId;
 import org.opendaylight.yang.gen.v1.urn.tbd.params.xml.ns.yang.network.topology.rev131021.network.topology.topology.Node;
-import org.opendaylight.yang.gen.v1.urn.tbd.params.xml.ns.yang.network.topology.rev131021.network.topology.topology.NodeBuilder;
 import org.opendaylight.yang.gen.v1.urn.tbd.params.xml.ns.yang.network.topology.rev131021.network.topology.topology.node.TerminationPoint;
 import org.opendaylight.yang.gen.v1.urn.tbd.params.xml.ns.yang.network.topology.rev131021.network.topology.topology.node.TerminationPointBuilder;
 import org.opendaylight.yang.gen.v1.urn.tbd.params.xml.ns.yang.network.topology.rev131021.network.topology.topology.node.TerminationPointKey;
 import org.opendaylight.yangtools.yang.binding.InstanceIdentifier;
+import org.opendaylight.yangtools.yang.binding.util.BindingMap;
 
 public final class TestBuilders {
 
@@ -46,45 +46,29 @@ public final class TestBuilders {
     private TestBuilders() {
     }
 
-    public static List<LogicalSwitches> addLogicalSwitches(HwvtepGlobalAugmentationBuilder augmentationBuilder,
-            String[]... data) {
-        List<LogicalSwitches> logicalSwitcheses = new ArrayList<>();
-        for (String[] row : data) {
-            logicalSwitcheses.add(TestBuilders.buildLogicalSwitch(row));
-        }
-        augmentationBuilder.setLogicalSwitches(logicalSwitcheses);
-        return logicalSwitcheses;
+    public static Map<LogicalSwitchesKey, LogicalSwitches> logicalSwitches(String[]... data) {
+        return Arrays.stream(data).map(TestBuilders::buildLogicalSwitch).collect(BindingMap.toOrderedMap());
     }
 
-    public static List<RemoteMcastMacs> addRemoteMcastMacs(InstanceIdentifier<Node> iid,
-                                          HwvtepGlobalAugmentationBuilder augmentationBuilder, String[]... data) {
-        List<RemoteMcastMacs> remoteMcastMacses = new ArrayList<>();
-        for (String[] row : data) {
-            String[] teps = Arrays.copyOfRange(row, 2, row.length);
-            remoteMcastMacses.add(TestBuilders.buildRemoteMcastMacs(iid, row[0], row[1], teps));
-        }
-        augmentationBuilder.setRemoteMcastMacs(remoteMcastMacses);
-        return remoteMcastMacses;
+    public static Map<RemoteMcastMacsKey, RemoteMcastMacs> remoteMcastMacs(InstanceIdentifier<Node> iid,
+                                                                           String[]... data) {
+        return Arrays.stream(data)
+            .map(row -> TestBuilders.buildRemoteMcastMacs(iid, row[0], row[1], Arrays.copyOfRange(row, 2, row.length)))
+            .collect(BindingMap.toOrderedMap());
     }
 
-    public static List<RemoteUcastMacs> addRemoteUcastMacs(InstanceIdentifier<Node> iid,
-                                                           HwvtepGlobalAugmentationBuilder augmentationBuilder,
-                                                           String[]... data) {
-        List<RemoteUcastMacs> remoteUcastMacses = new ArrayList<>();
-        for (String[] row : data) {
-            remoteUcastMacses.add(TestBuilders.buildRemoteUcastMacs(iid, row[0], row[1], row[2], row[3]));
-        }
-        augmentationBuilder.setRemoteUcastMacs(remoteUcastMacses);
-        return remoteUcastMacses;
+    public static Map<RemoteUcastMacsKey, RemoteUcastMacs> remoteUcastMacs(InstanceIdentifier<Node> iid,
+                                                                           String[]... data) {
+        return Arrays.stream(data)
+            .map(row -> TestBuilders.buildRemoteUcastMacs(iid, row[0], row[1], row[2], row[3]))
+            .collect(BindingMap.toOrderedMap());
     }
 
-    public static void addGlobalTerminationPoints(NodeBuilder nodeBuilder, InstanceIdentifier<Node> nodeIid,
-                                                  String[]... data) {
-        List<TerminationPoint> terminationPoints = new ArrayList<>();
-        for (String[] row : data) {
-            terminationPoints.add(TestBuilders.buildTerminationPoint(nodeIid, row[0]));
-        }
-        nodeBuilder.setTerminationPoint(terminationPoints);
+    public static Map<TerminationPointKey, TerminationPoint> globalTerminationPoints(InstanceIdentifier<Node> nodeIid,
+                                                                                     String[]... data) {
+        return Arrays.stream(data)
+            .map(row -> TestBuilders.buildTerminationPoint(nodeIid, row[0]))
+            .collect(BindingMap.toOrderedMap());
     }
 
     public static HwvtepLogicalSwitchRef buildLogicalSwitchesRef(InstanceIdentifier<Node> nodeIid,
@@ -97,7 +81,7 @@ public final class TestBuilders {
     public static RemoteUcastMacs buildRemoteUcastMacs(InstanceIdentifier<Node> nodeIid, String vmMac,
                                                        String vmip, String tepIp, String logicalSwitchName) {
         RemoteUcastMacsBuilder ucmlBuilder = new RemoteUcastMacsBuilder();
-        ucmlBuilder.setIpaddr(IpAddressBuilder.getDefaultInstance(vmip));
+        ucmlBuilder.setIpaddr(TransactUtils.parseIpAddress(vmip));
         ucmlBuilder.setMacEntryKey(new MacAddress(vmMac));
         ucmlBuilder.setMacEntryUuid(getUUid(vmMac));
         ucmlBuilder.setLocatorRef(buildLocatorRef(nodeIid, tepIp));
@@ -111,12 +95,11 @@ public final class TestBuilders {
         if (nodeIid != null) {
             tpBuilder.withKey(tpKey);
             tpBuilder.setTpId(tpKey.getTpId());
-            HwvtepPhysicalLocatorAugmentationBuilder tpAugmentationBuilder =
-                    new HwvtepPhysicalLocatorAugmentationBuilder();
-            tpAugmentationBuilder.setPhysicalLocatorUuid(getUUid(ip));
-            tpAugmentationBuilder.setEncapsulationType(HwvtepSouthboundMapper.createEncapsulationType(VXLAN_OVER_IPV4));
-            tpAugmentationBuilder.setDstIp(IpAddressBuilder.getDefaultInstance(ip));
-            tpBuilder.addAugmentation(HwvtepPhysicalLocatorAugmentation.class, tpAugmentationBuilder.build());
+            tpBuilder.addAugmentation(new HwvtepPhysicalLocatorAugmentationBuilder()
+                .setPhysicalLocatorUuid(getUUid(ip))
+                .setEncapsulationType(HwvtepSouthboundMapper.createEncapsulationType(VXLAN_OVER_IPV4))
+                .setDstIp(TransactUtils.parseIpAddress(ip))
+                .build());
         }
         return tpBuilder.build();
     }