public <T> CompletableFuture<T> scheduleWriteOperation(
        String name,
        TopicPartition tp,
        Duration timeout,
        CoordinatorWriteOperation<S, T, U> op
    ) {
        throwIfNotRunning();
        log.debug("Scheduled execution of write operation {}.", name);
        CoordinatorWriteEvent<T> event = new CoordinatorWriteEvent<>(name, tp, timeout, op);
        enqueueLast(event);
        return event.future;
    }
Schedules a write operation.

@param name      The name of the write operation.
@param tp        The address of the coordinator (aka its topic-partitions).
@param timeout   The write operation timeout.
@param op        The write operation.

@return A future that will be completed with the result of the write operation
when the operation is completed or an exception if the write operation failed.

@param <T> The type of the result.
group-coordinator/src/main/java/org/apache/kafka/coordinator/group/runtime/CoordinatorRuntime.java