private static ConfigDef.CompositeValidator aliasValidator(String kind) {
        return ConfigDef.CompositeValidator.of(new ConfigDef.NonNullValidator(), new ConfigDef.Validator() {
            @SuppressWarnings("unchecked")
            @Override
            public void ensureValid(String name, Object value) {
                final List<String> aliases = (List<String>) value;
                if (aliases.size() > new HashSet<>(aliases).size()) {
                    throw new ConfigException(name, value, "Duplicate alias provided.");
                }
            }

            @Override
            public String toString() {
                return "unique " + kind + " aliases";
            }
        });
    }
<p>
Configuration options for Connectors. These only include Kafka Connect system-level configuration
options (e.g. Connector class name, timeouts used by Connect to control the connector) but does
not include Connector-specific options (e.g. database connection settings).
</p>
<p>
Note that some of these options are not required for all connectors. For example TOPICS_CONFIG
is sink-specific.
</p>
connect/runtime/src/main/java/org/apache/kafka/connect/runtime/ConnectorConfig.java