DCAE-D be initial commit
[sdc/dcae-d/dt-be-main.git] / dcaedt_be / src / main / java / org / onap / sdc / dcae / rule / editor / translators / MapActionTranslator.java
1 package org.onap.sdc.dcae.rule.editor.translators;
2
3 import com.google.gson.annotations.SerializedName;
4
5 import org.onap.sdc.common.onaplog.Enums.LogLevel;
6
7 import java.util.List;
8 import java.util.Map;
9
10 import org.onap.sdc.dcae.composition.restmodels.ruleeditor.MapAction;
11
12 public class MapActionTranslator extends CopyActionTranslator<MapAction> {
13
14         private static MapActionTranslator mapActionTranslator = new MapActionTranslator();
15
16         public static MapActionTranslator getInstance() {
17                 return mapActionTranslator;
18         }
19
20         private MapActionTranslator(){}
21
22         private class MapActionTranslation extends ProcessorTranslation {
23
24                 private Map<String, String> map;
25                 private String field;
26                 private String toField;
27                 @SerializedName("default")
28                 private String Default;
29
30                 private MapActionTranslation(MapAction action) {
31                         clazz = "MapAlarmValues";
32                         Default = action.getMapDefaultValue();
33                         field = action.getFromValue();
34                         toField = action.getTarget();
35                         map = action.transformToMap();
36                 }
37         }
38
39         @Override
40         public Translation translateToHpJson(MapAction action) {
41                 return new MapActionTranslation(action);
42         }
43
44         @Override
45         public boolean addToHpJsonProcessors(MapAction action, List<Translation> processors, boolean asNewProcessor) {
46                 debugLogger.log(LogLevel.DEBUG, this.getClass().getName(), "Translating map action");
47                 addToHpJsonProcessors(action, processors);
48                 return true;
49         }
50 }