Refine search
@Override public void run(BigQuery bigquery, DatasetId datasetId) { bigquery.create(DatasetInfo.newBuilder(datasetId).build()); System.out.println("Created dataset " + datasetId); } }
DatasetInfo setProjectId(String projectId) { Builder builder = toBuilder(); builder.setDatasetId(getDatasetId().setProjectId(projectId)); if (getAcl() != null) { List<Acl> acls = Lists.newArrayListWithCapacity(getAcl().size()); for (Acl acl : getAcl()) { if (acl.getEntity().getType() == Acl.Entity.Type.VIEW) { Dataset.Access accessPb = acl.toPb(); TableReference viewReferencePb = accessPb.getView(); if (viewReferencePb.getProjectId() == null) { viewReferencePb.setProjectId(projectId); } acls.add(Acl.of(new Acl.View(TableId.fromPb(viewReferencePb)))); } else { acls.add(acl); } } builder.setAcl(acls); } return builder.build(); }
/** Update the default table expiration time for a dataset. */ // [TARGET getDefaultTableLifetime()] // [VARIABLE bigquery.getDataset(DatasetId.of("my_dataset"))] public Long updateDatasetExpiration(DatasetInfo dataset) { // [START bigquery_update_dataset_expiration] Long beforeExpiration = dataset.getDefaultTableLifetime(); Long oneDayMilliseconds = 24 * 60 * 60 * 1000L; DatasetInfo.Builder builder = dataset.toBuilder(); builder.setDefaultTableLifetime(oneDayMilliseconds); bigquery.update(builder.build()); // API request. // [END bigquery_update_dataset_expiration] return beforeExpiration; } }
@Test public void testUpdateDataset() { DatasetInfo updatedDatasetInfo = DATASET_INFO .setProjectId(OTHER_PROJECT) .toBuilder() .setDescription("newDescription") .build(); EasyMock.expect(bigqueryRpcMock.patch(updatedDatasetInfo.toPb(), EMPTY_RPC_OPTIONS)) .andReturn(updatedDatasetInfo.toPb()); EasyMock.replay(bigqueryRpcMock); bigquery = options.getService(); Dataset dataset = bigquery.update(updatedDatasetInfo); assertEquals(new Dataset(bigquery, new DatasetInfo.BuilderImpl(updatedDatasetInfo)), dataset); }
@Test public void testToBuilderIncomplete() { DatasetInfo datasetInfo = DatasetInfo.newBuilder(DATASET_ID).build(); assertEquals(datasetInfo, datasetInfo.toBuilder().build()); }
@Test public void testReload() throws Exception { initializeExpectedDataset(4); DatasetInfo updatedInfo = DATASET_INFO.toBuilder().setDescription("Description").build(); Dataset expectedDataset = new Dataset(serviceMockReturnsOptions, new DatasetInfo.BuilderImpl(updatedInfo)); expect(bigquery.getOptions()).andReturn(mockOptions); expect(bigquery.getDataset(DATASET_INFO.getDatasetId().getDataset())) .andReturn(expectedDataset); replay(bigquery); initializeDataset(); Dataset updatedDataset = dataset.reload(); compareDataset(expectedDataset, updatedDataset); }
/** Update the ACLs for a dataset. */ // [TARGET getAcl()] // [VARIABLE bigquery.getDataset(DatasetId.of("my_dataset"))] public List<Acl> updateDatasetAccess(DatasetInfo dataset) { // [START bigquery_update_dataset_access] List<Acl> beforeAcls = dataset.getAcl(); // Make a copy of the ACLs so that they can be modified. ArrayList<Acl> acls = new ArrayList<>(beforeAcls); acls.add(Acl.of(new Acl.User("sample.bigquery.dev@gmail.com"), Acl.Role.READER)); DatasetInfo.Builder builder = dataset.toBuilder(); builder.setAcl(acls); bigquery.update(builder.build()); // API request. // [END bigquery_update_dataset_access] return beforeAcls; }
@Test public void testToBuilder() { compareDatasets(DATASET_INFO, DATASET_INFO.toBuilder().build()); DatasetInfo datasetInfo = DATASET_INFO .toBuilder() .setDatasetId(DatasetId.of("dataset2")) .setDescription("description2") .build(); assertEquals(DatasetId.of("dataset2"), datasetInfo.getDatasetId()); assertEquals("description2", datasetInfo.getDescription()); datasetInfo = datasetInfo.toBuilder().setDatasetId(DATASET_ID).setDescription("description").build(); compareDatasets(DATASET_INFO, datasetInfo); }
@Test public void testUpdateDatasetWithSelectedFields() { Capture<Map<BigQueryRpc.Option, Object>> capturedOptions = Capture.newInstance(); DatasetInfo updatedDatasetInfo = DATASET_INFO.toBuilder().setDescription("newDescription").build(); DatasetInfo updatedDatasetInfoWithProject = DATASET_INFO_WITH_PROJECT.toBuilder().setDescription("newDescription").build(); EasyMock.expect( bigqueryRpcMock.patch( eq(updatedDatasetInfoWithProject.toPb()), capture(capturedOptions))) .andReturn(updatedDatasetInfoWithProject.toPb()); EasyMock.replay(bigqueryRpcMock); bigquery = options.getService(); Dataset dataset = bigquery.update(updatedDatasetInfo, DATASET_OPTION_FIELDS); String selector = (String) capturedOptions.getValue().get(DATASET_OPTION_FIELDS.getRpcOption()); assertTrue(selector.contains("datasetReference")); assertTrue(selector.contains("access")); assertTrue(selector.contains("etag")); assertEquals(28, selector.length()); assertEquals( new Dataset(bigquery, new DatasetInfo.BuilderImpl(updatedDatasetInfoWithProject)), dataset); }
@Override public StagingTableId provide(EvalContext evalContext) { final String location = getDatasetOrThrow().getLocation(); final TableId stagingTableId = bigQuery().createStagingTableId(tableId, location); final DatasetId stagingDatasetId = DatasetId.of(stagingTableId.getProject(), stagingTableId.getDataset()); if (bigQuery().getDataset(stagingDatasetId) == null) { bigQuery().create(DatasetInfo .newBuilder(stagingDatasetId) .setLocation(location) .setDefaultTableLifetime(Duration.ofDays(1).toMillis()) .build()); LOG.info("created staging dataset: {}", stagingDatasetId); } return StagingTableId.of(this, stagingTableId); }
DatasetInfo setProjectId(String projectId) { Builder builder = toBuilder(); builder.datasetId(datasetId().setProjectId(projectId)); if (acl() != null) { List<Acl> acls = Lists.newArrayListWithCapacity(acl().size()); for (Acl acl : acl()) { if (acl.entity().type() == Acl.Entity.Type.VIEW) { Dataset.Access accessPb = acl.toPb(); TableReference viewReferencePb = accessPb.getView(); if (viewReferencePb.getProjectId() == null) { viewReferencePb.setProjectId(projectId); } acls.add(Acl.of(new Acl.View(TableId.fromPb(viewReferencePb)))); } else { acls.add(acl); } } builder.acl(acls); } return builder.build(); }
@Override public DatasetInfo getDataset(DatasetId datasetId) { return Dataset.newBuilder(datasetId) .setLocation("test") // TOOD: make mockable? .build(); }
@Test public void testReloadWithOptions() throws Exception { initializeExpectedDataset(4); DatasetInfo updatedInfo = DATASET_INFO.toBuilder().setDescription("Description").build(); Dataset expectedDataset = new Dataset(serviceMockReturnsOptions, new DatasetInfo.BuilderImpl(updatedInfo)); expect(bigquery.getOptions()).andReturn(mockOptions); expect( bigquery.getDataset( DATASET_INFO.getDatasetId().getDataset(), BigQuery.DatasetOption.fields())) .andReturn(expectedDataset); replay(bigquery); initializeDataset(); Dataset updatedDataset = dataset.reload(BigQuery.DatasetOption.fields()); compareDataset(expectedDataset, updatedDataset); }
/** Returns a {@code DatasetInfo} object given it's identity. */ public static DatasetInfo of(DatasetId datasetId) { return newBuilder(datasetId).build(); }
DatasetInfo setProjectId(String projectId) { Builder builder = toBuilder(); builder.setDatasetId(getDatasetId().setProjectId(projectId)); if (getAcl() != null) { List<Acl> acls = Lists.newArrayListWithCapacity(getAcl().size()); for (Acl acl : getAcl()) { if (acl.getEntity().getType() == Acl.Entity.Type.VIEW) { Dataset.Access accessPb = acl.toPb(); TableReference viewReferencePb = accessPb.getView(); if (viewReferencePb.getProjectId() == null) { viewReferencePb.setProjectId(projectId); } acls.add(Acl.of(new Acl.View(TableId.fromPb(viewReferencePb)))); } else { acls.add(acl); } } builder.setAcl(acls); } return builder.build(); }
/** Returns a {@code DatasetInfo} object given it's user-defined id. */ public static DatasetInfo of(String datasetId) { return newBuilder(datasetId).build(); }
/** Example of creating a dataset. */ // [TARGET create(DatasetInfo, DatasetOption...)] // [VARIABLE "my_dataset_name"] public Dataset createDataset(String datasetName) { // [START bigquery_create_dataset] Dataset dataset = null; DatasetInfo datasetInfo = DatasetInfo.newBuilder(datasetName).build(); try { // the dataset was created dataset = bigquery.create(datasetInfo); } catch (BigQueryException e) { // the dataset was not created } // [END bigquery_create_dataset] return dataset; }
bigquery.create(DatasetInfo.newBuilder(datasetId).build());
@Test public void testUpdateDataset() { Dataset dataset = bigquery.create( DatasetInfo.newBuilder(OTHER_DATASET) .setDescription("Some Description") .setLabels(Collections.singletonMap("a", "b")) .build()); assertThat(dataset).isNotNull(); assertThat(dataset.getDatasetId().getProject()).isEqualTo(bigquery.getOptions().getProjectId()); assertThat(dataset.getDatasetId().getDataset()).isEqualTo(OTHER_DATASET); assertThat(dataset.getDescription()).isEqualTo("Some Description"); assertThat(dataset.getLabels()).containsExactly("a", "b"); Map<String, String> updateLabels = new HashMap<>(); updateLabels.put("x", "y"); updateLabels.put("a", null); Dataset updatedDataset = bigquery.update( dataset .toBuilder() .setDescription("Updated Description") .setLabels(updateLabels) .build()); assertThat(updatedDataset.getDescription()).isEqualTo("Updated Description"); assertThat(updatedDataset.getLabels()).containsExactly("x", "y"); updatedDataset = bigquery.update(updatedDataset.toBuilder().setLabels(null).build()); assertThat(updatedDataset.getLabels()).isEmpty(); assertThat(dataset.delete()).isTrue(); }