reintroduce SP 1.6 in SH
[transportpce.git] / servicehandler / src / main / java / org / opendaylight / transportpce / servicehandler / ModelMappingUtils.java
index ae8d48e6f1f27c1430de30089ff272ad42f8414c..c427b216af4ec422496aff58d0d4416a4b1a0e6a 100644 (file)
@@ -30,7 +30,12 @@ import org.opendaylight.yang.gen.v1.http.org.openroadm.service.rev161014.Service
 import org.opendaylight.yang.gen.v1.http.org.openroadm.service.rev161014.ServiceDeleteInput;
 import org.opendaylight.yang.gen.v1.http.org.openroadm.service.rev161014.ServiceDeleteOutput;
 import org.opendaylight.yang.gen.v1.http.org.openroadm.service.rev161014.ServiceDeleteOutputBuilder;
+import org.opendaylight.yang.gen.v1.http.org.openroadm.service.rev161014.ServiceFeasibilityCheckInput;
+import org.opendaylight.yang.gen.v1.http.org.openroadm.service.rev161014.ServiceFeasibilityCheckOutput;
+import org.opendaylight.yang.gen.v1.http.org.openroadm.service.rev161014.ServiceFeasibilityCheckOutputBuilder;
 import org.opendaylight.yang.gen.v1.http.org.openroadm.service.rev161014.ServiceReconfigureInput;
+import org.opendaylight.yang.gen.v1.http.org.openroadm.service.rev161014.ServiceReconfigureOutput;
+import org.opendaylight.yang.gen.v1.http.org.openroadm.service.rev161014.ServiceReconfigureOutputBuilder;
 import org.opendaylight.yang.gen.v1.http.org.openroadm.service.rev161014.ServiceRerouteInput;
 import org.opendaylight.yang.gen.v1.http.org.openroadm.service.rev161014.ServiceRerouteOutput;
 import org.opendaylight.yang.gen.v1.http.org.openroadm.service.rev161014.ServiceRerouteOutputBuilder;
@@ -67,7 +72,11 @@ public final class ModelMappingUtils {
             PathDescription pathDescription) {
         ServiceImplementationRequestInputBuilder serviceImplementationRequestInputBuilder =
                 new ServiceImplementationRequestInputBuilder();
-        serviceImplementationRequestInputBuilder.setServiceName(input.getServiceName());
+        if (input.isServiceReconfigure()) {
+            serviceImplementationRequestInputBuilder.setServiceName(input.getNewServiceName());
+        } else {
+            serviceImplementationRequestInputBuilder.setServiceName(input.getServiceName());
+        }
         org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.renderer.rev171017.service.implementation
             .request.input.ServiceAEndBuilder serviceAEnd = new org.opendaylight.yang.gen.v1.http.org.opendaylight
                 .transportpce.renderer.rev171017.service.implementation.request.input.ServiceAEndBuilder();
@@ -124,6 +133,16 @@ public final class ModelMappingUtils {
         return builder.build();
     }
 
+    public static org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.renderer.rev171017.ServiceDeleteInput
+            createServiceDeleteInput(ServiceReconfigureInput serviceReconfigureInput) {
+        ServiceDeleteInputBuilder builder = new ServiceDeleteInputBuilder();
+        String serviceName = serviceReconfigureInput.getServiceName();
+        builder.setServiceName(serviceReconfigureInput.getServiceName());
+        builder.setServiceHandlerHeader(
+                new ServiceHandlerHeaderBuilder().setRequestId(serviceName + "-reconfigure").build());
+        return builder.build();
+    }
+
     public static ServiceAEnd createServiceAEnd(org.opendaylight.yang.gen.v1.http.org.openroadm.common.service.types
             .rev161014.ServiceEndpoint serviceAEnd) {
         ServiceAEndBuilder serviceAEndBuilder = new ServiceAEndBuilder();
@@ -220,6 +239,30 @@ public final class ModelMappingUtils {
         return RpcResultBuilder.success(output.build()).buildFuture();
     }
 
+    public static ListenableFuture<RpcResult<ServiceFeasibilityCheckOutput>> createCreateServiceReply(
+            ServiceFeasibilityCheckInput input, String finalAck, String message, String responseCode) {
+        ResponseParametersBuilder responseParameters = new ResponseParametersBuilder();
+        ConfigurationResponseCommonBuilder configurationResponseCommon = new ConfigurationResponseCommonBuilder()
+                .setAckFinalIndicator(finalAck).setResponseMessage(message).setResponseCode(responseCode);
+        if (input.getSdncRequestHeader() != null) {
+            configurationResponseCommon.setRequestId(input.getSdncRequestHeader().getRequestId());
+        } else {
+            configurationResponseCommon.setRequestId(null);
+        }
+        ServiceFeasibilityCheckOutputBuilder output = new ServiceFeasibilityCheckOutputBuilder()
+                .setConfigurationResponseCommon(configurationResponseCommon.build())
+                        .setResponseParameters(responseParameters.build());
+        return RpcResultBuilder.success(output.build()).buildFuture();
+    }
+
+    public static ListenableFuture<RpcResult<ServiceReconfigureOutput>> createCreateServiceReply(
+            ServiceReconfigureInput input, String message, RpcStatus rpcStatus) {
+        ServiceReconfigureOutputBuilder output = new ServiceReconfigureOutputBuilder()
+                .setStatus(rpcStatus)
+                .setStatusMessage(message);
+        return RpcResultBuilder.success(output.build()).buildFuture();
+    }
+
     public static ListenableFuture<RpcResult<ServiceRerouteOutput>> createRerouteServiceReply(ServiceRerouteInput input,
             String finalAckYes, String message, RpcStatus status) {
         ServiceRerouteOutputBuilder output = new ServiceRerouteOutputBuilder()