1 package org.openecomp.sdc.be.datamodel.utils;
3 import java.util.ArrayList;
4 import java.util.HashMap;
7 import org.openecomp.sdc.be.datatypes.components.ResourceMetadataDataDefinition;
8 import org.openecomp.sdc.be.datatypes.components.ServiceMetadataDataDefinition;
9 import org.openecomp.sdc.be.datatypes.enums.ComponentFieldsEnum;
10 import org.openecomp.sdc.be.model.Component;
11 import org.openecomp.sdc.be.model.Resource;
12 import org.openecomp.sdc.be.model.Service;
13 import org.openecomp.sdc.be.ui.model.UiComponentDataTransfer;
14 import org.openecomp.sdc.be.ui.model.UiComponentMetadata;
15 import org.openecomp.sdc.be.ui.model.UiResourceDataTransfer;
16 import org.openecomp.sdc.be.ui.model.UiResourceMetadata;
17 import org.openecomp.sdc.be.ui.model.UiServiceDataTransfer;
18 import org.openecomp.sdc.be.ui.model.UiServiceMetadata;
20 public class UiComponentDataConverter {
22 public static void setUiTranferDataByFieldName(UiComponentDataTransfer dataTransfer, Component component, String fieldName) {
24 switch (ComponentFieldsEnum.findByValue(fieldName)) {
27 if(component.getInputs() == null){
28 dataTransfer.setInputs(new ArrayList<>());
30 dataTransfer.setInputs(component.getInputs());
34 case COMPONENT_INSTANCE_RELATION:
35 if(component.getComponentInstancesRelations() == null){
36 dataTransfer.setComponentInstancesRelations(new ArrayList<>());
38 dataTransfer.setComponentInstancesRelations(component.getComponentInstancesRelations());
44 if(component.getGroups() == null){
45 dataTransfer.setGroups(new ArrayList<>());
47 dataTransfer.setGroups(component.getGroups());
51 case COMPONENT_INSTANCES:
52 if(component.getComponentInstances() == null) {
53 dataTransfer.setComponentInstances(new ArrayList<>());
55 dataTransfer.setComponentInstances(component.getComponentInstances());
59 case COMPONENT_INSTANCES_PROPERTIES:
60 if(component.getComponentInstancesProperties() == null) {
61 dataTransfer.setComponentInstancesProperties(new HashMap<>());
63 dataTransfer.setComponentInstancesProperties(component.getComponentInstancesProperties());
68 if(component.getCapabilities() == null) {
69 dataTransfer.setCapabilities(new HashMap<>());
71 dataTransfer.setCapabilities(component.getCapabilities());
76 if(component.getRequirements() == null) {
77 dataTransfer.setRequirements(new HashMap<>());
79 dataTransfer.setRequirements(component.getRequirements());
83 case DEPLOYMENT_ARTIFACTS:
84 if(component.getDeploymentArtifacts() == null) {
85 dataTransfer.setDeploymentArtifacts(new HashMap<>());
87 dataTransfer.setDeploymentArtifacts(component.getDeploymentArtifacts());
92 if(component.getToscaArtifacts() == null) {
93 dataTransfer.setToscaArtifacts(new HashMap<>());
95 dataTransfer.setToscaArtifacts(component.getToscaArtifacts());
100 if(component.getArtifacts() == null) {
101 dataTransfer.setArtifacts(new HashMap<>());
103 dataTransfer.setArtifacts(component.getArtifacts());
107 case COMPONENT_INSTANCES_ATTRIBUTES:
108 if(component.getComponentInstancesAttributes() == null) {
109 dataTransfer.setComponentInstancesAttributes(new HashMap<>());
111 dataTransfer.setComponentInstancesAttributes(component.getComponentInstancesAttributes());
115 case COMPONENT_INSTANCE_INPUTS:
116 if(component.getComponentInstancesInputs() == null) {
117 dataTransfer.setComponentInstancesInputs(new HashMap<>());
119 dataTransfer.setComponentInstancesInputs(component.getComponentInstancesInputs());
132 public static UiComponentDataTransfer getUiDataTransferFromResourceByParams(Resource resource, List<String> paramsToReturn) {
133 UiResourceDataTransfer dataTransfer = new UiResourceDataTransfer();
135 for(String fieldName: paramsToReturn){
137 switch (ComponentFieldsEnum.findByValue(fieldName)) {
140 if(resource.getProperties() == null) {
141 dataTransfer.setProperties(new ArrayList<>());
143 dataTransfer.setProperties(resource.getProperties());
148 if(resource.getInterfaces() == null) {
149 dataTransfer.setInterfaces(new HashMap<>());
151 dataTransfer.setInterfaces(resource.getInterfaces());
156 if(resource.getDerivedFrom() == null) {
157 dataTransfer.setDerivedFrom(new ArrayList<>());
159 dataTransfer.setDerivedFrom(resource.getDerivedFrom());
164 if(resource.getAttributes() == null) {
165 dataTransfer.setAttributes(new ArrayList<>());
167 dataTransfer.setAttributes(resource.getAttributes());
171 case ADDITIONAL_INFORMATION:
172 if(resource.getAdditionalInformation() == null) {
173 dataTransfer.setAdditionalInformation(new ArrayList<>());
175 dataTransfer.setAdditionalInformation(resource.getAdditionalInformation());
179 UiResourceMetadata metadata = new UiResourceMetadata(resource.getCategories(), resource.getDerivedFrom(), (ResourceMetadataDataDefinition) resource.getComponentMetadataDefinition().getMetadataDataDefinition());
180 dataTransfer.setMetadata(metadata);
184 setUiTranferDataByFieldName(dataTransfer, resource, fieldName);
191 public static UiComponentDataTransfer getUiDataTransferFromServiceByParams(Service service, List<String> paramsToReturn) {
192 UiServiceDataTransfer dataTransfer = new UiServiceDataTransfer();
194 for(String fieldName: paramsToReturn){
196 switch (ComponentFieldsEnum.findByValue(fieldName)) {
198 case SERVICE_API_ARTIFACTS:
199 if(service.getServiceApiArtifacts() == null) {
200 dataTransfer.setServiceApiArtifacts(new HashMap<>());
202 dataTransfer.setServiceApiArtifacts(service.getServiceApiArtifacts());
208 UiServiceMetadata metadata = new UiServiceMetadata(service.getCategories(), (ServiceMetadataDataDefinition) service.getComponentMetadataDefinition().getMetadataDataDefinition());
209 dataTransfer.setMetadata(metadata);
212 setUiTranferDataByFieldName(dataTransfer, service, fieldName);
220 public static UiComponentMetadata convertToUiComponentMetadata(Component component) {
222 UiComponentMetadata uiComponentMetadata = null;
223 switch (component.getComponentType()) {
225 Resource resource = (Resource)component;
226 uiComponentMetadata = new UiResourceMetadata(component.getCategories(), resource.getDerivedFrom(), (ResourceMetadataDataDefinition) resource.getComponentMetadataDefinition().getMetadataDataDefinition());
229 uiComponentMetadata = new UiServiceMetadata(component.getCategories(), (ServiceMetadataDataDefinition) component.getComponentMetadataDefinition().getMetadataDataDefinition());
233 return uiComponentMetadata;