in src/main/java/com/ericsson/gerrit/plugins/highavailability/peers/jgroups/InetAddressFinder.java [56:74]
Optional<InetAddress> findFirstAppropriateAddress(List<NetworkInterface> networkInterfaces)
throws SocketException {
for (NetworkInterface ni : networkInterfaces) {
if (ni.isLoopback() || !ni.isUp() || !ni.supportsMulticast() || shouldSkip(ni.getName())) {
continue;
}
Enumeration<InetAddress> inetAddresses = ni.getInetAddresses();
while (inetAddresses.hasMoreElements()) {
InetAddress a = inetAddresses.nextElement();
if (preferIPv4 && a instanceof Inet4Address) {
return Optional.of(a);
}
if (!preferIPv4 && a instanceof Inet6Address) {
return Optional.of(a);
}
}
}
return Optional.empty();
}