aboutsummaryrefslogtreecommitdiffstats
path: root/config-model/src/main/java/com/yahoo/vespa/model/application
diff options
context:
space:
mode:
authorJon Marius Venstad <venstad@gmail.com>2020-11-23 08:27:57 +0100
committerJon Marius Venstad <venstad@gmail.com>2020-11-23 08:27:57 +0100
commit866096356f5a9d8d666c2f728e7cf9efa45b416b (patch)
tree8cb017a41db7717d48bb6b24702facf191038aef /config-model/src/main/java/com/yahoo/vespa/model/application
parent1d82ff21476a9918ded0b70242397b7ee3157096 (diff)
Remove duplicate validation messages
Diffstat (limited to 'config-model/src/main/java/com/yahoo/vespa/model/application')
-rw-r--r--config-model/src/main/java/com/yahoo/vespa/model/application/validation/Validation.java13
1 files changed, 9 insertions, 4 deletions
diff --git a/config-model/src/main/java/com/yahoo/vespa/model/application/validation/Validation.java b/config-model/src/main/java/com/yahoo/vespa/model/application/validation/Validation.java
index 90b8686991b..e028eaea3c1 100644
--- a/config-model/src/main/java/com/yahoo/vespa/model/application/validation/Validation.java
+++ b/config-model/src/main/java/com/yahoo/vespa/model/application/validation/Validation.java
@@ -27,7 +27,9 @@ import com.yahoo.vespa.model.application.validation.first.AccessControlOnFirstDe
import java.time.Instant;
import java.util.Arrays;
+import java.util.Collection;
import java.util.Collections;
+import java.util.LinkedHashSet;
import java.util.List;
import java.util.Map;
import java.util.Optional;
@@ -36,7 +38,9 @@ import java.util.stream.Collectors;
import static java.util.stream.Collectors.groupingBy;
import static java.util.stream.Collectors.mapping;
+import static java.util.stream.Collectors.toCollection;
import static java.util.stream.Collectors.toList;
+import static java.util.stream.Collectors.toSet;
/**
* Executor of validators. This defines the right order of validator execution.
@@ -107,10 +111,11 @@ public class Validation {
.flatMap(v -> v.validate(currentModel, nextModel, overrides, now).stream())
.collect(toList());
- Map<ValidationId, List<String>> disallowableActions = actions.stream()
- .filter(action -> action.validationId().isPresent())
- .collect(groupingBy(action -> action.validationId().orElseThrow(),
- mapping(ConfigChangeAction::getMessage, toList())));
+ Map<ValidationId, Collection<String>> disallowableActions = actions.stream()
+ .filter(action -> action.validationId().isPresent())
+ .collect(groupingBy(action -> action.validationId().orElseThrow(),
+ mapping(ConfigChangeAction::getMessage,
+ toCollection(LinkedHashSet::new))));
overrides.invalid(disallowableActions, now);
return actions;
}