1 package org.onap.sdc.dcae.rule.editor.validators;
3 import org.onap.sdc.dcae.composition.restmodels.ruleeditor.Condition;
4 import org.onap.sdc.dcae.errormng.ActionStatus;
5 import org.onap.sdc.dcae.errormng.ErrConfMgr;
6 import org.onap.sdc.dcae.errormng.ResponseFormat;
7 import org.onap.sdc.dcae.rule.editor.enums.OperatorTypeEnum;
8 import org.onap.sdc.dcae.rule.editor.utils.ValidationUtils;
9 import org.springframework.util.CollectionUtils;
11 import java.util.List;
13 public class ConditionValidator implements IRuleElementValidator<Condition> {
15 private static ConditionValidator conditionValidator = new ConditionValidator();
17 public static ConditionValidator getInstance() {
18 return conditionValidator;
21 private ConditionValidator(){}
23 public boolean validate(Condition condition, List<ResponseFormat> errors) {
25 if(!ValidationUtils.validateNotEmpty(condition.getLeft())) {
27 errors.add(ErrConfMgr.INSTANCE.getResponseFormat(ActionStatus.MISSING_OPERAND, null, "left"));
29 if(CollectionUtils.isEmpty(condition.getRight())) {
31 errors.add(ErrConfMgr.INSTANCE.getResponseFormat(ActionStatus.MISSING_OPERAND, null, "right"));
33 if(!ValidationUtils.validateNotEmpty(condition.getOperator()) || null == OperatorTypeEnum.getTypeByName(condition.getOperator())) {
35 errors.add(ErrConfMgr.INSTANCE.getResponseFormat(ActionStatus.INVALID_OPERATOR, null, condition.getOperator()));