private ProxySelector getProxySelector() {
    DefaultProxySelector selector = new DefaultProxySelector();

    for (Proxy proxy : proxies) {
      selector.add(ConverterUtils.toProxy(proxy), proxy.getNonProxyHosts());
    }

    Settings settings = getSettings();
    for (org.apache.maven.settings.Proxy proxy : settings.getProxies()) {
      org.sonatype.aether.repository.Authentication auth = null;
      if (proxy.getUsername() != null || proxy.getPassword() != null) {
        auth =
            new org.sonatype.aether.repository.Authentication(
                proxy.getUsername(), proxy.getPassword());
      }
      selector.add(
          new org.sonatype.aether.repository.Proxy(
              proxy.getProtocol(), proxy.getHost(), proxy.getPort(), auth),
          proxy.getNonProxyHosts());
    }

    return selector;
  }