private static NetworkInterface getFirstNetworkInterface()

in kernel/src/main/java/org/apache/shardingsphere/elasticjob/kernel/infra/env/IpUtils.java [101:117]


    private static NetworkInterface getFirstNetworkInterface(final List<NetworkInterface> validNetworkInterfaces) {
        NetworkInterface result = null;
        for (NetworkInterface each : validNetworkInterfaces) {
            Enumeration<InetAddress> addresses = each.getInetAddresses();
            while (addresses.hasMoreElements()) {
                InetAddress inetAddress = addresses.nextElement();
                if (isValidAddress(inetAddress) && isPreferredAddress(inetAddress)) {
                    result = each;
                    break;
                }
            }
        }
        if (null == result && !validNetworkInterfaces.isEmpty()) {
            result = validNetworkInterfaces.get(0);
        }
        return result;
    }