@Override
    public synchronized HerderRequest restartConnector(long delayMs, final String connName, final Callback<Void> cb) {
        ScheduledFuture<?> future = requestExecutorService.schedule(
            () -> restartConnector(connName, cb), delayMs, TimeUnit.MILLISECONDS);

        return new StandaloneHerderRequest(requestSeqNum.incrementAndGet(), future);
    }
Single process, in-memory "herder". Useful for a standalone Kafka Connect process.
connect/runtime/src/main/java/org/apache/kafka/connect/runtime/standalone/StandaloneHerder.java