reintroduce SP 1.6 in SH
[transportpce.git] / servicehandler / src / main / java / org / opendaylight / transportpce / servicehandler / service / PCEServiceWrapper.java
index c274c3b2f978955220529ade201a1475ff54a0a1..3aaea4a9c1556821442c199aeffa9b9ea73f11aa 100644 (file)
@@ -36,6 +36,7 @@ import org.opendaylight.yang.gen.v1.http.org.openroadm.common.service.types.rev1
 import org.opendaylight.yang.gen.v1.http.org.openroadm.common.service.types.rev161014.configuration.response.common.ConfigurationResponseCommonBuilder;
 import org.opendaylight.yang.gen.v1.http.org.openroadm.common.service.types.rev161014.sdnc.request.header.SdncRequestHeader;
 import org.opendaylight.yang.gen.v1.http.org.openroadm.service.rev161014.ServiceCreateInput;
+import org.opendaylight.yang.gen.v1.http.org.openroadm.service.rev161014.ServiceFeasibilityCheckInput;
 import org.opendaylight.yang.gen.v1.http.org.openroadm.service.rev161014.TempServiceCreateInput;
 import org.opendaylight.yang.gen.v1.http.org.transportpce.b.c._interface.routing.constraints.rev171017.RoutingConstraintsSp.PceMetric;
 import org.opendaylight.yang.gen.v1.http.org.transportpce.b.c._interface.routing.constraints.rev171017.routing.constraints.sp.HardConstraints;
@@ -88,6 +89,21 @@ public class PCEServiceWrapper {
         }
     }
 
+    public PathComputationRequestOutput performPCE(ServiceFeasibilityCheckInput serviceFeasibilityCheckInput,
+            boolean reserveResource) {
+        LOG.info("performing PCE ...");
+        if (validateParams(serviceFeasibilityCheckInput.getCommonId(),
+                serviceFeasibilityCheckInput.getSdncRequestHeader())) {
+            return performPCE(serviceFeasibilityCheckInput.getHardConstraints(),
+                    serviceFeasibilityCheckInput.getSoftConstraints(), serviceFeasibilityCheckInput.getCommonId(),
+                    serviceFeasibilityCheckInput.getSdncRequestHeader(), serviceFeasibilityCheckInput.getServiceAEnd(),
+                    serviceFeasibilityCheckInput.getServiceZEnd(),
+                    ServiceNotificationTypes.ServiceFeasibilityCheckResult, reserveResource);
+        } else {
+            return returnPCEFailed();
+        }
+    }
+
     private PathComputationRequestOutput performPCE(org.opendaylight.yang.gen.v1.http.org.openroadm.routing.constrains
             .rev161014.routing.constraints.HardConstraints hardConstraints, org.opendaylight.yang.gen.v1.http.org
             .openroadm.routing.constrains.rev161014.routing.constraints.SoftConstraints softConstraints,