re base code
[sdc.git] / openecomp-be / lib / openecomp-tosca-converter-lib / openecomp-tosca-converter-core / src / main / java / org / openecomp / core / impl / services / ServiceTemplateReaderServiceImpl.java
1 package org.openecomp.core.impl.services;
2
3 import org.onap.sdc.tosca.services.YamlUtil;
4 import org.openecomp.core.converter.ServiceTemplateReaderService;
5
6 import java.util.HashMap;
7 import java.util.Map;
8 import java.util.Objects;
9
10 import static org.openecomp.core.converter.datatypes.Constants.*;
11
12 public class ServiceTemplateReaderServiceImpl implements ServiceTemplateReaderService {
13
14   private Map<String, Object> readServiceTemplate = new HashMap<>();
15
16   public ServiceTemplateReaderServiceImpl(byte[] serviceTemplateContent){
17     this.readServiceTemplate = readServiceTemplate(serviceTemplateContent);
18   }
19
20   @Override
21   public Map<String, Object> readServiceTemplate(byte[] serviceTemplateContent) {
22
23     Map<String, Object> readSt =
24         new YamlUtil().yamlToObject(new String(serviceTemplateContent), Map.class);
25
26     return readSt;
27   }
28
29   @Override
30   public Object getMetadata(){
31     return this.readServiceTemplate.get(metadata);
32   }
33
34   @Override
35   public Object getToscaVersion(){
36     return this.readServiceTemplate.get(definitionVersion);
37   }
38
39   @Override
40   public Map<String, Object> getNodeTypes(){
41     return Objects.isNull(this.readServiceTemplate.get(nodeTypes)) ? new HashMap<>()
42         :(Map<String, Object>) this.readServiceTemplate.get(nodeTypes);
43   }
44
45   @Override
46   public Object getTopologyTemplate(){
47     return this.readServiceTemplate.get(topologyTemplate);
48   }
49
50   @Override
51   public Map<String, Object> getNodeTemplates(){
52     return Objects.isNull(this.getTopologyTemplate()) ? new HashMap<>()
53         : (Map<String, Object>) ((Map<String, Object>)this.getTopologyTemplate()).get(nodeTemplates);
54   }
55
56   @Override
57   public Map<String, Object> getInputs(){
58     return Objects.isNull(this.getTopologyTemplate()) ? new HashMap<>()
59         : (Map<String, Object>) ((Map<String, Object>)this.getTopologyTemplate()).get(inputs);
60   }
61
62   @Override
63   public Map<String, Object> getOutputs(){
64     return Objects.isNull(this.getTopologyTemplate()) ? new HashMap<>()
65         : (Map<String, Object>) ((Map<String, Object>)this.getTopologyTemplate()).get(outputs);
66   }
67
68   @Override
69   public Map<String, Object> getSubstitutionMappings(){
70     return Objects.isNull(this.getTopologyTemplate()) ? new HashMap<>()
71         : (Map<String, Object>) ((Map<String, Object>)this.getTopologyTemplate()).get(substitutionMappings);
72   }
73 }