class MirrorCheckpointConnector extends SourceConnector {

    @Override
    public List<Map<String, String>> taskConfigs(int maxTasks) {
        // if the replication is disabled, known consumer group is empty, or checkpoint emission is
        // disabled by setting 'emit.checkpoints.enabled' to false, the interval of checkpoint emission
        // will be negative and no 'MirrorHeartbeatTask' will be created
        if (!config.enabled() || knownConsumerGroups.isEmpty()
                || config.emitCheckpointsInterval().isNegative()) {
            return Collections.emptyList();
        }
        int numTasks = Math.min(maxTasks, knownConsumerGroups.size());
        return ConnectorUtils.groupPartitions(knownConsumerGroups, numTasks).stream()
                .map(config::taskConfigForConsumerGroups)
                .collect(Collectors.toList());
    }

    public  MirrorCheckpointConnector();
      MirrorCheckpointConnector(List<String> knownConsumerGroups, MirrorConnectorConfig config);

}