summaryrefslogtreecommitdiffstats
path: root/config-model-api
diff options
context:
space:
mode:
authorjonmv <venstad@gmail.com>2024-01-02 10:22:47 +0100
committerjonmv <venstad@gmail.com>2024-01-02 10:22:47 +0100
commitc1a5081cdf01808cb4ff611d5cc875c18fa6e2e4 (patch)
tree38b030f04725f8caaa9604afb4b3307a4b117fa2 /config-model-api
parentf10979f97f25a7d989dc26b958bd2321f258112e (diff)
Revert "Merge pull request #29730 from vespa-engine/revert-29692-jonmv/keep-config-change-actions-in-dev"
This reverts commit ef3db955e75e6df68a2a358feb5b95e44979377f, reversing changes made to d73a4b8daaffd30c78d3894a73e5b2eb79af06af.
Diffstat (limited to 'config-model-api')
-rw-r--r--config-model-api/abi-spec.json4
-rw-r--r--config-model-api/src/main/java/com/yahoo/config/application/api/ValidationOverrides.java9
2 files changed, 11 insertions, 2 deletions
diff --git a/config-model-api/abi-spec.json b/config-model-api/abi-spec.json
index c3e20e534ff..10c5662678e 100644
--- a/config-model-api/abi-spec.json
+++ b/config-model-api/abi-spec.json
@@ -771,7 +771,9 @@
"attributes" : [
"public"
],
- "methods" : [ ],
+ "methods" : [
+ "public java.util.Map messagesById()"
+ ],
"fields" : [ ]
},
"com.yahoo.config.application.api.ValidationOverrides" : {
diff --git a/config-model-api/src/main/java/com/yahoo/config/application/api/ValidationOverrides.java b/config-model-api/src/main/java/com/yahoo/config/application/api/ValidationOverrides.java
index 1edddb63e52..7b52d825473 100644
--- a/config-model-api/src/main/java/com/yahoo/config/application/api/ValidationOverrides.java
+++ b/config-model-api/src/main/java/com/yahoo/config/application/api/ValidationOverrides.java
@@ -15,6 +15,7 @@ import java.time.format.DateTimeFormatter;
import java.util.ArrayList;
import java.util.Collection;
import java.util.HashMap;
+import java.util.LinkedHashMap;
import java.util.List;
import java.util.Map;
import java.util.Optional;
@@ -36,7 +37,7 @@ public class ValidationOverrides {
private final String xmlForm;
- /** Creates a validation overrides which does not have an xml form */
+ /** Creates a validation overrides which does not have an XML form */
public ValidationOverrides(List<Allow> overrides) {
this(overrides, null);
}
@@ -163,10 +164,13 @@ public class ValidationOverrides {
*/
public static class ValidationException extends IllegalArgumentException {
+ private final Map<ValidationId, Collection<String>> messagesById = new LinkedHashMap<>();
+
static final long serialVersionUID = 789984668;
private ValidationException(ValidationId validationId, String message) {
super(validationId + ": " + message + ". " + toAllowMessage(validationId));
+ messagesById.put(validationId, List.of(message));
}
private ValidationException(Map<ValidationId, Collection<String>> messagesById) {
@@ -175,8 +179,11 @@ public class ValidationOverrides {
String.join("\n\t", messages.getValue()) + "\n" +
toAllowMessage(messages.getKey()))
.collect(Collectors.joining("\n")));
+ messagesById.forEach((id, messages) -> this.messagesById.put(id, List.copyOf(messages)));
}
+ public Map<ValidationId, Collection<String>> messagesById() { return Map.copyOf(messagesById); }
+
}
}