aboutsummaryrefslogtreecommitdiffstats
path: root/config-model-api/src/main/java/com/yahoo/config/application/api/Endpoint.java
diff options
context:
space:
mode:
authorjonmv <venstad@gmail.com>2022-10-19 16:02:02 +0200
committerjonmv <venstad@gmail.com>2022-10-19 16:02:02 +0200
commitd9971c5e86a6710727c50d628cfb2b172f63ee36 (patch)
treee75a50d4a565568b5943f5d85ace1509c7396234 /config-model-api/src/main/java/com/yahoo/config/application/api/Endpoint.java
parent0f2271b74221560e61063c13faf92d141e1991c0 (diff)
Allow multiple regions and instances in application endpoints, part XML
Diffstat (limited to 'config-model-api/src/main/java/com/yahoo/config/application/api/Endpoint.java')
-rw-r--r--config-model-api/src/main/java/com/yahoo/config/application/api/Endpoint.java14
1 files changed, 6 insertions, 8 deletions
diff --git a/config-model-api/src/main/java/com/yahoo/config/application/api/Endpoint.java b/config-model-api/src/main/java/com/yahoo/config/application/api/Endpoint.java
index 78bf9fc68c4..83106e75627 100644
--- a/config-model-api/src/main/java/com/yahoo/config/application/api/Endpoint.java
+++ b/config-model-api/src/main/java/com/yahoo/config/application/api/Endpoint.java
@@ -52,12 +52,10 @@ public class Endpoint {
Target a = targets.get(i);
Target b = targets.get(j);
if (level == Level.application) {
- // - All instance names must be distinct
- // - All region names must be equal
- if (a.instance().equals(b.instance())) throw new IllegalArgumentException("Instance '" + a.instance +
- "' declared multiple times, but allowed at most once");
- if (!a.region().equals(b.region())) throw new IllegalArgumentException("Instance '" + a.instance + "' declares a region different from instance '" +
- b.instance() + "': '" + a.region() + "'");
+ // - All instance name and region combinations must be distinct
+ if (a.instance().equals(b.instance()) && a.region.equals(b.region))
+ throw new IllegalArgumentException("Instance '" + a.instance + "' declared multiple times " +
+ "with region '" + a.region + "', but allowed at most once");
}
if (level == Level.instance && a.region.equals(b.region)) {
// - Instance name is implicit
@@ -78,9 +76,9 @@ public class Endpoint {
return containerId;
}
- /** The regions of this points to */
+ /** The regions this points to */
public List<RegionName> regions() {
- return targets.stream().map(Target::region).collect(Collectors.toUnmodifiableList());
+ return targets.stream().map(Target::region).toList();
}
/** The level of targets in this */