DCAE-D be initial commit
[sdc/dcae-d/dt-be-main.git] / dcaedt_be / src / main / java / org / onap / sdc / dcae / rule / editor / translators / RegexActionTranslator.java
1 package org.onap.sdc.dcae.rule.editor.translators;
2
3 import org.onap.sdc.common.onaplog.Enums.LogLevel;
4 import java.util.List;
5
6 import org.onap.sdc.dcae.composition.restmodels.ruleeditor.BaseAction;
7
8 public class RegexActionTranslator extends CopyActionTranslator<BaseAction> {
9
10         private static RegexActionTranslator regexActionTranslator = new RegexActionTranslator();
11
12         public static RegexActionTranslator getInstance() {
13                 return regexActionTranslator;
14         }
15
16         private RegexActionTranslator(){}
17
18         private class RegexCopyActionTranslation extends ProcessorTranslation {
19
20                 private String regex;
21                 private String field;
22                 private String value;
23
24                 private RegexCopyActionTranslation(BaseAction action) {
25                         clazz = "ExtractText";
26                         regex = action.getRegexValue();
27                         field = action.getTarget();
28                         value = action.getFromValue();
29                 }
30         }
31
32         @Override
33         public boolean addToHpJsonProcessors(BaseAction action, List<Translation> processors, boolean asNewProcessor) {
34                 debugLogger.log(LogLevel.DEBUG, this.getClass().getName(), "Translating copy action as regex action");
35                 addToHpJsonProcessors(action, processors);
36                 return true;
37         }
38
39         @Override
40         public Translation translateToHpJson(BaseAction action) {
41                 return new RegexCopyActionTranslation(action);
42         }
43
44 }