org.apache.mina.util

## Class AvailablePortFinder

- java.lang.Object
- - org.apache.mina.util.AvailablePortFinder

-     public class AvailablePortFinder
      extends Object

  Finds currently available server ports.
  Author:
    Apache MINA Project
  See Also:
    IANA.org

- - ### Field Summary

    Fields
    Modifier and Type | Field and Description
    --- | ---
    `static int` | `MAX_PORT_NUMBER` The maximum number of server port number.
    `static int` | `MIN_PORT_NUMBER` The minimum number of server port number.

  - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `static boolean` | `available(int port)` Checks to see if a specific port is available.
    `static Set<Integer>` | `getAvailablePorts()` Returns the `Set` of currently available port numbers (`Integer`).
    `static Set<Integer>` | `getAvailablePorts(int fromPort, int toPort)` Returns the `Set` of currently avaliable port numbers (`Integer`) between the specified port range.
    `static int` | `getNextAvailable()` Gets an available port, selected by the system.
    `static int` | `getNextAvailable(int fromPort)` Gets the next available port starting at a port.

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### Field Detail

    - #### MIN_PORT_NUMBER

          public static final int MIN_PORT_NUMBER

      The minimum number of server port number.
      See Also:
        Constant Field Values

    - #### MAX_PORT_NUMBER

          public static final int MAX_PORT_NUMBER

      The maximum number of server port number.
      See Also:
        Constant Field Values

  - ### Method Detail

    - #### getAvailablePorts

          public static Set<Integer> getAvailablePorts()

      Returns the `Set` of currently available port numbers (`Integer`). This method is identical to `getAvailablePorts(MIN_PORT_NUMBER, MAX_PORT_NUMBER)`. WARNING: this can take a very long time.

    - #### getNextAvailable

          public static int getNextAvailable()

      Gets an available port, selected by the system.
      Throws:
        `NoSuchElementException` - if there are no ports available

    - #### getNextAvailable

          public static int getNextAvailable(int fromPort)

      Gets the next available port starting at a port.
      Parameters:
        `fromPort` - the port to scan for availability
      Throws:
        `NoSuchElementException` - if there are no ports available

    - #### available

          public static boolean available(int port)

      Checks to see if a specific port is available.
      Parameters:
        `port` - the port to check for availability

    - #### getAvailablePorts

          public static Set<Integer> getAvailablePorts(int fromPort,
                                       int toPort)

      Returns the `Set` of currently avaliable port numbers (`Integer`) between the specified port range.
      Throws:
        `IllegalArgumentException` - if port range is not between `MIN_PORT_NUMBER` and `MAX_PORT_NUMBER` or `fromPort` if greater than `toPort`.

Copyright © 2004-2012 Apache MINA Project. All Rights Reserved.