void validateSlowReceiversIncompatibleWithSSL(
      SecurableCommunicationChannel[] sslEnabledComponents) {
    if (getAsyncDistributionTimeout() > 0
        && (getClusterSSLEnabled() || Arrays.stream(sslEnabledComponents)
            .anyMatch(component -> component == ALL || component == CLUSTER))) {
      throw new IllegalArgumentException(
          "async-distribution-timeout greater than 0 is not allowed with cluster TLS/SSL.");
    }
  }
Creates a new <code>DistributionConfigImpl</code> with the given non-default configuration
properties. See {@link DistributedSystem#connect} for a list of
exceptions that may be thrown.

@param nonDefault The configuration properties specified by the caller
@param ignoreGemFirePropsFile whether to skip loading distributed system properties from
       gemfire.properties file
@param isConnected whether to skip Validation for SSL properties and copy of ssl properties to
       other ssl properties. This parameter will be used till we provide support for ssl-*
       properties.

@since GemFire 8.0
geode-core/src/main/java/org/apache/geode/distributed/internal/DistributionConfigImpl.java