CompletableFuture<V> processQueryOperation(Operation<K, V, U> operation) {
    Preconditions.checkNotNull(operation);
    Preconditions.checkArgument(operation instanceof GetOperation);

    lock.lock();
    try {
      GetOperation<K, V, U> getOperation = (GetOperation<K, V, U>) operation;
      addOperation(getOperation);
      return getOperation.getCompletableFuture();
    } finally {
      lock.unlock();
    }
  }
@param operation The query operation to be added to the batch.
@return A {@link CompletableFuture} to indicate whether the operation is finished.
samza-core/src/main/java/org/apache/samza/table/batching/BatchProcessor.java