code: @Override
    public ApiFuture<List<Row>> readRowsAsync(Query request) {
      ListenableFuture<List<FlatRow>> responseProto =
          delegate.readFlatRowsAsync(request.toProto(requestContext));
  
      return ApiFutureUtil.transformAndAdapt(responseProto, new Function<List<FlatRow>, List<Row>>() {
        @Override
        public List<Row> apply(List<FlatRow> flatRowList) {
          ImmutableList.Builder<Row> rowBuilder =
              ImmutableList.builderWithExpectedSize(flatRowList.size());
          for (FlatRow flatRow : flatRowList) {
            rowBuilder.add(FlatRowConverter.convertToModelRow(flatRow));
          }
  
          return rowBuilder.build();
        }
      });
    }
docs: {@inheritDoc}