1 package org.onap.sdc.dcae.rule.editor.enums;
3 import java.util.Arrays;
5 import org.onap.sdc.dcae.rule.editor.translators.ConditionGroupTranslator;
6 import org.onap.sdc.dcae.rule.editor.translators.ConditionTranslator;
7 import org.onap.sdc.dcae.rule.editor.translators.CopyActionTranslator;
8 import org.onap.sdc.dcae.rule.editor.translators.DateFormatterTranslator;
9 import org.onap.sdc.dcae.rule.editor.translators.FieldConditionTranslator;
10 import org.onap.sdc.dcae.rule.editor.translators.IRuleElementTranslator;
11 import org.onap.sdc.dcae.rule.editor.translators.MapActionTranslator;
12 import org.onap.sdc.dcae.rule.editor.translators.MappingRulesTranslator;
13 import org.onap.sdc.dcae.rule.editor.translators.RegexActionTranslator;
14 import org.onap.sdc.dcae.rule.editor.translators.RuleTranslator;
15 import org.onap.sdc.dcae.rule.editor.validators.ActionValidator;
16 import org.onap.sdc.dcae.rule.editor.validators.ConcatActionValidator;
17 import org.onap.sdc.dcae.rule.editor.validators.ConditionGroupValidator;
18 import org.onap.sdc.dcae.rule.editor.validators.ConditionValidator;
19 import org.onap.sdc.dcae.rule.editor.validators.DateFormatterValidator;
20 import org.onap.sdc.dcae.rule.editor.validators.IRuleElementValidator;
21 import org.onap.sdc.dcae.rule.editor.validators.MapActionValidator;
22 import org.onap.sdc.dcae.rule.editor.validators.RuleValidator;
24 public enum RuleEditorElementType {
25 COPY("Copy", ActionValidator.getInstance(), CopyActionTranslator.getInstance()),
26 CONCAT("Concat", ConcatActionValidator.getInstance(), CopyActionTranslator.getInstance()),
27 MAP("Map", MapActionValidator.getInstance(), MapActionTranslator.getInstance()),
28 REGEX("Regex", ActionValidator.getInstance(), RegexActionTranslator.getInstance()),
29 DATE_FORMATTER("DateFormatter", DateFormatterValidator.getInstance(), DateFormatterTranslator.getInstance()),
30 CONDITION("Condition", ConditionValidator.getInstance(), ConditionTranslator.getInstance()),
31 FIELD_CONDITION("FieldCondition", ConditionValidator.getInstance(), FieldConditionTranslator.getInstance()),
32 CONDITION_GROUP("ConditionGroup", ConditionGroupValidator.getInstance(), ConditionGroupTranslator.getInstance()),
33 RULE("Rule", RuleValidator.getInstance(), RuleTranslator.getInstance()),
34 MAPPING_RULES("MappingRules", null, MappingRulesTranslator.getInstance());
36 private String elementType;
37 private IRuleElementValidator validator;
38 private IRuleElementTranslator translator;
40 public IRuleElementValidator getValidator() {
44 public IRuleElementTranslator getTranslator() {
48 RuleEditorElementType(String elementType, IRuleElementValidator validator, IRuleElementTranslator translator) {
49 this.elementType = elementType;
50 this.validator = validator;
51 this.translator = translator;
54 public static RuleEditorElementType getElementTypeByName(String name) {
55 return Arrays.stream(RuleEditorElementType.values()).filter(p -> p.elementType.equalsIgnoreCase(name))
56 .findAny().orElse(null);