Package org.kiwiproject.net
Class LocalPortChecker
- java.lang.Object
-
- org.kiwiproject.net.LocalPortChecker
-
public class LocalPortChecker extends Object
Utility to check port availability.
-
-
Field Summary
Fields Modifier and Type Field Description static intMAX_PORT
-
Constructor Summary
Constructors Constructor Description LocalPortChecker()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description OptionalIntfindFirstOpenPortAbove(int port)Find the first open port above the given port (i.e.OptionalIntfindFirstOpenPortFrom(int port)Find the first open port starting at the given port inclusive, i.e.booleanisPortAvailable(int port)Check port availability.
-
-
-
Field Detail
-
MAX_PORT
public static final int MAX_PORT
- See Also:
- Constant Field Values
-
-
Method Detail
-
isPortAvailable
public boolean isPortAvailable(int port)
Check port availability. Note specifically that zero is not a valid port for the reasons described here and here.- Parameters:
port- the port to check on the local machine- Returns:
trueif the port is available;falseotherwise- Throws:
IllegalArgumentException- if port is not valid
-
findFirstOpenPortFrom
public OptionalInt findFirstOpenPortFrom(int port)
Find the first open port starting at the given port inclusive, i.e. ifportis 1024 then it is the first port checked. If no available port is found, return an emptyOptionalInt.- Parameters:
port- the port to start from- Returns:
- an optional containing the first open port, or an empty optional
- Throws:
IllegalArgumentException- if port is not between 1 andMAX_PORT- Implementation Note:
- Since this method looks for availability of a specific port, zero is invalid because it is a reserved port used to indicate a random port and is never bound directly to.
-
findFirstOpenPortAbove
public OptionalInt findFirstOpenPortAbove(int port)
Find the first open port above the given port (i.e. if port is 1024 then the first port to be checked will be 1025). If no available port is found, return an emptyOptionalInt.- Parameters:
port- the port to check above- Returns:
- an optional containing the first open port, or an empty optional
- Throws:
IllegalArgumentException- if port is not between 0 and (MAX_PORT- 1)
-
-