@Override
    public Addresses loadAddresses(ClientConnectionProcessListenerRegistry listenerRunner) {
        List<String> configuredAddresses = networkConfig.getAddresses();

        if (configuredAddresses.isEmpty()) {
            configuredAddresses.add("127.0.0.1");
        }

        Addresses addresses = new Addresses();
        List<Address> allAddresses = new ArrayList<>();
        for (String address : configuredAddresses) {
            Addresses socketAddresses = AddressHelper.getSocketAddresses(address, listenerRunner);
            addresses.addAll(socketAddresses);
        }
        allAddresses.addAll(addresses.primary());
        allAddresses.addAll(addresses.secondary());
        listenerRunner.onPossibleAddressesCollected(allAddresses);
        return addresses;
    }
@Test
    public void whenMix() throws UnknownHostException {
        ClientNetworkConfig config = new ClientNetworkConfig();
        config.addAddress("10.0.0.1:5701");
        config.addAddress("10.0.0.1:5702");
        config.addAddress("10.0.0.2");
        DefaultAddressProvider provider = new DefaultAddressProvider(config, () -> false);
        Addresses addresses = provider.loadAddresses(createConnectionProcessListenerRunner());

        assertPrimary(addresses, new Address("10.0.0.1", 5701),
                new Address("10.0.0.1", 5702),
                new Address("10.0.0.2", 5701));
        assertSecondary(addresses, new Address("10.0.0.2", 5702), new Address("10.0.0.2", 5703));
    }