diff options
-rw-r--r-- | config-model/src/main/java/com/yahoo/vespa/model/HostPorts.java | 31 | ||||
-rw-r--r-- | config-model/src/main/java/com/yahoo/vespa/model/container/Container.java | 10 |
2 files changed, 3 insertions, 38 deletions
diff --git a/config-model/src/main/java/com/yahoo/vespa/model/HostPorts.java b/config-model/src/main/java/com/yahoo/vespa/model/HostPorts.java index 69b692e3ad9..5f55c78c1e4 100644 --- a/config-model/src/main/java/com/yahoo/vespa/model/HostPorts.java +++ b/config-model/src/main/java/com/yahoo/vespa/model/HostPorts.java @@ -137,34 +137,9 @@ public class HostPorts { /** Allocate all ports for a service */ List<Integer> allocatePorts(NetworkPortRequestor service, int wantedPort) { - List<Integer> ports = new ArrayList<>(); - final int count = service.getPortCount(); - if (count < 1) - return ports; - - String[] suffixes = service.getPortSuffixes(); - if (suffixes.length != count) { - throw new IllegalArgumentException("service "+service+" had "+suffixes.length+" port suffixes, but port count "+count+", mismatch"); - } - - if (wantedPort > 0) { - boolean force = service.requiresWantedPort(); - if (service.requiresConsecutivePorts()) { - for (int i = 0; i < count; i++) { - ports.add(wantNetworkPort(wantedPort+i, service, suffixes[i], force)); - } - } else { - ports.add(wantNetworkPort(wantedPort, service, suffixes[0], force)); - for (int i = 1; i < count; i++) { - ports.add(allocateNetworkPort(service, suffixes[i])); - } - } - } else { - for (int i = 0; i < count; i++) { - ports.add(allocateNetworkPort(service, suffixes[i])); - } - } - return ports; + PortAllocBridge allocator = new PortAllocBridge(this, service); + service.allocatePorts(wantedPort, allocator); + return allocator.result(); } public void flushPortReservations() { diff --git a/config-model/src/main/java/com/yahoo/vespa/model/container/Container.java b/config-model/src/main/java/com/yahoo/vespa/model/container/Container.java index 12c72cecd14..09bc8028fd9 100644 --- a/config-model/src/main/java/com/yahoo/vespa/model/container/Container.java +++ b/config-model/src/main/java/com/yahoo/vespa/model/container/Container.java @@ -158,8 +158,6 @@ public abstract class Container extends AbstractService implements if (getHttp() == null) { initDefaultJettyConnector(); - } else { - reserveHttpPortsPrepended(); } tagServers(); @@ -182,14 +180,6 @@ public abstract class Container extends AbstractService implements } } - private void reserveHttpPortsPrepended() { - if (getHttp() != null && getHttp().getHttpServer() != null) { - for (ConnectorFactory connectorFactory : getHttp().getHttpServer().getConnectorFactories()) { - reservePortPrepended(getPort(connectorFactory), "http/" + connectorFactory.getName()); - } - } - } - private int getPort(ConnectorFactory connectorFactory) { return connectorFactory.getListenPort(); } |