Class AvailablePortFinder


  • public final class AvailablePortFinder
    extends Object
    Finds currently available server ports.
    • Method Detail

      • getNextAvailable

        public static int getNextAvailable()
        Gets the next available port.
        Returns:
        the available port
        Throws:
        IllegalStateException - if there are no ports available
      • getNextAvailable

        public static int getNextAvailable​(int fromPort,
                                           int toPort)
        Gets the next available port in the given range.
        Parameters:
        fromPort - port number start range.
        toPort - port number end range.
        Returns:
        the available port
        Throws:
        IllegalStateException - if there are no ports available
      • getSpecificPort

        public static <T> int getSpecificPort​(int portNumber,
                                              T failurePayload,
                                              Function<T,​Integer> failureHandler)
        Gets the next available port in the given range.
        Parameters:
        portNumber - port number start range.
        failurePayload - handover data in case port allocation fails (i.e.: a default one to use)
        failureHandler - a handler in case the requested port is not available
        Returns:
        the available port
        Throws:
        IllegalStateException - if there are no ports available