summaryrefslogtreecommitdiffstats
path: root/config-model-api
diff options
context:
space:
mode:
authorHarald Musum <musum@oath.com>2018-11-12 10:31:37 +0100
committerGitHub <noreply@github.com>2018-11-12 10:31:37 +0100
commitd21d725c5dc9b9ea4406749afc0cdea460fea51c (patch)
tree2f8caf1849a7f3c918772064b4938c192a41479d /config-model-api
parent0f9ebd65290f4ae593090001993ba5230c56e533 (diff)
parent124f27638315c1d9b64869ba8a3a74fced266bb3 (diff)
Merge pull request #7595 from vespa-engine/musum/simplify-supermodel-part-2
Simplify supermodel, part 2
Diffstat (limited to 'config-model-api')
-rw-r--r--config-model-api/src/main/java/com/yahoo/config/model/api/SuperModel.java15
1 files changed, 15 insertions, 0 deletions
diff --git a/config-model-api/src/main/java/com/yahoo/config/model/api/SuperModel.java b/config-model-api/src/main/java/com/yahoo/config/model/api/SuperModel.java
index dccbc143c01..100d4aedd9a 100644
--- a/config-model-api/src/main/java/com/yahoo/config/model/api/SuperModel.java
+++ b/config-model-api/src/main/java/com/yahoo/config/model/api/SuperModel.java
@@ -8,9 +8,11 @@ import com.yahoo.config.provision.TenantName;
import java.util.ArrayList;
import java.util.Collections;
import java.util.LinkedHashMap;
+import java.util.LinkedHashSet;
import java.util.List;
import java.util.Map;
import java.util.Optional;
+import java.util.Set;
public class SuperModel {
@@ -37,6 +39,7 @@ public class SuperModel {
* Do NOT mutate the returned map.
* TODO: Make the returned map immutable (and type to Map&lt;ApplicationId, ApplicationInfo&gt;)
*/
+ // TODO: Remove when oldest model used is 6.310 or newer
public Map<TenantName, Map<ApplicationId, ApplicationInfo>> getAllModels() {
Map<TenantName, Map<ApplicationId, ApplicationInfo>> newModels = new LinkedHashMap<>();
@@ -49,6 +52,18 @@ public class SuperModel {
return newModels ;
}
+ public Map<TenantName, Set<ApplicationInfo>> getModelsPerTenant() {
+ Map<TenantName, Set<ApplicationInfo>> newModels = new LinkedHashMap<>();
+
+ this.models.forEach((key, value) -> {
+ if (!newModels.containsKey(key.tenant())) {
+ newModels.put(key.tenant(), new LinkedHashSet<>());
+ }
+ newModels.get(key.tenant()).add(value);
+ });
+ return newModels;
+ }
+
public Map<ApplicationId, ApplicationInfo> getModels() {
return ImmutableMap.copyOf(models);
}