Reintroduce (ordm 2.2.1) Rdm2Rdm links in topo
[transportpce.git] / common / src / main / java / org / opendaylight / transportpce / common / mapping / PortMapping.java
index 5ddbe0109378d5d5954c5b56cb6e2d9bc44fcc14..30c39d45a934aa77363b7b331d3d2079a0643b67 100644 (file)
@@ -8,7 +8,8 @@
 
 package org.opendaylight.transportpce.common.mapping;
 
-import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.portmapping.rev170228.network.nodes.Mapping;
+import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.portmapping.rev170228.network.Nodes;
+import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.portmapping.rev170228.network.nodes.Mapping;
 
 public interface PortMapping {
 
@@ -36,15 +37,27 @@ public interface PortMapping {
      * successful the mapping gets stored in datastore corresponding to
      * portmapping.yang data model.
      *
+     * @param nodeId
+     *            node ID
+     *
      * @return true/false based on status of operation
      */
-    boolean createMappingData(String nodeId);
+    boolean createMappingData(String nodeId, String nodeVersion);
+
+    /**
+     * This method removes mapping data from the datastore after disconnecting
+     * ODL from a Netconf device.
+     *
+     * @param nodeId
+     *            node ID
+     */
+    void deleteMappingData(String nodeId);
 
     /**
-     * This method for a given node's termination point returns the Mapping object based on
-     * portmapping.yang model stored in the MD-SAL data store which is created when the node is
-     * connected for the first time. The mapping object basically contains the following attributes of
-     * interest:
+     * This method for a given node's termination point returns the Mapping
+     * object based on portmapping.yang model stored in the MD-SAL data store
+     * which is created when the node is connected for the first time. The
+     * mapping object basically contains the following attributes of interest:
      *
      * <p>
      * 1. Supporting circuit pack
@@ -53,13 +66,31 @@ public interface PortMapping {
      * 2. Supporting port
      *
      * <p>
-     * 3. Supporting OMS interface (if port on ROADM) 4. Supporting OTS interface (if port on ROADM)
+     * 3. Supporting OMS interface (if port on ROADM) 4. Supporting OTS
+     * interface (if port on ROADM)
      *
-     * @param nodeId Unique Identifier for the node of interest.
-     * @param logicalConnPoint Name of the logical point
+     * @param nodeId
+     *            Unique Identifier for the node of interest.
+     * @param logicalConnPoint
+     *            Name of the logical point
      *
      * @return Result Mapping object if success otherwise null.
      */
-
     Mapping getMapping(String nodeId, String logicalConnPoint);
+
+    boolean updateMapping(String nodeId, Mapping mapping);
+
+    /**
+     * Returns all Mapping informations for a given ordm device.
+     * This method returns all Mapping informations already stored in the MD-SAL
+     * data store for a given openroadm device. Beyound the list of mappings, it
+     * gives access to general node information as its version or its node type,
+     * etc.
+     *
+     * @param nodeId
+     *            Unique Identifier for the node of interest.
+     *
+     * @return node data if success otherwise null.
+     */
+    Nodes getNode(String nodeId);
 }