summaryrefslogtreecommitdiffstats
path: root/dcaedt_be/src/main/java/org/onap/sdc/dcae/rule/editor/validators/TopoSearchValidator.java
diff options
context:
space:
mode:
Diffstat (limited to 'dcaedt_be/src/main/java/org/onap/sdc/dcae/rule/editor/validators/TopoSearchValidator.java')
-rw-r--r--dcaedt_be/src/main/java/org/onap/sdc/dcae/rule/editor/validators/TopoSearchValidator.java7
1 files changed, 6 insertions, 1 deletions
diff --git a/dcaedt_be/src/main/java/org/onap/sdc/dcae/rule/editor/validators/TopoSearchValidator.java b/dcaedt_be/src/main/java/org/onap/sdc/dcae/rule/editor/validators/TopoSearchValidator.java
index 1abc2d8..90073e5 100644
--- a/dcaedt_be/src/main/java/org/onap/sdc/dcae/rule/editor/validators/TopoSearchValidator.java
+++ b/dcaedt_be/src/main/java/org/onap/sdc/dcae/rule/editor/validators/TopoSearchValidator.java
@@ -1,11 +1,13 @@
package org.onap.sdc.dcae.rule.editor.validators;
import org.onap.sdc.common.onaplog.Enums.LogLevel;
+import org.onap.sdc.dcae.composition.restmodels.ruleeditor.Condition;
import org.onap.sdc.dcae.composition.restmodels.ruleeditor.TopoSearchAction;
import org.onap.sdc.dcae.errormng.ActionStatus;
import org.onap.sdc.dcae.errormng.ErrConfMgr;
import org.onap.sdc.dcae.errormng.ResponseFormat;
import org.onap.sdc.dcae.rule.editor.utils.ValidationUtils;
+import org.springframework.util.CollectionUtils;
import java.util.List;
@@ -26,7 +28,7 @@ public class TopoSearchValidator extends BaseActionValidator<TopoSearchAction> {
public boolean validate(TopoSearchAction action, List<ResponseFormat> errors) {
boolean valid = super.validate(action, errors);
- if (action.conditionalSearch() && !conditionValidator.validateConditionalAction(action.searchFilter(), errors)) {
+ if (action.conditionalSearch() && searchFilterHasNoneEmptyFields(action.searchFilter()) && !conditionValidator.validateConditionalAction(action.searchFilter(), errors)) {
valid = false;
}
if (!ValidationUtils.validateNotEmpty(action.searchField())) {
@@ -40,6 +42,9 @@ public class TopoSearchValidator extends BaseActionValidator<TopoSearchAction> {
return validateEnrichOrUpdates(action, errors) && valid;
}
+ private boolean searchFilterHasNoneEmptyFields(Condition searchFilter) {
+ return ValidationUtils.validateNotEmpty(searchFilter.getLeft()) || ValidationUtils.validateNotEmpty(searchFilter.getOperator()) || !CollectionUtils.isEmpty(searchFilter.getRight()) && searchFilter.getRight().stream().anyMatch(ValidationUtils::validateNotEmpty);
+ }
private boolean validateEnrichOrUpdates(TopoSearchAction action, List<ResponseFormat> errors) {
if (!action.doEnrich()) {