code: @Override
    public final Future<WriteResponse> write(D record, @Nullable WriteCallback callback) {
      FutureWrappedWriteCallback wrappedWriteCallback = new FutureWrappedWriteCallback(callback);
      BufferedRecord<D> bufferedRecord = new BufferedRecord<>(record, wrappedWriteCallback);
      put(bufferedRecord);
      return wrappedWriteCallback;
    }
docs: Asynchronously write the record with a callback