b691d832675b640605da6a3c109cb2c7d72629c0
[sdc.git] /
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     return
24         new YamlUtil().yamlToObject(new String(serviceTemplateContent), Map.class);
25
26   }
27
28   @Override
29   public Object getMetadata(){
30     return this.readServiceTemplate.get(metadata);
31   }
32
33   @Override
34   public Object getToscaVersion(){
35     return this.readServiceTemplate.get(definitionVersion);
36   }
37
38   @Override
39   public Map<String, Object> getNodeTypes(){
40     return Objects.isNull(this.readServiceTemplate.get(nodeTypes)) ? new HashMap<>()
41         :(Map<String, Object>) this.readServiceTemplate.get(nodeTypes);
42   }
43
44   @Override
45   public Object getTopologyTemplate(){
46     return this.readServiceTemplate.get(topologyTemplate);
47   }
48
49   @Override
50   public Map<String, Object> getNodeTemplates(){
51     return Objects.isNull(this.getTopologyTemplate()) ? new HashMap<>()
52         : (Map<String, Object>) ((Map<String, Object>)this.getTopologyTemplate()).get(nodeTemplates);
53   }
54
55   @Override
56   public Map<String, Object> getInputs(){
57     return Objects.isNull(this.getTopologyTemplate()) ? new HashMap<>()
58         : (Map<String, Object>) ((Map<String, Object>)this.getTopologyTemplate()).get(inputs);
59   }
60
61   @Override
62   public Map<String, Object> getOutputs(){
63     return Objects.isNull(this.getTopologyTemplate()) ? new HashMap<>()
64         : (Map<String, Object>) ((Map<String, Object>)this.getTopologyTemplate()).get(outputs);
65   }
66
67   @Override
68   public Map<String, Object> getSubstitutionMappings(){
69     return Objects.isNull(this.getTopologyTemplate()) ? new HashMap<>()
70         : (Map<String, Object>) ((Map<String, Object>)this.getTopologyTemplate()).get(substitutionMappings);
71   }
72 }