import java.util.Optional;
-import org.opendaylight.yang.gen.v1.http.org.openroadm.device.rev170206.interfaces.grp.Interface;
-import org.opendaylight.yang.gen.v1.http.org.openroadm.device.rev170206.interfaces.grp.InterfaceBuilder;
-
public interface OpenRoadmInterfaces {
/**
* </p>
*
* @param nodeId node ID
- *
* @param ifBuilder Builder object containing the data to post.
+ * @param <T> generic
*
* @throws OpenRoadmInterfaceException OpenRoadm Interface Exception
*
*/
- void postInterface(String nodeId, InterfaceBuilder ifBuilder) throws OpenRoadmInterfaceException;
+ <T> void postInterface(String nodeId, T ifBuilder) throws OpenRoadmInterfaceException;
/**
* This methods does an edit-config operation on the openROADM device in
*
* @param interfaceName
* Name of the interface
+ * @param <T>
+ * generic
*
* @return Optional of Interface from datastore
*
* @throws OpenRoadmInterfaceException OpenRoadm Interface Exception
*/
- Optional<Interface> getInterface(String nodeId, String interfaceName) throws OpenRoadmInterfaceException;
+ <T> Optional<T> getInterface(String nodeId, String interfaceName) throws OpenRoadmInterfaceException;
/**
* This methods does an edit-config operation on the openROADM device in
*/
void deleteInterface(String nodeId, String interfaceName) throws OpenRoadmInterfaceException;
+ /**
+ * This methods does an edit-config operation on the openROADM device in
+ * order to create the OTN given interface.
+ *
+ * @param nodeId node ID
+ * @param ifBuilder Builder object containing the data to post
+ * @throws OpenRoadmInterfaceException OpenRoadm Interface Exception
+ */
+ <T> void postOTNInterface(String nodeId, T ifBuilder) throws OpenRoadmInterfaceException;
+
+ /**
+ * This methods does an edit-config operation on the openROADM device in
+ * order to manages the equipment-state status of the circuit pack on which
+ * OTN interfaces are created.
+ *
+ * @param nodeId node ID
+ * @param circuitPackName Circtuit-Pack name
+ * @param activate activate or not
+ *
+ * @throws OpenRoadmInterfaceException OpenRoadm Interface Exception
+ */
+ void postOTNEquipmentState(String nodeId, String circuitPackName, boolean activate)
+ throws OpenRoadmInterfaceException;
+
}