*/
package org.opendaylight.transportpce.networkmodel.service;
+import java.util.List;
+import org.opendaylight.yang.gen.v1.http.transportpce.topology.rev200129.OtnLinkType;
import org.opendaylight.yang.gen.v1.urn.opendaylight.netconf.node.topology.rev150114.NetconfNodeConnectionStatus;
/**
*/
public interface NetworkModelService {
-
/**
- * Create new OpenROADM node in all OpenROADM topologies.
+ * Create new OpenROADM node in all OpenROADM topologies.
+ *
* @param nodeId
* unique node ID of new OpenROADM node
* @param nodeVersion
/**
* Delete OpenROADM node mapping and topologies.
*
- * @param nodeId unique node ID of OpenROADM node.
+ * @param nodeId
+ * unique node ID of OpenROADM node.
*
*/
void deleteOpenRoadmnode(String nodeId);
*/
void setOpenRoadmNodeStatus(String nodeId, NetconfNodeConnectionStatus.ConnectionStatus connectionStatus);
+ /**
+ * create new otn link in otn-topology.
+ *
+ * @param nodeA
+ * OpenROADM node ID for link termination point A
+ * @param tpA
+ * OpenROADM tp id on nodeA for link termination point A
+ * @param nodeZ
+ * OpenROADM node ID for link termination point Z
+ * @param tpZ
+ * OpenROADM tp id on nodeZ for link termination point Z
+ * @param linkType
+ * OtnLinkType, as OTU4, ODTU, etc
+ */
+ void createOtnLinks(String nodeA, String tpA, String nodeZ, String tpZ, OtnLinkType linkType);
+
+ /**
+ * delete otn links from otn-topology.
+ *
+ * @param nodeA
+ * OpenROADM node ID for link termination point A
+ * @param tpA
+ * OpenROADM tp id on nodeA for link termination point A
+ * @param nodeZ
+ * OpenROADM node ID for link termination point Z
+ * @param tpZ
+ * OpenROADM tp id on nodeZ for link termination point Z
+ * @param linkType
+ * OtnLinkType, as OTU4, ODTU, etc
+ */
+ void deleteOtnLinks(String nodeA, String tpA, String nodeZ, String tpZ, OtnLinkType linkType);
+
+ /**
+ * update otn links from otn-topology.
+ *
+ * @param nodeTps
+ * List containing a string composed of the netconf nodeId , and the
+ * termination point supporting the service
+ * @param serviceRate
+ * Service rate may be 1G, 10G or 100G
+ * @param tribPortNb
+ * Trib port number allocated by the service
+ * @param tribSoltNb
+ * First trib slot number allocated by the service
+ * @param isDeletion
+ * True indicates if the low-order otn service must be deleted
+ */
+ void updateOtnLinks(List<String> nodeTps, String serviceRate, Short tribPortNb, Short tribSoltNb,
+ boolean isDeletion);
+
}