/** * Creates a new table asynchronously. The table can be created with a full set of initial column * families, specified in the request. * * @param request a {@link CreateTableRequest} object. */ public CompletableFuture<Table> createTableAsync(CreateTableRequest request) { return toCompletableFuture(adminClient.createTableAsync(request)); }
/** * Creates a new table asynchronously. The table can be created with a full set of initial column * families, specified in the request. * * @param request a {@link CreateTableRequest} object. */ public CompletableFuture<Table> createTableAsync(CreateTableRequest request) { return toCompletableFuture(adminClient.createTableAsync(request)); }
/** * @param tableName a {@link TableName} object for exception identification. * @param request a {@link CreateTableRequest} object to send. * @throws java.io.IOException if any. */ protected ListenableFuture<Table> createTableAsync(final TableName tableName, CreateTableRequest request) throws IOException { ListenableFuture<Table> future = bigtableTableAdminClient.createTableAsync( request.toProto(bigtableInstanceName.toAdminInstanceName())); final SettableFuture<Table> settableFuture = SettableFuture.create(); Futures.addCallback(future, new FutureCallback<Table>() { @Override public void onSuccess(@Nullable Table result) { settableFuture.set(result); } @Override public void onFailure(Throwable t) { settableFuture.setException(convertToTableExistsException(tableName, t)); } }, MoreExecutors.directExecutor()); return settableFuture; }
/** {@inheritDoc} */ @Override public ListenableFuture<Table> createTableAsync(CreateTableRequest request) { com.google.bigtable.admin.v2.CreateTableRequest requestProto = request.toProto(instanceName.getProjectId(), instanceName.getInstanceId()); return Futures.transform(adminClient.createTableAsync(requestProto), new Function<com.google.bigtable.admin.v2.Table, Table>() { @Override public Table apply(com.google.bigtable.admin.v2.Table tableProto) { return Table.fromProto(tableProto); } }, MoreExecutors.directExecutor()); }