1 package org.openecomp.core.impl.services;
3 import org.openecomp.core.converter.ServiceTemplateReaderService;
4 import org.openecomp.sdc.common.errors.CoreException;
5 import org.openecomp.sdc.common.errors.ErrorCategory;
6 import org.openecomp.sdc.common.errors.ErrorCode;
7 import org.openecomp.sdc.tosca.services.YamlUtil;
8 import org.yaml.snakeyaml.error.YAMLException;
10 import java.util.HashMap;
12 import java.util.Objects;
14 import static org.openecomp.core.converter.datatypes.Constants.*;
16 public class ServiceTemplateReaderServiceImpl implements ServiceTemplateReaderService {
18 private Map<String, Object> readServiceTemplate = new HashMap<>();
20 public ServiceTemplateReaderServiceImpl(byte[] serviceTemplateContent){
21 this.readServiceTemplate = readServiceTemplate(serviceTemplateContent);
25 public Map<String, Object> readServiceTemplate(byte[] serviceTemplateContent) {
27 Map<String, Object> readSt =
28 new YamlUtil().yamlToObject(new String(serviceTemplateContent), Map.class);
34 public Object getMetadata(){
35 return this.readServiceTemplate.get(metadata);
39 public Object getToscaVersion(){
40 return this.readServiceTemplate.get(definitionVersion);
44 public Object getNodeTypes(){
45 return this.readServiceTemplate.get(nodeTypes);
49 public Object getTopologyTemplate(){
50 return this.readServiceTemplate.get(topologyTemplate);
54 public Map<String, Object> getNodeTemplates(){
55 return Objects.isNull(this.getTopologyTemplate()) ? new HashMap<>()
56 : (Map<String, Object>) ((Map<String, Object>)this.getTopologyTemplate()).get(nodeTemplates);
60 public Map<String, Object> getInputs(){
61 return Objects.isNull(this.getTopologyTemplate()) ? new HashMap<>()
62 : (Map<String, Object>) ((Map<String, Object>)this.getTopologyTemplate()).get(inputs);
66 public Map<String, Object> getOutputs(){
67 return Objects.isNull(this.getTopologyTemplate()) ? new HashMap<>()
68 : (Map<String, Object>) ((Map<String, Object>)this.getTopologyTemplate()).get(outputs);
72 public Map<String, Object> getSubstitutionMappings(){
73 return Objects.isNull(this.getTopologyTemplate()) ? new HashMap<>()
74 : (Map<String, Object>) ((Map<String, Object>)this.getTopologyTemplate()).get(substitutionMappings);