import org.opendaylight.transportpce.common.NetworkUtils;
import org.opendaylight.transportpce.common.network.NetworkTransactionService;
import org.opendaylight.transportpce.tapi.TapiStringConstants;
+import org.opendaylight.transportpce.tapi.impl.TapiProvider;
import org.opendaylight.transportpce.tapi.utils.TapiLink;
import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.portmapping.rev231221.mapping.Mapping;
import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.portmapping.rev231221.mapping.MappingKey;
import org.opendaylight.yang.gen.v1.urn.onf.otcc.yang.tapi.common.rev221121.global._class.NameBuilder;
import org.opendaylight.yang.gen.v1.urn.onf.otcc.yang.tapi.common.rev221121.tapi.context.ServiceInterfacePoint;
import org.opendaylight.yang.gen.v1.urn.onf.otcc.yang.tapi.common.rev221121.tapi.context.ServiceInterfacePointKey;
-//import org.opendaylight.yang.gen.v1.urn.onf.otcc.yang.tapi.connectivity.rev221121.OwnedNodeEdgePoint1;
import org.opendaylight.yang.gen.v1.urn.onf.otcc.yang.tapi.topology.rev221121.context.TopologyContext;
import org.opendaylight.yang.gen.v1.urn.onf.otcc.yang.tapi.topology.rev221121.node.OwnedNodeEdgePoint;
import org.opendaylight.yang.gen.v1.urn.onf.otcc.yang.tapi.topology.rev221121.node.OwnedNodeEdgePointBuilder;
private static final Logger LOG = LoggerFactory.getLogger(TopologyUtils.class);
private Map<ServiceInterfacePointKey, ServiceInterfacePoint> tapiSips;
private final TapiLink tapiLink;
- private String topologicalMode;
+ private static final String TOPOLOGICAL_MODE = TapiProvider.TOPOLOGICAL_MODE;
public static final String NOOPMODEDECLARED = "No operational mode declared in Topo for Tp {}, assumes by default ";
public TopologyUtils(
this.tapiSips = new HashMap<>();
this.tapiLink = tapiLink;
// TODO: Initially set topological mode to Full. Shall be set through the setter at controller initialization
- this.topologicalMode = "Full";
}
public Network readTopology(InstanceIdentifier<Network> networkIID) throws TapiTopologyException {
return nameList;
}
- public Topology createFullOtnTopology() throws TapiTopologyException {
+ public Topology createOtnTopology() throws TapiTopologyException {
// read openroadm-topology
Network openroadmTopo = readTopology(InstanceIdentifiers.OVERLAY_NETWORK_II);
- String topoType = this.topologicalMode.equals("Full") ? TapiStringConstants.T0_FULL_MULTILAYER
+ String topoType = TOPOLOGICAL_MODE.equals("Full") ? TapiStringConstants.T0_FULL_MULTILAYER
: TapiStringConstants.T0_TAPI_MULTILAYER;
+ LOG.info("TOPOUTILS, createOtnTopology, the TOPOLOGICAL_MODE is {} ",topoType);
Uuid topoUuid = new Uuid(UUID.nameUUIDFromBytes(topoType.getBytes(Charset.forName("UTF-8"))).toString());
Name name = new NameBuilder().setValue(topoType).setValueName("TAPI Topology Name").build();
var topoBdr = new TopologyBuilder()
LOG.warn("No roadm nodes exist in the network");
} else {
// map roadm nodes
- if (this.topologicalMode.equals("Full")) {
+ if (TOPOLOGICAL_MODE.equals("Full")) {
for (org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.network.rev180226
.networks.network.Node roadm : rdmList) {
tapiFullFactory.convertRoadmNode(roadm, openroadmTopo, "Full");
this.tapiSips.putAll(tapiFullFactory.getTapiSips());
tapiNodeList.putAll(tapiFullFactory.getTapiNodes());
- tapiLinkList.putAll(tapiFullFactory.getTapiLinks());
- tapiFullFactory.convertRdmToRdmLinks(
- // map roadm to roadm link
- linkList.stream()
- .filter(lk -> lk.augmentation(Link1.class).getLinkType()
- .equals(OpenroadmLinkType.ROADMTOROADM))
- .collect(Collectors.toList()));
- tapiLinkList.putAll(tapiFullFactory.getTapiLinks());
}
+ tapiLinkList.putAll(tapiFullFactory.getTapiLinks());
+ // map roadm to roadm link
+ List<Link> rdmTordmLinkList = linkList.stream()
+ .filter(lk -> lk.augmentation(Link1.class).getLinkType()
+ .equals(OpenroadmLinkType.ROADMTOROADM))
+ .collect(Collectors.toList());
+ tapiFullFactory.convertRdmToRdmLinks(rdmTordmLinkList);
} else {
tapiFullFactory.convertRoadmNode(null, openroadmTopo, "Abstracted");
this.tapiSips.putAll(tapiFullFactory.getTapiSips());
for (Node node: topology.nonnullNode().values()) {
Map<OwnedNodeEdgePointKey, OwnedNodeEdgePoint> onepMap = new HashMap<>();
for (OwnedNodeEdgePoint onep: node.nonnullOwnedNodeEdgePoint().values()) {
-// OwnedNodeEdgePoint1 onep1 = onep.augmentation(OwnedNodeEdgePoint1.class);
-// if (onep1 == null) {
-// onepMap.put(onep.key(), onep);
-// continue;
-// }
OwnedNodeEdgePoint newOnep = new OwnedNodeEdgePointBuilder()
.setUuid(onep.getUuid())
.setLayerProtocolName(onep.getLayerProtocolName())
return tapiSips;
}
- public void setTopologicalMode(String topoMode) {
- this.topologicalMode = topoMode;
- }
-
- public String getTopologicalMode() {
- return topologicalMode;
- }
-
}