package org.opendaylight.transportpce.common.crossconnect;
-import java.math.BigDecimal;
import java.util.List;
import java.util.Optional;
+import org.opendaylight.transportpce.common.fixedflex.SpectrumInformation;
import org.opendaylight.transportpce.common.openroadminterfaces.OpenRoadmInterfaceException;
+import org.opendaylight.yang.gen.v1.http.org.transportpce.common.types.rev210930.otn.renderer.nodes.Nodes;
+import org.opendaylight.yangtools.yang.common.Decimal64;
public interface CrossConnect {
* @param connectionNumber
* Name of the cross connect.
*
- * @return Roadm connection subtree from the device.
+ * @return optional of Roadm connection subtree from the device.
*/
- <T> Optional<T> getCrossConnect(String deviceId, String connectionNumber);
+ Optional<?> getCrossConnect(String deviceId, String connectionNumber);
/**
* This method does a post(edit-config) on roadm connection subtree for a
*
* @param deviceId
* Device id.
- * @param waveNumber
- * Wavelength number.
* @param srcTp
* Name of source termination point.
* @param destTp
* Name of destination termination point.
+ * @param spectrumInformation SpectrumInformation
* @return optional of connection number
*/
- Optional<String> postCrossConnect(String deviceId, Long waveNumber, String srcTp, String destTp);
+ Optional<String> postCrossConnect(String deviceId, String srcTp, String destTp,
+ SpectrumInformation spectrumInformation);
/**
* This method does a delete(edit-config) on roadm connection subtree for a
* Device id.
* @param connectionNumber
* Name of the cross connect.
+ * @param isOtn
+ * True for odu-connection, False for roadm-connection.
*
- * @return true/false based on status of operation.
+ * @return the list of interface-names that were supporting the connection.
*/
-
- List<String> deleteCrossConnect(String deviceId, String connectionNumber);
+ List<String> deleteCrossConnect(String deviceId, String connectionNumber, Boolean isOtn);
/**
* This public method returns the list of ports (port-trail) for a roadm's
*
* @param nodeId
* node-id of NE.
- * @param waveNumber
- * Wavelength number.
* @param srcTp
* Source logical connection point.
* @param destTp
* Destination logical connection point.
- *
+ * @param lowerSpectralSlotNumber Value of lower spectral slot number.
+ * @param higherSpectralSlotNumber Value of higher spectral slot number.
* @return list of Ports object type.
+ *
+ * @throws OpenRoadmInterfaceException
+ * an exception at OpenRoadm interface.
*/
- <T> List<T> getConnectionPortTrail(String nodeId, Long waveNumber, String srcTp, String destTp)
+ List<?> getConnectionPortTrail(String nodeId, String srcTp, String destTp, int lowerSpectralSlotNumber,
+ int higherSpectralSlotNumber)
throws OpenRoadmInterfaceException;
/**
* Name of the cross connect.
* @return true/false based on status of operation.
*/
- boolean setPowerLevel(String deviceId, Enum mode, BigDecimal powerValue,
- String connectionNumber);
+ boolean setPowerLevel(String deviceId, String mode, Decimal64 powerValue, String connectionNumber);
+
+ Optional<String> postOtnCrossConnect(List<String> createdOduInterfaces, Nodes node) throws
+ OpenRoadmInterfaceException;
+
}