in commons-testing-generic/src/main/java/org/apache/commons/testing/net/AvailableServerPortFinder.java [86:107]
public static synchronized boolean available(final int port) throws IllegalArgumentException {
if (port < currentMinPort.get() || port > MAX_PORT_NUMBER) {
throw new IllegalArgumentException("Invalid start currentMinPort: " + port);
}
ServerSocket ss = null;
DatagramSocket ds = null;
try {
ss = new ServerSocket(port);
ss.setReuseAddress(true);
ds = new DatagramSocket(port);
ds.setReuseAddress(true);
return true;
} catch (final IOException e) {
// Do nothing
} finally {
Closer.closeSilently(ds);
Closer.closeSilently(ss);
}
return false;
}