2 * Copyright © 2016-2018 European Support Limited
4 * Licensed under the Apache License, Version 2.0 (the "License");
5 * you may not use this file except in compliance with the License.
6 * You may obtain a copy of the License at
8 * http://www.apache.org/licenses/LICENSE-2.0
10 * Unless required by applicable law or agreed to in writing, software
11 * distributed under the License is distributed on an "AS IS" BASIS,
12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 * See the License for the specific language governing permissions and
14 * limitations under the License.
17 package org.openecomp.sdc.be.datamodel.utils;
19 import org.openecomp.sdc.be.datatypes.elements.InterfaceOperationDataDefinition;
20 import org.openecomp.sdc.be.datatypes.elements.InterfaceOperationParamDataDefinition;
21 import org.openecomp.sdc.be.datatypes.elements.ListDataDefinition;
22 import org.openecomp.sdc.be.datatypes.elements.OperationInputDefinition;
23 import org.openecomp.sdc.be.datatypes.elements.OperationOutputDefinition;
24 import org.openecomp.sdc.be.model.Operation;
26 import java.util.List;
27 import java.util.stream.Collectors;
29 public class InterfaceUIDataConverter {
31 private InterfaceUIDataConverter () {
34 public static Operation convertInterfaceDataToOperationData(InterfaceOperationDataDefinition interfaceOperation){
36 ListDataDefinition<InterfaceOperationParamDataDefinition> inputParams = interfaceOperation.getInputParams();
37 ListDataDefinition<OperationInputDefinition> inputs = new ListDataDefinition<>();
38 if (inputParams != null) {
39 List<OperationInputDefinition> inputList = inputParams.getListToscaDataDefinition().stream()
40 .map(interfaceOperationParamDataDefinition -> new OperationInputDefinition(interfaceOperationParamDataDefinition.getParamName(),
41 interfaceOperationParamDataDefinition.getParamId())).collect(Collectors.toList());
42 inputList.forEach(inputs::add);
44 ListDataDefinition<InterfaceOperationParamDataDefinition> outputParams = interfaceOperation.getOutputParams();
45 ListDataDefinition<OperationOutputDefinition> outputs = new ListDataDefinition<>();
46 if(outputParams != null) {
47 List<OperationOutputDefinition> outputList = outputParams.getListToscaDataDefinition().stream()
48 .map(interfaceOperationParamDataDefinition -> new OperationOutputDefinition(interfaceOperationParamDataDefinition.getParamName(),
49 interfaceOperationParamDataDefinition.getParamId())).collect(Collectors.toList());
50 outputList.forEach(outputs::add);
53 Operation operationData = new Operation();
54 operationData.setDescription(interfaceOperation.getDescription());
55 operationData.setName(interfaceOperation.getOperationType());
56 operationData.setUniqueId(interfaceOperation.getUniqueId());
57 operationData.setInputs(inputs);
58 operationData.setOutputs(outputs);
63 public static InterfaceOperationDataDefinition convertOperationDataToInterfaceData(Operation operationData){
65 ListDataDefinition<OperationInputDefinition> inputs = operationData.getInputs();
66 List<InterfaceOperationParamDataDefinition> inputParamList = inputs.getListToscaDataDefinition().stream()
67 .map(operationInputDefinition -> new InterfaceOperationParamDataDefinition(operationInputDefinition.getName(),
68 operationInputDefinition.getInputId())).collect(
70 ListDataDefinition<InterfaceOperationParamDataDefinition> inputParams = new ListDataDefinition<>();
71 inputParamList.forEach(inputParams::add);
73 ListDataDefinition<OperationOutputDefinition> outputs = operationData.getOutputs();
74 List<InterfaceOperationParamDataDefinition> outputParamList = outputs.getListToscaDataDefinition()
75 .stream().map(operationOutputDefinition -> new InterfaceOperationParamDataDefinition(operationOutputDefinition.getName(),
76 operationOutputDefinition.getInputId())).collect(Collectors.toList());
77 ListDataDefinition<InterfaceOperationParamDataDefinition> outputParams = new ListDataDefinition<>();
78 outputParamList.forEach(outputParams::add);
80 InterfaceOperationDataDefinition interfaceOperationDataDefinition = new InterfaceOperationDataDefinition();
81 interfaceOperationDataDefinition.setUniqueId(operationData.getUniqueId());
82 interfaceOperationDataDefinition.setOperationType(operationData.getName());
83 interfaceOperationDataDefinition.setDescription(operationData.getDescription());
84 interfaceOperationDataDefinition.setInputParams(inputParams);
85 interfaceOperationDataDefinition.setOutputParams(outputParams);
86 interfaceOperationDataDefinition.setArtifactUUID(operationData.getImplementation().getArtifactUUID());
88 return interfaceOperationDataDefinition;