package org.opendaylight.transportpce.servicehandler.service;
import java.util.Optional;
-
import org.opendaylight.transportpce.common.OperationResult;
import org.opendaylight.transportpce.servicehandler.ServiceInput;
-import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.pce.rev200128.PathComputationRequestOutput;
-import org.opendaylight.yang.gen.v1.http.org.openroadm.common.state.types.rev181130.State;
-import org.opendaylight.yang.gen.v1.http.org.openroadm.equipment.states.types.rev181130.AdminStates;
+import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.pce.rev210701.PathComputationRequestOutput;
+import org.opendaylight.yang.gen.v1.http.org.openroadm.common.state.types.rev191129.State;
+import org.opendaylight.yang.gen.v1.http.org.openroadm.equipment.states.types.rev191129.AdminStates;
import org.opendaylight.yang.gen.v1.http.org.openroadm.service.rev190531.ServiceCreateInput;
+import org.opendaylight.yang.gen.v1.http.org.openroadm.service.rev190531.ServiceList;
import org.opendaylight.yang.gen.v1.http.org.openroadm.service.rev190531.TempServiceCreateInput;
import org.opendaylight.yang.gen.v1.http.org.openroadm.service.rev190531.service.list.Services;
+import org.opendaylight.yang.gen.v1.http.org.transportpce.b.c._interface.service.types.rev200128.service.path.PathDescription;
+import org.opendaylight.yang.gen.v1.http.org.transportpce.b.c._interface.servicepath.rev171017.ServicePathList;
+import org.opendaylight.yang.gen.v1.http.org.transportpce.b.c._interface.servicepath.rev171017.service.path.list.ServicePaths;
/**
* OpenROADM Service operations API providing basic operations on services.
* get service by name.
*
* @param serviceName
- * unique name of the service
+ * unique name of the service
* @return Optional of Services
*/
Optional<Services> getService(String serviceName);
+ /**
+ * get all OR services.
+ *
+ * @return Optional of Services
+ */
+ Optional<ServiceList> getServices();
+
/**
* get temp service by common-id.
*
* @param commonId
- * unique common-id of the service
+ * unique common-id of the service
* @return Optional of Services
*/
Optional<org.opendaylight.yang.gen.v1.http.org.openroadm.service.rev190531.temp.service.list
* deleteService service by name.
*
* @param serviceName
- * unique name of the service
+ * unique name of the service
* @return result of Delete operation
*/
OperationResult deleteService(String serviceName);
* deleteService service by common-id.
*
* @param commonId
- * unique common-id of the service
+ * unique common-id of the service
* @return result of Delete operation
*/
OperationResult deleteTempService(String commonId);
* modifyService service attributes.
*
* @param serviceName
- * unique name of the service
+ * unique name of the service
* @param operationalState
- * operational state of service
+ * operational state of service
* @param administrativeState
- * administrative state of service
+ * administrative state of service
* @return result of modifyService operation
*/
OperationResult modifyService(String serviceName, State operationalState, AdminStates administrativeState);
*/
OperationResult createService(ServiceCreateInput serviceCreateInput);
+ Optional<ServicePaths> getServicePath(String serviceName);
+
/**
* create new servicePath entry.
*
* @param serviceInput
- * ServiceInput data for creation of service
+ * ServiceInput data for creation of service
* @param outputFromPce
- * output from pce request which is used as input for creating of service.
+ * output from pce request which is used as input for creating of service.
* @return result of createServicePath operation
*/
OperationResult createServicePath(ServiceInput serviceInput, PathComputationRequestOutput outputFromPce);
*/
OperationResult createTempService(TempServiceCreateInput tempServiceCreateInput);
+ Optional<ServicePathList> getServicePaths();
+
+ OperationResult modifyServicePath(PathDescription pathDescription, String serviceName);
+
/**
* deleteServicePath by name.
*
* @param serviceName
- * unique name of the service
+ * unique name of the service
* @return result of Delete operation
*/
OperationResult deleteServicePath(String serviceName);
* This method exists only for backwards compatibility. It will be deleted once refactoring is done.
*
* @param serviceName
- * unique name of the service
+ * unique name of the service
* @param input ServiceCreateInput data
* @param output PathComputationRequestOutput data
* @param choice 0:modify, 1:delete, 2:write