Class HostPorts


  • public class HostPorts
    extends Object
    Allocator for network ports on a host
    Author:
    arnej
    • Constructor Detail

      • HostPorts

        public HostPorts​(String hostname)
    • Method Detail

      • networkPorts

        public 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,
                                      String suffix)
        Allocate a specific port number for a service
      • wantNetworkPort

        public int wantNetworkPort​(int port,
                                   NetworkPortRequestor service,
                                   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,
                                   String suffix,
                                   boolean forceRequired)
        Convenience method to allocate a preferred or required port number for a service
      • allocateNetworkPort

        public int allocateNetworkPort​(NetworkPortRequestor service,
                                       String suffix)
        Allocate a dynamic port number for a service
      • flushPortReservations

        public void flushPortReservations()