Package com.yahoo.vespa.model
Class HostPorts
- java.lang.Object
-
- com.yahoo.vespa.model.HostPorts
-
public class HostPorts extends java.lang.Object
Allocator for network ports on a host- Author:
- arnej
-
-
Field Summary
Fields Modifier and Type Field Description static int
BASE_PORT
-
Constructor Summary
Constructors Constructor Description HostPorts(java.lang.String hostname)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
addNetworkPorts(com.yahoo.config.provision.NetworkPorts ports)
Add port allocation from previous deployments.int
allocateNetworkPort(NetworkPortRequestor service, java.lang.String suffix)
Allocate a dynamic port number for a servicevoid
flushPortReservations()
java.util.Optional<com.yahoo.config.provision.NetworkPorts>
networkPorts()
Get the allocated network ports.int
requireNetworkPort(int port, NetworkPortRequestor service, java.lang.String suffix)
Allocate a specific port number for a servicejava.lang.String
toString()
void
useLogger(com.yahoo.config.application.api.DeployLogger logger)
Setup logging in order to send warnings back to the user.int
wantNetworkPort(int port, NetworkPortRequestor service, java.lang.String suffix)
Allocate a preferred port number for a service, fall back to using any dynamic portint
wantNetworkPort(int port, NetworkPortRequestor service, java.lang.String suffix, boolean forceRequired)
Convenience method to allocate a preferred or required port number for a service
-
-
-
Field Detail
-
BASE_PORT
public static final int BASE_PORT
- See Also:
- Constant Field Values
-
-
Method Detail
-
networkPorts
public java.util.Optional<com.yahoo.config.provision.NetworkPorts> networkPorts()
Get the allocated network ports. Should be called after allocation is complete and flushPortReservations has been called
-
addNetworkPorts
public void addNetworkPorts(com.yahoo.config.provision.NetworkPorts ports)
Add port allocation from previous deployments. Call this before starting port allocations, to re-use existing ports where possible
-
useLogger
public void useLogger(com.yahoo.config.application.api.DeployLogger logger)
Setup logging in order to send warnings back to the user.
-
requireNetworkPort
public int requireNetworkPort(int port, NetworkPortRequestor service, java.lang.String suffix)
Allocate a specific port number for a service
-
wantNetworkPort
public int wantNetworkPort(int port, NetworkPortRequestor service, java.lang.String suffix)
Allocate a preferred port number for a service, fall back to using any dynamic port
-
wantNetworkPort
public int wantNetworkPort(int port, NetworkPortRequestor service, java.lang.String suffix, boolean forceRequired)
Convenience method to allocate a preferred or required port number for a service
-
allocateNetworkPort
public int allocateNetworkPort(NetworkPortRequestor service, java.lang.String suffix)
Allocate a dynamic port number for a service
-
flushPortReservations
public void flushPortReservations()
-
toString
public java.lang.String toString()
- Overrides:
toString
in classjava.lang.Object
-
-