summaryrefslogtreecommitdiffstats
path: root/config-model/src/main/java/com/yahoo/config/model/provision
diff options
context:
space:
mode:
authorJon Bratseth <bratseth@oath.com>2018-03-20 21:23:51 +0100
committerJon Bratseth <bratseth@oath.com>2018-03-20 21:23:51 +0100
commit75df844174e47bec91a3067ab50b16a9833fd5f0 (patch)
tree50770bc317f9cff020751ae4c8f6b1919423fd9b /config-model/src/main/java/com/yahoo/config/model/provision
parent601b4777257e9d1694bdc6987d2b63ee6ccf52dc (diff)
Allow applications to request exlcusive access to hosts
Diffstat (limited to 'config-model/src/main/java/com/yahoo/config/model/provision')
-rw-r--r--config-model/src/main/java/com/yahoo/config/model/provision/InMemoryProvisioner.java28
1 files changed, 23 insertions, 5 deletions
diff --git a/config-model/src/main/java/com/yahoo/config/model/provision/InMemoryProvisioner.java b/config-model/src/main/java/com/yahoo/config/model/provision/InMemoryProvisioner.java
index fb58a991012..2e1d507eea1 100644
--- a/config-model/src/main/java/com/yahoo/config/model/provision/InMemoryProvisioner.java
+++ b/config-model/src/main/java/com/yahoo/config/model/provision/InMemoryProvisioner.java
@@ -4,9 +4,24 @@ package com.yahoo.config.model.provision;
import com.yahoo.collections.ListMap;
import com.yahoo.collections.Pair;
import com.yahoo.config.model.api.HostProvisioner;
-import com.yahoo.config.provision.*;
-
-import java.util.*;
+import com.yahoo.config.provision.Capacity;
+import com.yahoo.config.provision.ClusterMembership;
+import com.yahoo.config.provision.ClusterSpec;
+import com.yahoo.config.provision.HostSpec;
+import com.yahoo.config.provision.ProvisionLogger;
+
+import java.util.ArrayList;
+import java.util.Arrays;
+import java.util.Collection;
+import java.util.Collections;
+import java.util.HashMap;
+import java.util.HashSet;
+import java.util.LinkedHashMap;
+import java.util.List;
+import java.util.ListIterator;
+import java.util.Map;
+import java.util.Optional;
+import java.util.Set;
/**
* In memory host provisioner. NB! ATM cannot be reused after allocate has been called.
@@ -111,11 +126,14 @@ public class InMemoryProvisioner implements HostProvisioner {
List<HostSpec> allocation = new ArrayList<>();
if (groups == 1) {
- allocation.addAll(allocateHostGroup(cluster, flavor, capacity, startIndexForClusters));
+ allocation.addAll(allocateHostGroup(cluster.with(Optional.of(ClusterSpec.Group.from(0))),
+ flavor,
+ capacity,
+ startIndexForClusters));
}
else {
for (int i = 0; i < groups; i++) {
- allocation.addAll(allocateHostGroup(cluster.changeGroup(Optional.of(ClusterSpec.Group.from(i))),
+ allocation.addAll(allocateHostGroup(cluster.with(Optional.of(ClusterSpec.Group.from(i))),
flavor,
capacity / groups,
allocation.size()));