diff options
author | Jon Marius Venstad <venstad@gmail.com> | 2021-01-19 21:15:33 +0100 |
---|---|---|
committer | Jon Marius Venstad <venstad@gmail.com> | 2021-01-19 21:15:33 +0100 |
commit | 0e6a1372184df8e21dd969b791bf350617113cf9 (patch) | |
tree | 850e34f14b5a7295d4cfa93b1ecf0d4585a1a2f8 /config-model/src | |
parent | fc87789a38c8b528e7d88608fdf360488628c220 (diff) |
Make config copy conversion more clear
Diffstat (limited to 'config-model/src')
-rw-r--r-- | config-model/src/main/java/com/yahoo/vespa/model/content/cluster/ContentCluster.java | 39 |
1 files changed, 22 insertions, 17 deletions
diff --git a/config-model/src/main/java/com/yahoo/vespa/model/content/cluster/ContentCluster.java b/config-model/src/main/java/com/yahoo/vespa/model/content/cluster/ContentCluster.java index def1d7cb59d..31656b59932 100644 --- a/config-model/src/main/java/com/yahoo/vespa/model/content/cluster/ContentCluster.java +++ b/config-model/src/main/java/com/yahoo/vespa/model/content/cluster/ContentCluster.java @@ -755,24 +755,29 @@ public class ContentCluster extends AbstractConfigProducer implements @Override public void getConfig(DistributionConfig.Builder builder) { DistributionConfig.Cluster.Builder clusterBuilder = new DistributionConfig.Cluster.Builder(); + StorDistributionConfig.Builder storDistributionBuilder = new StorDistributionConfig.Builder(); + getConfig(storDistributionBuilder); + StorDistributionConfig config = storDistributionBuilder.build(); - if (redundancy() != null) - clusterBuilder.redundancy(redundancy().effectiveFinalRedundancy()); - - if (getRootGroup() != null) - clusterBuilder.group(getRootGroup().getGroupStructureConfig().stream() - .map(StorDistributionConfig.Group.Builder::build) - .map(config -> new DistributionConfig.Cluster.Group.Builder() - .index(config.index()) - .name(config.name()) - .capacity(config.capacity()) - .partitions(config.partitions()) - .nodes(config.nodes().stream() - .map(node -> new DistributionConfig.Cluster.Group.Nodes.Builder() - .index(node.index()) - .retired(node.retired())) - .collect(toList()))) - .collect(toList())); + clusterBuilder.redundancy(config.redundancy()); + + for (StorDistributionConfig.Group group : config.group()) { + DistributionConfig.Cluster.Group.Builder groupBuilder = new DistributionConfig.Cluster.Group.Builder(); + groupBuilder.index(group.index()) + .name(group.name()) + .capacity(group.capacity()) + .partitions(group.partitions()); + + for (var node : group.nodes()) { + DistributionConfig.Cluster.Group.Nodes.Builder nodesBuilder = new DistributionConfig.Cluster.Group.Nodes.Builder(); + nodesBuilder.index(node.index()) + .retired(node.retired()); + + groupBuilder.nodes(nodesBuilder); + } + + clusterBuilder.group(groupBuilder); + } builder.cluster(getConfigId(), clusterBuilder); } |