Use BindingMap to reduce warnings about deprecated use of lists.
Change-Id: Ib47f8b3de614aae8e56af35533eb4934ba047c0b
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
package org.opendaylight.ovsdb.hwvtepsouthbound.reconciliation.configuration;
import com.google.common.collect.Sets;
-import java.util.ArrayList;
import java.util.HashSet;
-import java.util.List;
import java.util.Map;
import java.util.Set;
-import java.util.stream.Collectors;
import org.opendaylight.mdsal.binding.api.DataTreeModification;
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.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.yangtools.yang.binding.InstanceIdentifier;
+import org.opendaylight.yangtools.yang.binding.util.BindingMap;
public final class GlobalConfigOperationalChangeGetter {
static void fillLocalMacsToBeRemoved(final HwvtepGlobalAugmentationBuilder oldAugmentation, final Node configNode,
final Node opNode) {
Set<String> logicalSwitchNamesToBeRemoved = getLogicalSwitchesToBeRemoved(configNode, opNode);
- List<LocalUcastMacs> localUcastMacsToBeRemoved = getLocalUcastMacsToBeRemoved(opNode,
- logicalSwitchNamesToBeRemoved);
- List<LocalMcastMacs> localMcastMacsToBeRemoved = getLocalMcastMacsToBeRemoved(opNode,
- logicalSwitchNamesToBeRemoved);
+ var localUcastMacsToBeRemoved = getLocalUcastMacsToBeRemoved(opNode, logicalSwitchNamesToBeRemoved);
+ var localMcastMacsToBeRemoved = getLocalMcastMacsToBeRemoved(opNode, logicalSwitchNamesToBeRemoved);
oldAugmentation.setLocalUcastMacs(localUcastMacsToBeRemoved);
oldAugmentation.setLocalMcastMacs(localMcastMacsToBeRemoved);
}
- static List<LocalUcastMacs> getLocalUcastMacsToBeRemoved(final Node opNode, final Set<String> removedSwitchNames) {
+ static Map<LocalUcastMacsKey, LocalUcastMacs> getLocalUcastMacsToBeRemoved(final Node opNode,
+ final Set<String> removedSwitchNames) {
if (opNode == null || opNode.augmentation(HwvtepGlobalAugmentation.class) == null) {
return null;
}
.filter(mac -> removedSwitchNames.contains(
mac.getLogicalSwitchRef().getValue().firstKeyOf(
LogicalSwitches.class).getHwvtepNodeName().getValue()))
- .collect(Collectors.toList());
+ .collect(BindingMap.toOrderedMap());
}
- static List<LocalMcastMacs> getLocalMcastMacsToBeRemoved(final Node opNode, final Set<String> removedSwitchNames) {
+ static Map<LocalMcastMacsKey, LocalMcastMacs> getLocalMcastMacsToBeRemoved(final Node opNode,
+ final Set<String> removedSwitchNames) {
if (opNode == null || opNode.augmentation(HwvtepGlobalAugmentation.class) == null) {
return null;
}
.filter(mac -> removedSwitchNames.contains(
mac.getLogicalSwitchRef().getValue().firstKeyOf(
LogicalSwitches.class).getHwvtepNodeName().getValue()))
- .collect(Collectors.toList());
+ .collect(BindingMap.toOrderedMap());
}
static Set<String> getLogicalSwitchesToBeRemoved(final Node configNode, final Node opNode) {
} else {
newNodeBuilder = new NodeBuilder();
}
- newNodeBuilder.setTerminationPoint(new ArrayList<>());
+ newNodeBuilder.setTerminationPoint(Map.of());
return newNodeBuilder;
}
}
import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.ovsdb.hwvtep.rev150901.hwvtep.global.attributes.LogicalSwitches;
import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.ovsdb.hwvtep.rev150901.hwvtep.logical.router.attributes.AclBindings;
import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.ovsdb.hwvtep.rev150901.hwvtep.logical.router.attributes.AclBindingsBuilder;
+import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.ovsdb.hwvtep.rev150901.hwvtep.logical.router.attributes.AclBindingsKey;
import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.ovsdb.hwvtep.rev150901.hwvtep.logical.router.attributes.StaticRoutes;
import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.ovsdb.hwvtep.rev150901.hwvtep.logical.router.attributes.StaticRoutesBuilder;
import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.ovsdb.hwvtep.rev150901.hwvtep.logical.router.attributes.SwitchBindings;
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.yangtools.yang.binding.InstanceIdentifier;
+import org.opendaylight.yangtools.yang.binding.util.BindingMap;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
setStaticRoutes(router, lrBuilder);
setAclBindings(router, lrBuilder);
- List<LogicalRouters> routers = new ArrayList<>();
- routers.add(lrBuilder.build());
- connectionNode.addAugmentation(new HwvtepGlobalAugmentationBuilder().setLogicalRouters(routers).build());
+
+ connectionNode.addAugmentation(new HwvtepGlobalAugmentationBuilder()
+ .setLogicalRouters(BindingMap.of(lrBuilder.build()))
+ .build());
return connectionNode.build();
}
private void setAclBindings(final LogicalRouter router, final LogicalRoutersBuilder builder) {
if (isRouterHasAcls(router)) {
- List<AclBindings> bindings = new ArrayList<>();
+ var bindings = BindingMap.<AclBindingsKey, AclBindings>orderedBuilder();
for (Entry<String, UUID> entry : router.getAclBindingColumn().getData().entrySet()) {
AclBindingsBuilder aclBindingBuiler = new AclBindingsBuilder();
UUID aclUUID = entry.getValue();
aclBindingBuiler.setRouterInterface(new IpPrefix(new Ipv4Prefix(entry.getKey())));
bindings.add(aclBindingBuiler.build());
}
- builder.setAclBindings(bindings);
+ builder.setAclBindings(bindings.build());
}
}
}
package org.opendaylight.ovsdb.hwvtepsouthbound.transactions.md;
-import java.util.ArrayList;
-import java.util.List;
import java.util.Map;
import java.util.Map.Entry;
import java.util.Optional;
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.yangtools.yang.binding.InstanceIdentifier;
+import org.opendaylight.yangtools.yang.binding.util.BindingMap;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
lsBuilder.setTunnelKey(logicalSwitch.getTunnelKeyColumn().getData().iterator().next().toString());
}
- List<LogicalSwitches> switches = new ArrayList<>();
- switches.add(lsBuilder.build());
-
- connectionNode.addAugmentation(new HwvtepGlobalAugmentationBuilder().setLogicalSwitches(switches).build());
- return connectionNode.build();
+ return connectionNode
+ .addAugmentation(new HwvtepGlobalAugmentationBuilder()
+ .setLogicalSwitches(BindingMap.of(lsBuilder.build()))
+ .build())
+ .build();
}
}
package org.opendaylight.ovsdb.hwvtepsouthbound.transactions.md;
-import java.util.ArrayList;
-import java.util.List;
import java.util.Map;
import java.util.Map.Entry;
import java.util.Optional;
import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.inet.types.rev130715.Uri;
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.HwvtepGlobalAugmentationBuilder;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.ovsdb.hwvtep.rev150901.hwvtep.global.attributes.Managers;
import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.ovsdb.hwvtep.rev150901.hwvtep.global.attributes.ManagersBuilder;
import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.ovsdb.hwvtep.rev150901.hwvtep.global.attributes.managers.ManagerOtherConfigs;
import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.ovsdb.hwvtep.rev150901.hwvtep.global.attributes.managers.ManagerOtherConfigsBuilder;
+import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.ovsdb.hwvtep.rev150901.hwvtep.global.attributes.managers.ManagerOtherConfigsKey;
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.yangtools.yang.binding.InstanceIdentifier;
+import org.opendaylight.yangtools.yang.binding.util.BindingMap;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
}
ManagerOtherConfigsBuilder mocBuilder = new ManagerOtherConfigsBuilder();
if (manager.getOtherConfigColumn().getData() != null && !manager.getOtherConfigColumn().getData().isEmpty()) {
- List<ManagerOtherConfigs> mocList = new ArrayList<>();
+ var mocList = BindingMap.<ManagerOtherConfigsKey, ManagerOtherConfigs>orderedBuilder();
Map<String, String> ocList = manager.getOtherConfigColumn().getData();
for (Entry<String, String> otherConfigEntry : ocList.entrySet()) {
mocBuilder.setOtherConfigKey(otherConfigEntry.getKey());
mocBuilder.setOtherConfigValue(otherConfigEntry.getValue());
mocList.add(mocBuilder.build());
}
- managersBuilder.setManagerOtherConfigs(mocList);
+ managersBuilder.setManagerOtherConfigs(mocList.build());
}
managersBuilder.setManagerUuid(new Uuid(manager.getUuid().toString()));
- List<Managers> managersList = new ArrayList<>();
- managersList.add(managersBuilder.build());
- connectionNode.addAugmentation(new HwvtepGlobalAugmentationBuilder().setManagers(managersList).build());
- return connectionNode.build();
+ return connectionNode
+ .addAugmentation(new HwvtepGlobalAugmentationBuilder()
+ .setManagers(BindingMap.of(managersBuilder.build()))
+ .build())
+ .build();
// TODO Deletion of other config
}
}
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.DataObject;
import org.opendaylight.yangtools.yang.binding.InstanceIdentifier;
+import org.opendaylight.yangtools.yang.binding.util.BindingMap;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
final HwvtepPhysicalPortAugmentationBuilder tpAugmentationBuilder) {
Map<Long, UUID> vlanBindings = portUpdate.getVlanBindingsColumn().getData();
if (vlanBindings != null && !vlanBindings.isEmpty()) {
- List<VlanBindings> vlanBindingsList = new ArrayList<>();
+ var vlanBindingsList = BindingMap.<VlanBindingsKey, VlanBindings>orderedBuilder();
for (Map.Entry<Long, UUID> vlanBindingEntry : vlanBindings.entrySet()) {
Long vlanBindingKey = vlanBindingEntry.getKey();
UUID vlanBindingValue = vlanBindingEntry.getValue();
vlanBindingsList.add(createVlanBinding(vlanBindingKey, vlanBindingValue));
}
}
- tpAugmentationBuilder.setVlanBindings(vlanBindingsList);
+ tpAugmentationBuilder.setVlanBindings(vlanBindingsList.build());
}
}
final PhysicalPort portUpdate) {
if (portUpdate.getPortFaultStatusColumn() != null && portUpdate.getPortFaultStatusColumn().getData() != null
&& !portUpdate.getPortFaultStatusColumn().getData().isEmpty()) {
- List<PortFaultStatus> portFaultStatusLst = new ArrayList<>();
- for (String portFaultStatus : portUpdate.getPortFaultStatusColumn().getData()) {
- portFaultStatusLst.add(new PortFaultStatusBuilder().withKey(new PortFaultStatusKey(portFaultStatus))
- .setPortFaultStatusKey(portFaultStatus).build());
- }
+ var portFaultStatusLst = portUpdate.getPortFaultStatusColumn().getData().stream()
+ .map(portFaultStatus -> new PortFaultStatusBuilder().setPortFaultStatusKey(portFaultStatus).build())
+ .collect(BindingMap.toOrderedMap());
tpAugmentationBuilder.setPortFaultStatus(portFaultStatusLst);
}
}
import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.ovsdb.hwvtep.rev150901.PhysicalSwitchAugmentationBuilder;
import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.ovsdb.hwvtep.rev150901.hwvtep.global.attributes.Switches;
import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.ovsdb.hwvtep.rev150901.hwvtep.global.attributes.SwitchesBuilder;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.ovsdb.hwvtep.rev150901.hwvtep.physical._switch.attributes.ManagementIps;
import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.ovsdb.hwvtep.rev150901.hwvtep.physical._switch.attributes.ManagementIpsBuilder;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.ovsdb.hwvtep.rev150901.hwvtep.physical._switch.attributes.ManagementIpsKey;
import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.ovsdb.hwvtep.rev150901.hwvtep.physical._switch.attributes.SwitchFaultStatus;
import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.ovsdb.hwvtep.rev150901.hwvtep.physical._switch.attributes.SwitchFaultStatusBuilder;
import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.ovsdb.hwvtep.rev150901.hwvtep.physical._switch.attributes.SwitchFaultStatusKey;
import org.opendaylight.yang.gen.v1.urn.tbd.params.xml.ns.yang.network.topology.rev131021.network.topology.topology.NodeKey;
import org.opendaylight.yangtools.yang.binding.DataObject;
import org.opendaylight.yangtools.yang.binding.InstanceIdentifier;
+import org.opendaylight.yangtools.yang.binding.util.BindingMap;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
PhysicalSwitch phySwitch) {
if (phySwitch.getManagementIpsColumn() != null && phySwitch.getManagementIpsColumn().getData() != null
&& !phySwitch.getManagementIpsColumn().getData().isEmpty()) {
- List<ManagementIps> mgmtIps = new ArrayList<>();
- for (String mgmtIp : phySwitch.getManagementIpsColumn().getData()) {
- IpAddress ip = IpAddressBuilder.getDefaultInstance(mgmtIp);
- mgmtIps.add(
- new ManagementIpsBuilder().withKey(new ManagementIpsKey(ip)).setManagementIpsKey(ip).build());
- }
+ var mgmtIps = phySwitch.getManagementIpsColumn().getData().stream()
+ .map(ip -> new ManagementIpsBuilder()
+ .setManagementIpsKey(IpAddressBuilder.getDefaultInstance(ip))
+ .build())
+ .collect(BindingMap.toMap());
psAugmentationBuilder.setManagementIps(mgmtIps);
}
}
PhysicalSwitch phySwitch) {
if (phySwitch.getSwitchFaultStatusColumn() != null && phySwitch.getSwitchFaultStatusColumn().getData() != null
&& !phySwitch.getSwitchFaultStatusColumn().getData().isEmpty()) {
- List<SwitchFaultStatus> switchFaultStatusLst = new ArrayList<>();
- for (String switchFaultStatus : phySwitch.getSwitchFaultStatusColumn().getData()) {
- switchFaultStatusLst
- .add(new SwitchFaultStatusBuilder().withKey(new SwitchFaultStatusKey(switchFaultStatus))
- .setSwitchFaultStatusKey(switchFaultStatus).build());
- }
+ var switchFaultStatusLst = phySwitch.getSwitchFaultStatusColumn().getData().stream()
+ .map(switchFaultStatus -> new SwitchFaultStatusBuilder()
+ .setSwitchFaultStatusKey(switchFaultStatus)
+ .build())
+ .collect(BindingMap.toOrderedMap());
psAugmentationBuilder.setSwitchFaultStatus(switchFaultStatusLst);
}
}
import static java.util.Objects.requireNonNull;
-import java.util.List;
import java.util.Map;
import java.util.Optional;
-import java.util.stream.Collectors;
import org.opendaylight.mdsal.binding.api.ReadWriteTransaction;
import org.opendaylight.mdsal.common.api.LogicalDatastoreType;
import org.opendaylight.ovsdb.hwvtepsouthbound.HwvtepConnectionInstance;
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.physical._switch.attributes.Tunnels;
import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.ovsdb.hwvtep.rev150901.hwvtep.physical._switch.attributes.TunnelsBuilder;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.ovsdb.hwvtep.rev150901.hwvtep.tunnel.attributes.BfdLocalConfigs;
import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.ovsdb.hwvtep.rev150901.hwvtep.tunnel.attributes.BfdLocalConfigsBuilder;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.ovsdb.hwvtep.rev150901.hwvtep.tunnel.attributes.BfdParams;
import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.ovsdb.hwvtep.rev150901.hwvtep.tunnel.attributes.BfdParamsBuilder;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.ovsdb.hwvtep.rev150901.hwvtep.tunnel.attributes.BfdRemoteConfigs;
import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.ovsdb.hwvtep.rev150901.hwvtep.tunnel.attributes.BfdRemoteConfigsBuilder;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.ovsdb.hwvtep.rev150901.hwvtep.tunnel.attributes.BfdStatus;
import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.ovsdb.hwvtep.rev150901.hwvtep.tunnel.attributes.BfdStatusBuilder;
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.node.TerminationPoint;
import org.opendaylight.yangtools.yang.binding.InstanceIdentifier;
+import org.opendaylight.yangtools.yang.binding.util.BindingMap;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
private static void setBfdLocalConfigs(TunnelsBuilder tunnelsBuilder, Tunnel tunnel) {
Map<String, String> localConfigs = tunnel.getBfdConfigLocalColumn().getData();
if (localConfigs != null && !localConfigs.isEmpty()) {
- List<BfdLocalConfigs> localConfigsList = localConfigs.entrySet().stream().map(
- entry -> new BfdLocalConfigsBuilder().setBfdLocalConfigKey(entry.getKey())
- .setBfdLocalConfigValue(entry.getValue()).build()).collect(Collectors.toList());
-
+ var localConfigsList = localConfigs.entrySet().stream()
+ .map(entry -> new BfdLocalConfigsBuilder()
+ .setBfdLocalConfigKey(entry.getKey())
+ .setBfdLocalConfigValue(entry.getValue())
+ .build())
+ .collect(BindingMap.toMap());
tunnelsBuilder.setBfdLocalConfigs(localConfigsList);
}
}
private static void setBfdRemoteConfigs(TunnelsBuilder tunnelsBuilder, Tunnel tunnel) {
Map<String, String> remoteConfigs = tunnel.getBfdConfigRemoteColumn().getData();
if (remoteConfigs != null && !remoteConfigs.isEmpty()) {
- List<BfdRemoteConfigs> remoteConfigsList = remoteConfigs.entrySet().stream().map(
- entry -> new BfdRemoteConfigsBuilder().setBfdRemoteConfigKey(entry.getKey())
- .setBfdRemoteConfigValue(entry.getValue()).build()).collect(Collectors.toList());
-
+ var remoteConfigsList = remoteConfigs.entrySet().stream()
+ .map(entry -> new BfdRemoteConfigsBuilder()
+ .setBfdRemoteConfigKey(entry.getKey())
+ .setBfdRemoteConfigValue(entry.getValue())
+ .build())
+ .collect(BindingMap.toMap());
tunnelsBuilder.setBfdRemoteConfigs(remoteConfigsList);
}
}
private static void setBfdParams(TunnelsBuilder tunnelsBuilder, Tunnel tunnel) {
Map<String, String> params = tunnel.getBfdParamsColumn().getData();
if (params != null && !params.isEmpty()) {
- List<BfdParams> paramsList = params.entrySet().stream().map(
- entry -> new BfdParamsBuilder().setBfdParamKey(entry.getKey())
- .setBfdParamValue(entry.getValue()).build()).collect(Collectors.toList());
-
+ var paramsList = params.entrySet().stream()
+ .map(entry -> new BfdParamsBuilder()
+ .setBfdParamKey(entry.getKey())
+ .setBfdParamValue(entry.getValue())
+ .build())
+ .collect(BindingMap.toMap());
tunnelsBuilder.setBfdParams(paramsList);
}
}
private static void setBfdStatus(TunnelsBuilder tunnelsBuilder, Tunnel tunnel) {
Map<String, String> status = tunnel.getBfdStatusColumn().getData();
if (status != null && !status.isEmpty()) {
- List<BfdStatus> statusList = status.entrySet().stream().map(
- entry -> new BfdStatusBuilder().setBfdStatusKey(entry.getKey())
- .setBfdStatusValue(entry.getValue()).build()).collect(Collectors.toList());
-
+ var statusList = status.entrySet().stream()
+ .map(entry -> new BfdStatusBuilder()
+ .setBfdStatusKey(entry.getKey())
+ .setBfdStatusValue(entry.getValue())
+ .build())
+ .collect(BindingMap.toMap());
tunnelsBuilder.setBfdStatus(statusList);
}
}
package org.opendaylight.ovsdb.hwvtepsouthbound.transactions.md;
-import java.util.ArrayList;
import java.util.Collection;
-import java.util.List;
import java.util.Map;
import org.opendaylight.mdsal.binding.api.ReadWriteTransaction;
import org.opendaylight.mdsal.common.api.LogicalDatastoreType;
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.yangtools.yang.binding.InstanceIdentifier;
+import org.opendaylight.yangtools.yang.binding.util.BindingMap;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
//Update node with UcastMacsLocal reference
NodeBuilder connectionNode = new NodeBuilder();
connectionNode.setNodeId(getOvsdbConnectionInstance().getNodeId());
- List<LocalUcastMacs> umclList = new ArrayList<>();
- ucml.forEach(mac -> umclList.add(buildLocalUcastMac(mac)));
+ var umclList = ucml.stream().map(this::buildLocalUcastMac).collect(BindingMap.toOrderedMap());
connectionNode.addAugmentation(new HwvtepGlobalAugmentationBuilder().setLocalUcastMacs(umclList).build());
return connectionNode.build();
}
package org.opendaylight.ovsdb.hwvtepsouthbound.transactions.md;
-import java.util.ArrayList;
import java.util.Collection;
-import java.util.List;
import java.util.Map;
import org.opendaylight.mdsal.binding.api.ReadWriteTransaction;
import org.opendaylight.mdsal.common.api.LogicalDatastoreType;
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.yangtools.yang.binding.InstanceIdentifier;
+import org.opendaylight.yangtools.yang.binding.util.BindingMap;
public class HwvtepUcastMacsRemoteUpdateCommand extends AbstractTransactionCommand {
}
private Node buildConnectionNode(final Collection<UcastMacsRemote> macRemotes) {
- NodeBuilder connectionNode = new NodeBuilder();
- connectionNode.setNodeId(getOvsdbConnectionInstance().getNodeId());
- List<RemoteUcastMacs> remoteUMacs = new ArrayList<>();
- macRemotes.forEach(mac -> remoteUMacs.add(buildRemoteUcast(mac)));
- connectionNode.addAugmentation(new HwvtepGlobalAugmentationBuilder().setRemoteUcastMacs(remoteUMacs).build());
- return connectionNode.build();
+ var remoteUMacs = macRemotes.stream().map(this::buildRemoteUcast).collect(BindingMap.toOrderedMap());
+
+ return new NodeBuilder()
+ .setNodeId(getOvsdbConnectionInstance().getNodeId())
+ .addAugmentation(new HwvtepGlobalAugmentationBuilder().setRemoteUcastMacs(remoteUMacs).build())
+ .build();
}
private RemoteUcastMacs buildRemoteUcast(final UcastMacsRemote macRemote) {
import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.ovsdb.hwvtep.rev150901.hwvtep.global.attributes.LogicalSwitches;
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.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.RemoteUcastMacsKey;
import org.opendaylight.yang.gen.v1.urn.tbd.params.xml.ns.yang.network.topology.rev131021.NetworkTopology;
import org.opendaylight.yang.gen.v1.urn.tbd.params.xml.ns.yang.network.topology.rev131021.NodeId;
import org.opendaylight.yang.gen.v1.urn.tbd.params.xml.ns.yang.network.topology.rev131021.network.topology.Topology;
NodeBuilder nodeBuilder = prepareNode(nodeIid);
HwvtepGlobalAugmentationBuilder builder = new HwvtepGlobalAugmentationBuilder();
if (LogicalSwitches.class == dataObject) {
- TestBuilders.addLogicalSwitches(builder, data);
+ builder.setLogicalSwitches(TestBuilders.logicalSwitches(data));
}
if (TerminationPoint.class == dataObject) {
- TestBuilders.addGlobalTerminationPoints(nodeBuilder, nodeIid, data);
+ nodeBuilder.setTerminationPoint(TestBuilders.globalTerminationPoints(nodeIid, data));
}
if (RemoteUcastMacs.class == dataObject) {
- TestBuilders.addRemoteUcastMacs(nodeIid, builder, data);
+ builder.setRemoteUcastMacs(TestBuilders.remoteUcastMacs(nodeIid, data));
}
if (RemoteMcastMacs.class == dataObject) {
- TestBuilders.addRemoteMcastMacs(nodeIid, builder, data);
+ builder.setRemoteMcastMacs(TestBuilders.remoteMcastMacs(nodeIid, data));
}
nodeBuilder.addAugmentation(builder.build());
return mergeNode(logicalDatastoreType, nodeIid, nodeBuilder);
void deleteData(final LogicalDatastoreType logicalDatastoreType, final Class<? extends DataObject> dataObject,
final String[]... data) {
- NodeBuilder nodeBuilder = prepareNode(nodeIid);
ReadWriteTransaction tx = dataBroker.newReadWriteTransaction();
- HwvtepGlobalAugmentationBuilder builder = new HwvtepGlobalAugmentationBuilder();
if (LogicalSwitches.class == dataObject) {
- List<LogicalSwitches> logicalSwitches = TestBuilders.addLogicalSwitches(builder, data);
-
- for (LogicalSwitches ls : logicalSwitches) {
- InstanceIdentifier<LogicalSwitches> key =
- nodeIid.augmentation(HwvtepGlobalAugmentation.class).child(LogicalSwitches.class, ls.key());
- tx.delete(logicalDatastoreType, key);
+ for (LogicalSwitchesKey key : TestBuilders.logicalSwitches(data).keySet()) {
+ tx.delete(logicalDatastoreType,
+ nodeIid.augmentation(HwvtepGlobalAugmentation.class).child(LogicalSwitches.class, key));
}
}
if (TerminationPoint.class == dataObject) {
- TestBuilders.addGlobalTerminationPoints(nodeBuilder, nodeIid, data);
+ // FIXME: this is a no-op
+ prepareNode(nodeIid)
+ .setTerminationPoint(TestBuilders.globalTerminationPoints(nodeIid, data));
}
if (RemoteUcastMacs.class == dataObject) {
- List<RemoteUcastMacs> macs = TestBuilders.addRemoteUcastMacs(nodeIid, builder, data);
- for (RemoteUcastMacs mac : macs) {
- InstanceIdentifier<RemoteUcastMacs> key =
- nodeIid.augmentation(HwvtepGlobalAugmentation.class).child(RemoteUcastMacs.class, mac.key());
- tx.delete(logicalDatastoreType, key);
+ for (RemoteUcastMacsKey key : TestBuilders.remoteUcastMacs(nodeIid, data).keySet()) {
+ tx.delete(logicalDatastoreType,
+ nodeIid.augmentation(HwvtepGlobalAugmentation.class).child(RemoteUcastMacs.class, key));
}
}
if (RemoteMcastMacs.class == dataObject) {
- List<RemoteMcastMacs> macs = TestBuilders.addRemoteMcastMacs(nodeIid, builder, data);
- for (RemoteMcastMacs mac : macs) {
- InstanceIdentifier<RemoteMcastMacs> key =
- nodeIid.augmentation(HwvtepGlobalAugmentation.class).child(RemoteMcastMacs.class, mac.key());
- tx.delete(logicalDatastoreType, key);
+ for (RemoteMcastMacsKey key : TestBuilders.remoteMcastMacs(nodeIid, data).keySet()) {
+ tx.delete(logicalDatastoreType,
+ nodeIid.augmentation(HwvtepGlobalAugmentation.class).child(RemoteMcastMacs.class, key));
}
}
tx.commit();
}
NodeBuilder prepareNode(final InstanceIdentifier<Node> iid) {
- NodeBuilder nodeBuilder = new NodeBuilder();
- nodeBuilder.setNodeId(iid.firstKeyOf(Node.class).getNodeId());
- return nodeBuilder;
+ return new NodeBuilder().setNodeId(iid.firstKeyOf(Node.class).getNodeId());
}
Node mergeNode(final LogicalDatastoreType datastoreType, final InstanceIdentifier<Node> id,
* 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.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.HwvtepPhysicalLocatorAugmentationBuilder;
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 {
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,