X-Git-Url: https://git.opendaylight.org/gerrit/gitweb?a=blobdiff_plain;f=networkmodel%2Fsrc%2Fmain%2Fjava%2Forg%2Fopendaylight%2Ftransportpce%2Fnetworkmodel%2Fservice%2FNetworkModelServiceImpl.java;h=f051e6ccf366a74e2e22085adcbd92139c5c959c;hb=e469f96007756cee894f5ca2f1c108752ef4df1f;hp=6bfdb0397cab61cb6a38c45e122be3e6c615f235;hpb=9560162a2752b9ee7019f34ce54e12800c9598f0;p=transportpce.git
diff --git a/networkmodel/src/main/java/org/opendaylight/transportpce/networkmodel/service/NetworkModelServiceImpl.java b/networkmodel/src/main/java/org/opendaylight/transportpce/networkmodel/service/NetworkModelServiceImpl.java
index 6bfdb0397..f051e6ccf 100644
--- a/networkmodel/src/main/java/org/opendaylight/transportpce/networkmodel/service/NetworkModelServiceImpl.java
+++ b/networkmodel/src/main/java/org/opendaylight/transportpce/networkmodel/service/NetworkModelServiceImpl.java
@@ -38,15 +38,15 @@ import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.networkmo
import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.networkmodel.rev201116.topology.update.result.TopologyChanges;
import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.networkmodel.rev201116.topology.update.result.TopologyChangesBuilder;
import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.networkmodel.rev201116.topology.update.result.TopologyChangesKey;
-import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.portmapping.rev220114.OpenroadmNodeVersion;
-import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.portmapping.rev220114.mapping.Mapping;
-import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.portmapping.rev220114.network.nodes.NodeInfo;
+import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.networkutils.rev220630.OtnLinkType;
+import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.portmapping.rev220316.OpenroadmNodeVersion;
+import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.portmapping.rev220316.mapping.Mapping;
+import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.portmapping.rev220316.network.nodes.NodeInfo;
import org.opendaylight.yang.gen.v1.http.org.openroadm.device.types.rev191129.NodeTypes;
-import org.opendaylight.yang.gen.v1.http.org.openroadm.otn.network.topology.rev200529.Link1;
-import org.opendaylight.yang.gen.v1.http.org.openroadm.otn.network.topology.rev200529.TerminationPoint1;
-import org.opendaylight.yang.gen.v1.http.org.transportpce.common.types.rev210930.link.tp.LinkTp;
-import org.opendaylight.yang.gen.v1.http.org.transportpce.common.types.rev210930.link.tp.LinkTpBuilder;
-import org.opendaylight.yang.gen.v1.http.transportpce.topology.rev220123.OtnLinkType;
+import org.opendaylight.yang.gen.v1.http.org.openroadm.otn.network.topology.rev211210.Link1;
+import org.opendaylight.yang.gen.v1.http.org.openroadm.otn.network.topology.rev211210.TerminationPoint1;
+import org.opendaylight.yang.gen.v1.http.org.transportpce.common.types.rev220926.link.tp.LinkTp;
+import org.opendaylight.yang.gen.v1.http.org.transportpce.common.types.rev220926.link.tp.LinkTpBuilder;
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;
import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.network.rev180226.NodeId;
@@ -63,7 +63,7 @@ import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.network.top
import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.network.topology.rev180226.networks.network.node.TerminationPoint;
import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.network.topology.rev180226.networks.network.node.TerminationPointKey;
import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.network.topology.rev180226.networks.network.node.termination.point.SupportingTerminationPoint;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.netconf.node.topology.rev150114.NetconfNodeConnectionStatus;
+import org.opendaylight.yang.gen.v1.urn.opendaylight.netconf.device.rev221225.ConnectionOper.ConnectionStatus;
import org.opendaylight.yangtools.yang.binding.InstanceIdentifier;
import org.opendaylight.yangtools.yang.common.Uint32;
import org.slf4j.Logger;
@@ -108,6 +108,14 @@ public class NetworkModelServiceImpl implements NetworkModelService {
try {
LOG.info("createOpenROADMNode: {} ", nodeId);
+ boolean firstMount;
+ if (portMapping.getNode(nodeId) == null) {
+ firstMount = true;
+ } else {
+ LOG.info("{} already exists in portmapping but was reconnected", nodeId);
+ firstMount = false;
+ }
+
if (!portMapping.createMappingData(nodeId, openRoadmVersion)) {
LOG.warn("Could not generate port mapping for {} skipping network model creation", nodeId);
return;
@@ -133,7 +141,8 @@ public class NetworkModelServiceImpl implements NetworkModelService {
openroadmNetworkNode);
// nodes/links creation in openroadm-topology
- TopologyShard topologyShard = OpenRoadmTopology.createTopologyShard(portMapping.getNode(nodeId));
+ TopologyShard topologyShard = OpenRoadmTopology.createTopologyShard(portMapping.getNode(nodeId),
+ firstMount);
if (topologyShard != null) {
this.topologyShardMountedDevice.put(nodeId, topologyShard);
for (Node openRoadmTopologyNode : topologyShard.getNodes()) {
@@ -176,7 +185,7 @@ public class NetworkModelServiceImpl implements NetworkModelService {
}
@Override
- public void setOpenRoadmNodeStatus(String nodeId, NetconfNodeConnectionStatus.ConnectionStatus connectionStatus) {
+ public void setOpenRoadmNodeStatus(String nodeId, ConnectionStatus connectionStatus) {
LOG.info("setOpenROADMNodeStatus: {} {}", nodeId, connectionStatus.name());
/*
TODO: set connection status of the device in model,
@@ -331,7 +340,7 @@ public class NetworkModelServiceImpl implements NetworkModelService {
.setNodeId(abstractNodeid)
.setTpId(tp.getTpId().getValue())
.setState(tp.augmentation(
- org.opendaylight.yang.gen.v1.http.org.openroadm.common.network.rev200529.TerminationPoint1
+ org.opendaylight.yang.gen.v1.http.org.openroadm.common.network.rev211210.TerminationPoint1
.class).getOperationalState())
.build();
if (!this.topologyChanges.containsKey(tc.key())) {
@@ -372,7 +381,7 @@ public class NetworkModelServiceImpl implements NetworkModelService {
.setNodeId(abstractNodeid)
.setTpId(tp.getTpId().getValue())
.setState(tp.augmentation(
- org.opendaylight.yang.gen.v1.http.org.openroadm.common.network.rev200529.TerminationPoint1
+ org.opendaylight.yang.gen.v1.http.org.openroadm.common.network.rev211210.TerminationPoint1
.class).getOperationalState())
.build();
if (!this.topologyChanges.containsKey(tc.key())) {
@@ -778,7 +787,7 @@ public class NetworkModelServiceImpl implements NetworkModelService {
private void deleteLinks(List links) {
for (Link otnTopologyLink : links) {
LOG.info("deleting link {} from {}", otnTopologyLink.getLinkId().getValue(),
- NetworkUtils.OVERLAY_NETWORK_ID);
+ NetworkUtils.OTN_NETWORK_ID);
InstanceIdentifier iiOtnTopologyLink = InstanceIdentifier.builder(Networks.class)
.child(Network.class, new NetworkKey(new NetworkId(NetworkUtils.OTN_NETWORK_ID)))
.augmentation(Network1.class)