import org.opendaylight.yang.gen.v1.gnpy.gnpy.network.topology.rev181214.topo.ElementsBuilder;
import org.opendaylight.yang.gen.v1.gnpy.gnpy.network.topology.rev181214.topo.elements.Metadata;
import org.opendaylight.yang.gen.v1.gnpy.gnpy.network.topology.rev181214.topo.elements.MetadataBuilder;
+import org.opendaylight.yang.gen.v1.http.org.openroadm.common.network.rev181130.Link1;
import org.opendaylight.yang.gen.v1.http.org.openroadm.link.rev181130.amplified.link.attributes.AmplifiedLink;
import org.opendaylight.yang.gen.v1.http.org.openroadm.link.rev181130.amplified.link.attributes.amplified.link.section.element.section.element.Span;
import org.opendaylight.yang.gen.v1.http.org.openroadm.link.rev181130.amplified.link.attributes.amplified.link.section.element.section.element.ila.Ila;
import org.opendaylight.yang.gen.v1.http.org.openroadm.link.rev181130.span.attributes.LinkConcatenation;
import org.opendaylight.yang.gen.v1.http.org.openroadm.network.rev181130.Node1;
-import org.opendaylight.yang.gen.v1.http.org.openroadm.network.topology.rev181130.Link1;
import org.opendaylight.yang.gen.v1.http.org.openroadm.network.topology.rev181130.networks.network.link.OMSAttributes;
import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.inet.types.rev130715.IpAddress;
import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.inet.types.rev130715.Ipv4Address;
// topology and openRoadm network
mapDisgNodeRefNode.put(openRoadmTopoNode.getNodeId().getValue(), nodeRef);
Node1 openRoadmNetNode1 = null;
+ org.opendaylight.yang.gen.v1.http.org.openroadm.common.network.rev181130
+ .Node1 commonNetworkNode1 = null;
for (Node openRoadmNetNode : openRoadmNetNodeList) {
if (openRoadmNetNode.getNodeId().getValue().equals(nodeRef)) {
openRoadmNetNode1 = openRoadmNetNode.augmentation(Node1.class);
+ commonNetworkNode1 = openRoadmNetNode.augmentation(org.opendaylight.yang.gen.v1
+ .http.org.openroadm.common.network.rev181130.Node1.class);
ipAddress = openRoadmNetNode1.getIp();
mapNodeRefIp.put(nodeRef, ipAddress);
break;
}
}
- if (openRoadmNetNode1.getNodeType().getName().equals("ROADM")) {
+ if (commonNetworkNode1.getNodeType().getName().equals("ROADM")) {
+ //if (((org.opendaylight.yang.gen.v1.http.org.openroadm.common.network.rev181130.Node1)
+ // openRoadmNetNode1).getNodeType().getName().equals("ROADM")) {
if (!nodesList.contains(nodeRef)) {
Elements element = addElementsRoadm(2, 0, nodeRef, openRoadmNetNode1.getShelf(),
-20, ipAddress.getIpv4Address().getValue().toString());
topoElements.add(element);
nodesList.add(nodeRef);
}
- } else if (openRoadmNetNode1.getNodeType().getName().equals("XPONDER")) {
+ } else if (commonNetworkNode1.getNodeType().getName().equals("XPONDER")) {
+ //} else if (((org.opendaylight.yang.gen.v1.http.org.openroadm.common.network.rev181130
+ // .Node1) openRoadmNetNode1).getNodeType().getName().equals("XPONDER")) {
if (!nodesList.contains(nodeRef)) {
Elements element = addElementsTransceiver(2, 0, nodeRef,
openRoadmNetNode1.getShelf(),
LOG.debug("The link list is not empty");
for (Link link : linksList) {
Link1 link1 = link.augmentation(Link1.class);
+ org.opendaylight.yang.gen.v1.http.org.openroadm.network.topology.rev181130
+ .Link1 openroadmNetworkLink1 = link.augmentation(org.opendaylight.yang.gen.v1.http.org
+ .openroadm.network.topology.rev181130.Link1.class);
int linkType = link1.getLinkType().getIntValue();
+ // the previous line generates a warning
+ // but the following cast in comment makes the gnpy tox test fail
+ // ((org.opendaylight.yang.gen.v1.http.org.openroadm.common.network.rev181130.Link1) link1)
if (IntStream.of(externalLink).anyMatch(x -> x == linkType)) {
// Verify if the node is a ROADM
String srcId = mapDisgNodeRefNode.get(link.getSource().getSourceNode().getValue());
IpAddress srcIp = mapNodeRefIp.get(srcId);
+ String clfi = link1.getClfi();
String destId = null;
IpAddress destIp = null;
// Add the links between amplifiers
- OMSAttributes omsAttributes = link1.getOMSAttributes();
+ OMSAttributes omsAttributes = null;
+ if (linkType == 4) {
+ omsAttributes = openroadmNetworkLink1.getOMSAttributes();
+ }
if (omsAttributes != null) {
if (omsAttributes.getAmplifiedLink() != null) {
List<AmplifiedLink> amplifiedLinkList = omsAttributes.getAmplifiedLink()
} else if (amplifiedLink.getSectionElement()
.getSectionElement() instanceof Span) {
// Create the location
- Span span = (Span) amplifiedLink.getSectionElement()
- .getSectionElement();
- String clfi = span.getSpan().getClfi();
IpAddress ipFiber = new IpAddress(
new Ipv4Address("2.2.2." + idFiber));
mapLinkFiber.put(link.getLinkId().getValue(), clfi);
}
}
} else if (omsAttributes.getSpan() != null) {
- org.opendaylight.yang.gen.v1.http.org.openroadm.network.topology.rev181130
- .networks.network.link.oms.attributes.@Nullable Span span
- = omsAttributes.getSpan();
- String clfi = span.getClfi();
IpAddress ipFiber = new IpAddress(new Ipv4Address("2.2.2." + idFiber));
mapLinkFiber.put(link.getLinkId().getValue(), clfi);
mapFiberIp.put(clfi, ipFiber);
String typeVariety = "SSMF";
double length = 0;
// Compute the length of the link
+ org.opendaylight.yang.gen.v1.http.org.openroadm.network.topology.rev181130
+ .networks.network.link.oms.attributes.@Nullable Span span =
+ omsAttributes.getSpan();
List<LinkConcatenation> linkConcatenationList = span.getLinkConcatenation();
for (LinkConcatenation linkConcatenation : linkConcatenationList) {
double srlgLength = linkConcatenation.getSRLGLength();
}
} else {
// Add a fiber
- String clfi = "Fiber" + idFiber;
+ clfi = "Fiber" + idFiber;
IpAddress ipFiber = new IpAddress(new Ipv4Address("2.2.2." + idFiber));
mapLinkFiber.put(link.getLinkId().getValue(), clfi);
mapFiberIp.put(clfi, ipFiber);
public void setMapFiberIp(Map<String, IpAddress> mapFiberIp) {
this.mapFiberIp = mapFiberIp;
}
-}
\ No newline at end of file
+}