/** * Sample row keys from a table, returning a Future that will complete when the sampling has * completed. * * @param request a {@link com.google.bigtable.v2.SampleRowKeysRequest} object. * @return a {@link com.google.common.util.concurrent.ListenableFuture} object. */ public CompletableFuture<List<SampleRowKeysResponse>> sampleRowKeysAsync(SampleRowKeysRequest request) { return toCompletableFuture(dataClient.sampleRowKeysAsync(request)); }
/** * Sample row keys from a table, returning a Future that will complete when the sampling has * completed. * * @param request a {@link com.google.bigtable.v2.SampleRowKeysRequest} object. * @return a {@link com.google.common.util.concurrent.ListenableFuture} object. */ public CompletableFuture<List<SampleRowKeysResponse>> sampleRowKeysAsync(SampleRowKeysRequest request) { return toCompletableFuture(dataClient.sampleRowKeysAsync(request)); }
ListenableFuture<List<SampleRowKeysResponse>> future = client.sampleRowKeysAsync(request.build()); this.regionsFuture = Futures .transform(future, new Function<List<SampleRowKeysResponse>, List<HRegionLocation>>() {
ListenableFuture<List<SampleRowKeysResponse>> future = client.sampleRowKeysAsync(request.build()); this.regionsFuture = Futures .transform(future, new Function<List<SampleRowKeysResponse>, List<HRegionLocation>>() {
/** {@inheritDoc} */ @Override public ListenableFuture<List<KeyOffset>> sampleRowKeysAsync(String tableId) { String fullTableName = NameUtil .formatTableName(requestContext.getProjectId(), requestContext.getInstanceId(), tableId); SampleRowKeysRequest requestProto = SampleRowKeysRequest.newBuilder().setTableName(fullTableName).build(); ListenableFuture<List<SampleRowKeysResponse>> responseProto = delegate.sampleRowKeysAsync(requestProto); return Futures.transform(responseProto, new Function<List<SampleRowKeysResponse>, List<KeyOffset>>() { @Override public List<KeyOffset> apply(@Nonnull List<SampleRowKeysResponse> rowKeysList) { if(rowKeysList == null || rowKeysList.isEmpty()){ return Collections.EMPTY_LIST; } ImmutableList.Builder<KeyOffset> keyOffsetBuilder = ImmutableList.builderWithExpectedSize(rowKeysList.size()); for(SampleRowKeysResponse rowKeys : rowKeysList){ keyOffsetBuilder.add(KeyOffset.create(rowKeys.getRowKey(), rowKeys.getOffsetBytes())); } return keyOffsetBuilder.build(); } }, MoreExecutors.directExecutor()); }