package org.opendaylight.transportpce.networkmodel.service;
import java.util.List;
-import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.portmapping.rev210425.mapping.Mapping;
-import org.opendaylight.yang.gen.v1.http.transportpce.topology.rev201019.OtnLinkType;
+import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.portmapping.rev210927.mapping.Mapping;
+import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.renderer.rev210915.renderer.rpc.result.sp.Link;
+import org.opendaylight.yang.gen.v1.http.transportpce.topology.rev210511.OtnLinkType;
import org.opendaylight.yang.gen.v1.urn.opendaylight.netconf.node.topology.rev150114.NetconfNodeConnectionStatus;
+import org.opendaylight.yangtools.yang.common.Uint32;
/**
* Service for data manipulation on OpenROADM topology models.
void createOpenRoadmNode(String nodeId, String nodeVersion);
/**
- * Delete OpenROADM node mapping and topologies.
+ * Delete OpenROADM node from portmapping and topologies.
*
* @param nodeId
* unique node ID of OpenROADM node.
*
+ * @return result of node deletion from portmapping and topologies
*/
- void deleteOpenRoadmnode(String nodeId);
+ boolean deleteOpenRoadmnode(String nodeId);
/**
* Update termination point, and if need, be associated links, of
void deleteOtnLinks(String nodeA, String tpA, String nodeZ, String tpZ, OtnLinkType linkType);
/**
- * update otn links from otn-topology.
+ * Update otn links from otn-topology.
+ * For services using low-order odu, updates bandwidth parameters
+ * for both the direct parent high-order odu link, and also its server
+ * otu link.
*
- * @param nodeTps
- * List containing a string composed of the netconf nodeId , and the
- * termination point supporting the service
+ * @param link
+ * link containing termination points to be updated
* @param serviceRate
- * Service rate may be 1G, 10G or 100G
+ * Service rate may be 1G, 10G, 100G or 400G
* @param tribPortNb
* Trib port number allocated by the service
- * @param tribSoltNb
- * First trib slot number allocated by the service
+ * @param minTribSoltNb
+ * First contiguous trib slot number allocated by the service
+ * @param maxTribSoltNb
+ * Last contiguous trib slot number allocated by the service
* @param isDeletion
- * True indicates if the low-order otn service must be deleted
+ * True indicates if the low-order otn service must be deleted
*/
- void updateOtnLinks(List<String> nodeTps, String serviceRate, Short tribPortNb, Short tribSoltNb,
- boolean isDeletion);
+ void updateOtnLinks(Link link, Uint32 serviceRate, Short tribPortNb, Short minTribSoltNb, Short maxTribSoltNb,
+ boolean isDeletion);
+ /**
+ * Update otn links from otn-topology.
+ * For services using directly a high-order odu, updates bandwidth parameters
+ * of the direct parent otu link.
+ *
+ * @param link
+ * link containing termination points to be updated
+ * @param supportedLinks
+ * list of link-id supported the service (used when more than one supported link)
+ * @param isDeletion
+ * True indicates if the low-order otn service must be deleted
+ */
+ void updateOtnLinks(Link link, List<String> supportedLinks, boolean isDeletion);
}