public static Map<String, TopicCreationGroup> configuredGroups(SourceConnectorConfig config) {
        if (!config.usesTopicCreation()) {
            return Collections.emptyMap();
        }
        List<String> groupNames = config.getList(TOPIC_CREATION_GROUPS_CONFIG);
        Map<String, TopicCreationGroup> groups = new LinkedHashMap<>();
        for (String group : groupNames) {
            groups.put(group, new TopicCreationGroup(group, config));
        }
        // Even if there was a group called 'default' in the config, it will be overridden here.
        // Order matters for all the topic groups besides the default, since it will be
        // removed from this collection by the Worker
        groups.put(DEFAULT_TOPIC_CREATION_GROUP, new TopicCreationGroup(DEFAULT_TOPIC_CREATION_GROUP, config));
        return groups;
    }
Parses the configuration of a source connector and returns the topic creation groups
defined in the given configuration as a map of group names to {@link TopicCreationGroup} objects.

@param config the source connector configuration

@return the map of topic creation groups; may be empty but not {@code null}
connect/runtime/src/main/java/org/apache/kafka/connect/util/TopicCreationGroup.java