import java.io.IOException;
import java.io.InputStream;
import java.io.Reader;
+import java.util.ArrayList;
import java.util.List;
+import java.util.Map;
import java.util.Optional;
import java.util.concurrent.ExecutionException;
import java.util.stream.Collectors;
+import org.eclipse.jdt.annotation.NonNull;
+import org.eclipse.jdt.annotation.Nullable;
import org.junit.Assert;
import org.opendaylight.mdsal.binding.api.DataBroker;
import org.opendaylight.mdsal.binding.api.WriteTransaction;
import org.opendaylight.transportpce.common.converter.api.DataObjectConverter;
import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.pce.rev200128.PathComputationRequestOutput;
import org.opendaylight.yang.gen.v1.http.org.transportpce.b.c._interface.pathdescription.rev200629.path.description.atoz.direction.AToZ;
+import org.opendaylight.yang.gen.v1.http.org.transportpce.b.c._interface.pathdescription.rev200629.path.description.atoz.direction.AToZKey;
import org.opendaylight.yang.gen.v1.http.org.transportpce.b.c._interface.pathdescription.rev200629.pce.resource.resource.resource.Node;
import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.network.rev180226.NetworkId;
import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.network.rev180226.Networks;
Networks networks = (Networks) JsonUtil.getInstance().getDataObjectFromJson(networkReader,
QName.create("urn:ietf:params:xml:ns:yang:ietf-network", "2018-02-26", "networks"));
- saveOpenRoadmNetwork(networks.getNetwork().get(0), NetworkUtils.UNDERLAY_NETWORK_ID, dataBroker);
+ @NonNull
+ List<Network> networkMap = new ArrayList<>(networks.nonnullNetwork().values());
+ saveOpenRoadmNetwork(networkMap.get(0), NetworkUtils.UNDERLAY_NETWORK_ID, dataBroker);
networks = (Networks) JsonUtil.getInstance().getDataObjectFromJson(topoReader,
QName.create("urn:ietf:params:xml:ns:yang:ietf-network", "2018-02-26", "networks"));
- saveOpenRoadmNetwork(networks.getNetwork().get(0), NetworkUtils.OVERLAY_NETWORK_ID, dataBroker);
+ saveOpenRoadmNetwork(networkMap.get(0), NetworkUtils.OVERLAY_NETWORK_ID, dataBroker);
} catch (IOException | ExecutionException | InterruptedException e) {
LOG.error("Cannot init test ", e);
Assert.fail("Cannot init test ");
}
private static List<String> getNodesFromPath(PathComputationRequestOutput output) {
- List<AToZ> atozList = output.getResponseParameters().getPathDescription().getAToZDirection().getAToZ();
- return atozList.stream()
+ @Nullable Map<AToZKey, AToZ> atozList = output.getResponseParameters()
+ .getPathDescription().getAToZDirection().getAToZ();
+ return atozList.values().stream()
.filter(aToZ -> {
if ((aToZ.getResource() == null) || (aToZ.getResource().getResource() == null)) {
LOG.debug("Diversity constraint: Resource of AToZ node {} is null! Skipping this node!",