@Override com.google.api.services.bigquery.model.JobConfiguration toPb() { JobConfigurationTableCopy configurationPb = new JobConfigurationTableCopy(); configurationPb.setDestinationTable(destinationTable.toPb()); if (sourceTables.size() == 1) { configurationPb.setSourceTable(sourceTables.get(0).toPb()); } else { configurationPb.setSourceTables(Lists.transform(sourceTables, TableId.TO_PB_FUNCTION)); } if (createDisposition != null) { configurationPb.setCreateDisposition(createDisposition.toString()); } if (writeDisposition != null) { configurationPb.setWriteDisposition(writeDisposition.toString()); } if (destinationEncryptionConfiguration != null) { configurationPb.setDestinationEncryptionConfiguration( destinationEncryptionConfiguration.toPb()); } return new com.google.api.services.bigquery.model.JobConfiguration().setCopy(configurationPb); }
private Builder(com.google.api.services.bigquery.model.JobConfiguration configurationPb) { this(); JobConfigurationTableCopy copyConfigurationPb = configurationPb.getCopy(); this.destinationTable = TableId.fromPb(copyConfigurationPb.getDestinationTable()); if (copyConfigurationPb.getSourceTables() != null) { this.sourceTables = Lists.transform(copyConfigurationPb.getSourceTables(), TableId.FROM_PB_FUNCTION); } else { this.sourceTables = ImmutableList.of(TableId.fromPb(copyConfigurationPb.getSourceTable())); } if (copyConfigurationPb.getCreateDisposition() != null) { this.createDisposition = JobInfo.CreateDisposition.valueOf(copyConfigurationPb.getCreateDisposition()); } if (copyConfigurationPb.getWriteDisposition() != null) { this.writeDisposition = JobInfo.WriteDisposition.valueOf(copyConfigurationPb.getWriteDisposition()); } if (copyConfigurationPb.getDestinationEncryptionConfiguration() != null) { this.destinationEncryptionConfiguration = new EncryptionConfiguration.Builder( copyConfigurationPb.getDestinationEncryptionConfiguration()) .build(); } }
JobConfigurationTableCopy copyTableConfig = new JobConfigurationTableCopy(); copyTableConfig.setSourceTable(tempTableRef); copyTableConfig.setDestinationTable(finalTableRef); copyTableConfig.setWriteDisposition("WRITE_APPEND");
@Test public void testToPbAndFromPb() { assertNotNull(COPY_JOB_CONFIGURATION.toPb().getCopy()); assertNull(COPY_JOB_CONFIGURATION.toPb().getExtract()); assertNull(COPY_JOB_CONFIGURATION.toPb().getLoad()); assertNull(COPY_JOB_CONFIGURATION.toPb().getQuery()); assertNull(COPY_JOB_CONFIGURATION.toPb().getCopy().getSourceTables()); assertNull(COPY_JOB_CONFIGURATION_MULTIPLE_TABLES.toPb().getCopy().getSourceTable()); compareCopyJobConfiguration( COPY_JOB_CONFIGURATION, CopyJobConfiguration.fromPb(COPY_JOB_CONFIGURATION.toPb())); compareCopyJobConfiguration( COPY_JOB_CONFIGURATION_MULTIPLE_TABLES, CopyJobConfiguration.fromPb(COPY_JOB_CONFIGURATION_MULTIPLE_TABLES.toPb())); CopyJobConfiguration jobConfiguration = CopyJobConfiguration.of(DESTINATION_TABLE, SOURCE_TABLES); compareCopyJobConfiguration( jobConfiguration, CopyJobConfiguration.fromPb(jobConfiguration.toPb())); }
@Test public void testIncomplete() { // https://github.com/googleapis/google-cloud-java/issues/2357 com.google.api.services.bigquery.model.Job job = new com.google.api.services.bigquery.model.Job() .setStatistics( new com.google.api.services.bigquery.model.JobStatistics() .setCreationTime(1234L) .setStartTime(5678L)); job.setConfiguration( new com.google.api.services.bigquery.model.JobConfiguration() .setCopy(new com.google.api.services.bigquery.model.JobConfigurationTableCopy())); assertThat(JobStatistics.fromPb(job)).isInstanceOf(CopyStatistics.class); job.setConfiguration( new com.google.api.services.bigquery.model.JobConfiguration() .setLoad(new com.google.api.services.bigquery.model.JobConfigurationLoad())); assertThat(JobStatistics.fromPb(job)).isInstanceOf(LoadStatistics.class); job.setConfiguration( new com.google.api.services.bigquery.model.JobConfiguration() .setExtract(new com.google.api.services.bigquery.model.JobConfigurationExtract())); assertThat(JobStatistics.fromPb(job)).isInstanceOf(ExtractStatistics.class); job.setConfiguration( new com.google.api.services.bigquery.model.JobConfiguration() .setQuery(new com.google.api.services.bigquery.model.JobConfigurationQuery())); assertThat(JobStatistics.fromPb(job)).isInstanceOf(QueryStatistics.class); }
@Override com.google.api.services.bigquery.model.JobConfiguration toPb() { JobConfigurationTableCopy configurationPb = new JobConfigurationTableCopy(); configurationPb.setDestinationTable(destinationTable.toPb()); if (sourceTables.size() == 1) { configurationPb.setSourceTable(sourceTables.get(0).toPb()); } else { configurationPb.setSourceTables(Lists.transform(sourceTables, TableId.TO_PB_FUNCTION)); } if (createDisposition != null) { configurationPb.setCreateDisposition(createDisposition.toString()); } if (writeDisposition != null) { configurationPb.setWriteDisposition(writeDisposition.toString()); } return new com.google.api.services.bigquery.model.JobConfiguration().setCopy(configurationPb); }
private Builder(com.google.api.services.bigquery.model.JobConfiguration configurationPb) { this(); JobConfigurationTableCopy copyConfigurationPb = configurationPb.getCopy(); this.destinationTable = TableId.fromPb(copyConfigurationPb.getDestinationTable()); if (copyConfigurationPb.getSourceTables() != null) { this.sourceTables = Lists.transform(copyConfigurationPb.getSourceTables(), TableId.FROM_PB_FUNCTION); } else { this.sourceTables = ImmutableList.of(TableId.fromPb(copyConfigurationPb.getSourceTable())); } if (copyConfigurationPb.getCreateDisposition() != null) { this.createDisposition = JobInfo.CreateDisposition.valueOf(copyConfigurationPb.getCreateDisposition()); } if (copyConfigurationPb.getWriteDisposition() != null) { this.writeDisposition = JobInfo.WriteDisposition.valueOf( copyConfigurationPb.getWriteDisposition()); } }
@Override com.google.api.services.bigquery.model.JobConfiguration toPb() { JobConfigurationTableCopy configurationPb = new JobConfigurationTableCopy(); configurationPb.setDestinationTable(destinationTable.toPb()); if (sourceTables.size() == 1) { configurationPb.setSourceTable(sourceTables.get(0).toPb()); } else { configurationPb.setSourceTables(Lists.transform(sourceTables, TableId.TO_PB_FUNCTION)); } if (createDisposition != null) { configurationPb.setCreateDisposition(createDisposition.toString()); } if (writeDisposition != null) { configurationPb.setWriteDisposition(writeDisposition.toString()); } return new com.google.api.services.bigquery.model.JobConfiguration().setCopy(configurationPb); }
private Builder(com.google.api.services.bigquery.model.JobConfiguration configurationPb) { this(); JobConfigurationTableCopy copyConfigurationPb = configurationPb.getCopy(); this.destinationTable = TableId.fromPb(copyConfigurationPb.getDestinationTable()); if (copyConfigurationPb.getSourceTables() != null) { this.sourceTables = Lists.transform(copyConfigurationPb.getSourceTables(), TableId.FROM_PB_FUNCTION); } else { this.sourceTables = ImmutableList.of(TableId.fromPb(copyConfigurationPb.getSourceTable())); } if (copyConfigurationPb.getCreateDisposition() != null) { this.createDisposition = JobInfo.CreateDisposition.valueOf(copyConfigurationPb.getCreateDisposition()); } if (copyConfigurationPb.getWriteDisposition() != null) { this.writeDisposition = JobInfo.WriteDisposition.valueOf( copyConfigurationPb.getWriteDisposition()); } }
@Override com.google.api.services.bigquery.model.JobConfiguration toPb() { JobConfigurationTableCopy configurationPb = new JobConfigurationTableCopy(); configurationPb.setDestinationTable(destinationTable.toPb()); if (sourceTables.size() == 1) { configurationPb.setSourceTable(sourceTables.get(0).toPb()); } else { configurationPb.setSourceTables(Lists.transform(sourceTables, TableId.TO_PB_FUNCTION)); } if (createDisposition != null) { configurationPb.setCreateDisposition(createDisposition.toString()); } if (writeDisposition != null) { configurationPb.setWriteDisposition(writeDisposition.toString()); } if (destinationEncryptionConfiguration != null) { configurationPb.setDestinationEncryptionConfiguration( destinationEncryptionConfiguration.toPb()); } return new com.google.api.services.bigquery.model.JobConfiguration().setCopy(configurationPb); }
private Builder(com.google.api.services.bigquery.model.JobConfiguration configurationPb) { this(); JobConfigurationTableCopy copyConfigurationPb = configurationPb.getCopy(); this.destinationTable = TableId.fromPb(copyConfigurationPb.getDestinationTable()); if (copyConfigurationPb.getSourceTables() != null) { this.sourceTables = Lists.transform(copyConfigurationPb.getSourceTables(), TableId.FROM_PB_FUNCTION); } else { this.sourceTables = ImmutableList.of(TableId.fromPb(copyConfigurationPb.getSourceTable())); } if (copyConfigurationPb.getCreateDisposition() != null) { this.createDisposition = JobInfo.CreateDisposition.valueOf(copyConfigurationPb.getCreateDisposition()); } if (copyConfigurationPb.getWriteDisposition() != null) { this.writeDisposition = JobInfo.WriteDisposition.valueOf(copyConfigurationPb.getWriteDisposition()); } if (copyConfigurationPb.getDestinationEncryptionConfiguration() != null) { this.destinationEncryptionConfiguration = new EncryptionConfiguration.Builder( copyConfigurationPb.getDestinationEncryptionConfiguration()) .build(); } }
CreateDisposition createDisposition) { JobConfigurationTableCopy copyConfig = new JobConfigurationTableCopy() .setSourceTables(tempTables) .setDestinationTable(ref) .setWriteDisposition(writeDisposition.name()) .setCreateDisposition(createDisposition.name());
private JobStatus runCopyJob(JobConfigurationTableCopy copy) throws InterruptedException, IOException { List<TableReference> sources = copy.getSourceTables(); TableReference destination = copy.getDestinationTable(); WriteDisposition writeDisposition = WriteDisposition.valueOf(copy.getWriteDisposition()); CreateDisposition createDisposition = CreateDisposition.valueOf(copy.getCreateDisposition()); Table existingTable = datasetService.getTable(destination); if (!validateDispositions(existingTable, createDisposition, writeDisposition)) {