/** Example of listing rows in the table. */ // [TARGET list(TableDataListOption...)] public Page<FieldValueList> list() { // [START ] // This example reads the result 100 rows per RPC call. If there's no need to limit the number, // simply omit the option. Page<FieldValueList> page = table.list(TableDataListOption.pageSize(100)); for (FieldValueList row : page.iterateAll()) { // do something with the row } // [END ] return page; }
/** Example of listing rows in the table given a schema. */ // [TARGET list(Schema, TableDataListOption...)] // [VARIABLE ...] // [VARIABLE "my_field"] public Page<FieldValueList> list(Schema schema, String field) { // [START ] Page<FieldValueList> page = table.list(schema); for (FieldValueList row : page.iterateAll()) { row.get(field); } // [END ] return page; }
@Test public void testList() throws Exception { Page<FieldValueList> page = new PageImpl<>(null, "c", ROWS); initializeExpectedTable(1); expect(bigquery.getOptions()).andReturn(mockOptions); expect(bigquery.listTableData(TABLE_ID1)).andReturn(new TableResult(null, ROWS.size(), page)); expect(bigquery.listTableData(TABLE_ID1, SCHEMA)) .andReturn(new TableResult(SCHEMA, ROWS.size(), page)); replay(bigquery); initializeTable(); Page<FieldValueList> dataPage = table.list(); assertThat(dataPage.getValues()).containsExactlyElementsIn(ROWS).inOrder(); dataPage = table.list(SCHEMA); assertThat(dataPage.getValues()).containsExactlyElementsIn(ROWS_WITH_SCHEMA).inOrder(); }
@Test public void testListWithOptions() throws Exception { Page<FieldValueList> page = new PageImpl<>(null, "c", ROWS); initializeExpectedTable(1); expect(bigquery.getOptions()).andReturn(mockOptions); expect(bigquery.listTableData(TABLE_ID1, BigQuery.TableDataListOption.pageSize(10L))) .andReturn(new TableResult(null, ROWS.size(), page)); expect(bigquery.listTableData(TABLE_ID1, SCHEMA, BigQuery.TableDataListOption.pageSize(10L))) .andReturn(new TableResult(SCHEMA, ROWS.size(), page)); replay(bigquery); initializeTable(); Page<FieldValueList> dataPage = table.list(BigQuery.TableDataListOption.pageSize(10L)); assertThat(dataPage.getValues()).containsExactlyElementsIn(ROWS).inOrder(); dataPage = table.list(SCHEMA, BigQuery.TableDataListOption.pageSize(10L)); assertThat(dataPage.getValues()).containsExactlyElementsIn(ROWS_WITH_SCHEMA).inOrder(); }