@Test public void testToBuilder() { compareQueryJobConfiguration( QUERY_JOB_CONFIGURATION, QUERY_JOB_CONFIGURATION.toBuilder().build()); QueryJobConfiguration job = QUERY_JOB_CONFIGURATION.toBuilder().setQuery("New BigQuery SQL").build(); assertEquals("New BigQuery SQL", job.getQuery()); job = job.toBuilder().setQuery(QUERY).build(); compareQueryJobConfiguration(QUERY_JOB_CONFIGURATION, job); }
@Override QueryJobConfiguration setProjectId(String projectId) { Builder builder = toBuilder(); if (getDestinationTable() != null && Strings.isNullOrEmpty(getDestinationTable().getProject())) { builder.setDestinationTable(getDestinationTable().setProjectId(projectId)); } if (getDefaultDataset() != null) { builder.setDefaultDataset(getDefaultDataset().setProjectId(projectId)); } return builder.build(); }
@Test public void testToBuilderIncomplete() { QueryJobConfiguration job = QueryJobConfiguration.of(QUERY); compareQueryJobConfiguration(job, job.toBuilder().build()); }
@Test public void testSetProjectIdDoNotOverride() { QueryJobConfiguration configuration = QUERY_JOB_CONFIGURATION .toBuilder() .setDestinationTable(TABLE_ID.setProjectId(TEST_PROJECT_ID)) .build() .setProjectId("update-only-on-dataset"); assertEquals("update-only-on-dataset", configuration.getDefaultDataset().getProject()); assertEquals(TEST_PROJECT_ID, configuration.getDestinationTable().getProject()); }
@Override QueryJobConfiguration setProjectId(String projectId) { Builder builder = toBuilder(); if (getDestinationTable() != null && Strings.isNullOrEmpty(getDestinationTable().getProject())) { builder.setDestinationTable(getDestinationTable().setProjectId(projectId)); } if (getDefaultDataset() != null) { builder.setDefaultDataset(getDefaultDataset().setProjectId(projectId)); } return builder.build(); }
@Override QueryJobConfiguration setProjectId(String projectId) { Builder builder = toBuilder(); if (destinationTable() != null) { builder.destinationTable(destinationTable().setProjectId(projectId)); } if (defaultDataset() != null) { builder.defaultDataset(defaultDataset().setProjectId(projectId)); } return builder.build(); }