Skip to content

Commit

Permalink
Bigtable: be consistent and don't expose absolute table names
Browse files Browse the repository at this point in the history
  • Loading branch information
igorbernstein2 committed Sep 18, 2018
1 parent f977c8a commit 1891383
Show file tree
Hide file tree
Showing 3 changed files with 20 additions and 23 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -383,38 +383,37 @@ public ApiFuture<Table> getTableAsync(String tableId) {
}

/**
* Lists all TableNames in the instance.
* Lists all table ids in the instance.
*
* <p>Sample code:
*
* <pre>{@code
* List<TableName> tableNames = client.listTables();
* for(TableName name : tableNames) {
* List<String> tableIds = client.listTables();
* for(String tableId: tableIds) {
* System.out.println(name.getTable());
* }
* }</pre>
*/
// TODO(igorbernstein2): consider changing this method to use relative table ids.
@SuppressWarnings("WeakerAccess")
public List<TableName> listTables() {
public List<String> listTables() {
return awaitFuture(listTablesAsync());
}

/**
* Asynchronously lists all TableNames in the instance.
* Asynchronously lists all table ids in the instance.
*
* <p>Sample code:
*
* <pre>{@code
* ApiFuture<List<TableName>> listFuture = client.listTables();
* ApiFuture<List<String>> listFuture = client.listTables();
*
* ApiFutures.addCallback(
* listFuture,
* new ApiFutureCallback<List<TableName>>() {
* public void onSuccess(List<TableName> tableNames) {
* new ApiFutureCallback<List<String>>() {
* public void onSuccess(List<String> tableIds) {
* System.out.println("Got list of tables:");
* for (TableName name : tableNames) {
* System.out.println(name.getTable());
* for (String tableId : tableIds) {
* System.out.println(tableId);
* }
* }
*
Expand All @@ -426,9 +425,8 @@ public List<TableName> listTables() {
* );
* }</pre>
*/
// TODO(igorbernstein2): consider changing this method to use relative table ids.
@SuppressWarnings("WeakerAccess")
public ApiFuture<List<TableName>> listTablesAsync() {
public ApiFuture<List<String>> listTablesAsync() {
ListTablesRequest request = ListTablesRequest.newBuilder().setParent(instanceName.toString())
.build();

Expand Down Expand Up @@ -479,12 +477,12 @@ public ApiFuture<List<com.google.bigtable.admin.v2.Table>> apply(

// Wrap all of the accumulated protos.
return ApiFutures.transform(allProtos,
new ApiFunction<List<com.google.bigtable.admin.v2.Table>, List<TableName>>() {
new ApiFunction<List<com.google.bigtable.admin.v2.Table>, List<String>>() {
@Override
public List<TableName> apply(List<com.google.bigtable.admin.v2.Table> protos) {
List<TableName> results = Lists.newArrayListWithCapacity(protos.size());
public List<String> apply(List<com.google.bigtable.admin.v2.Table> protos) {
List<String> results = Lists.newArrayListWithCapacity(protos.size());
for (com.google.bigtable.admin.v2.Table proto : protos) {
results.add(TableName.parse(proto.getName()));
results.add(TableName.parse(proto.getName()).getTable());
}
return results;
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -241,12 +241,12 @@ public void testListTables() {
);

// Execute
List<TableName> actualResults = adminClient.listTables();
List<String> actualResults = adminClient.listTables();

// Verify
List<TableName> expectedResults = Lists.newArrayList();
List<String> expectedResults = Lists.newArrayList();
for (com.google.bigtable.admin.v2.Table expectedProto : expectedProtos) {
expectedResults.add(TableName.parse(expectedProto.getName()));
expectedResults.add(TableName.parse(expectedProto.getName()).getTable());
}

assertThat(actualResults).containsExactlyElementsIn(expectedResults);
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,6 @@
import static org.junit.Assert.assertTrue;

import com.google.bigtable.admin.v2.InstanceName;
import com.google.bigtable.admin.v2.TableName;
import com.google.cloud.bigtable.admin.v2.BigtableTableAdminClient;
import com.google.cloud.bigtable.admin.v2.models.ColumnFamily;
import com.google.cloud.bigtable.admin.v2.models.CreateTableRequest;
Expand Down Expand Up @@ -204,7 +203,7 @@ public void listTables() {

try {
tableAdmin.createTable(CreateTableRequest.of(tableId));
List<TableName> tables = tableAdmin.listTables();
List<String> tables = tableAdmin.listTables();
assertNotNull(tables);
assertFalse("List tables did not return any tables", tables.isEmpty());
} finally {
Expand All @@ -218,7 +217,7 @@ public void listTablesAsync() throws Exception {

try {
tableAdmin.createTable(CreateTableRequest.of(tableId));
List<TableName> tables = tableAdmin.listTablesAsync().get();
List<String> tables = tableAdmin.listTablesAsync().get();
assertNotNull(tables);
assertFalse("List tables did not return any tables", tables.isEmpty());
} finally {
Expand Down

0 comments on commit 1891383

Please sign in to comment.