BuilderImpl(Job jobPb) { this.etag = jobPb.getEtag(); this.generatedId = jobPb.getId(); if (jobPb.getJobReference() != null) { this.jobId = JobId.fromPb(jobPb.getJobReference()); } this.selfLink = jobPb.getSelfLink(); if (jobPb.getStatus() != null) { this.status = JobStatus.fromPb(jobPb.getStatus()); } if (jobPb.getStatistics() != null) { this.statistics = JobStatistics.fromPb(jobPb); } this.userEmail = jobPb.getUserEmail(); if (jobPb.getConfiguration() != null) { this.configuration = JobConfiguration.fromPb(jobPb.getConfiguration()); } }
@SuppressWarnings("unchecked") static <T extends JobStatistics> T fromPb(com.google.api.services.bigquery.model.Job jobPb) { JobConfiguration jobConfigPb = jobPb.getConfiguration(); com.google.api.services.bigquery.model.JobStatistics statisticPb = jobPb.getStatistics(); if (jobConfigPb.getLoad() != null) { return (T) LoadStatistics.fromPb(statisticPb); } else if (jobConfigPb.getExtract() != null) { return (T) ExtractStatistics.fromPb(statisticPb); } else if (jobConfigPb.getQuery() != null) { return (T) QueryStatistics.fromPb(statisticPb); } else if (jobConfigPb.getCopy() != null) { return (T) CopyStatistics.fromPb(statisticPb); } else { throw new IllegalArgumentException("unknown job configuration: " + jobConfigPb); } } }
@Test public void testToPbAndFromPb() { assertNotNull(COPY_JOB.toPb().getConfiguration().getCopy()); assertNull(COPY_JOB.toPb().getConfiguration().getExtract()); assertNull(COPY_JOB.toPb().getConfiguration().getLoad()); assertNull(COPY_JOB.toPb().getConfiguration().getQuery()); assertEquals(COPY_JOB_STATISTICS, JobStatistics.fromPb(COPY_JOB.toPb())); compareJobInfo(COPY_JOB, JobInfo.fromPb(COPY_JOB.toPb())); assertTrue(JobInfo.fromPb(COPY_JOB.toPb()).getConfiguration() instanceof CopyJobConfiguration); assertNull(EXTRACT_JOB.toPb().getConfiguration().getCopy()); assertNotNull(EXTRACT_JOB.toPb().getConfiguration().getExtract()); assertNull(EXTRACT_JOB.toPb().getConfiguration().getLoad()); assertNull(EXTRACT_JOB.toPb().getConfiguration().getQuery()); assertEquals(EXTRACT_JOB_STATISTICS, JobStatistics.fromPb(EXTRACT_JOB.toPb())); compareJobInfo(EXTRACT_JOB, JobInfo.fromPb(EXTRACT_JOB.toPb())); JobInfo.fromPb(EXTRACT_JOB.toPb()).getConfiguration() instanceof ExtractJobConfiguration); assertTrue(JobInfo.fromPb(EXTRACT_JOB.toPb()).getStatistics() instanceof ExtractStatistics); assertNull(LOAD_JOB.toPb().getConfiguration().getCopy()); assertNull(LOAD_JOB.toPb().getConfiguration().getExtract()); assertNotNull(LOAD_JOB.toPb().getConfiguration().getLoad()); assertNull(LOAD_JOB.toPb().getConfiguration().getQuery()); assertEquals(LOAD_JOB_STATISTICS, JobStatistics.fromPb(LOAD_JOB.toPb())); compareJobInfo(LOAD_JOB, JobInfo.fromPb(LOAD_JOB.toPb())); assertTrue(JobInfo.fromPb(LOAD_JOB.toPb()).getConfiguration() instanceof LoadJobConfiguration); assertTrue(JobInfo.fromPb(LOAD_JOB.toPb()).getStatistics() instanceof LoadStatistics); assertNull(QUERY_JOB.toPb().getConfiguration().getCopy()); assertNull(QUERY_JOB.toPb().getConfiguration().getExtract()); assertNull(QUERY_JOB.toPb().getConfiguration().getLoad()); assertNotNull(QUERY_JOB.toPb().getConfiguration().getQuery());
.setId(JOB) .setStatus(new com.google.api.services.bigquery.model.JobStatus().setState("DONE")); jobResponsePb.getConfiguration().getQuery().setDestinationTable(TABLE_ID.toPb()); GetQueryResultsResponse responsePb = new GetQueryResultsResponse()
.setJobReference(queryJob.toPb()) .setId(JOB); jobResponsePb1.getConfiguration().getQuery().setDestinationTable(TABLE_ID.toPb());
.setId(JOB) .setStatus(new com.google.api.services.bigquery.model.JobStatus().setState("DONE")); jobResponsePb.getConfiguration().getQuery().setDestinationTable(TABLE_ID.toPb()); GetQueryResultsResponse responsePb = new GetQueryResultsResponse()
static String jobToPrettyString(@Nullable Job job) throws IOException { if (job != null && job.getConfiguration().getLoad() != null) { // Removing schema and sourceUris from error messages for load jobs since these fields can be // quite long and error message might not be displayed properly in runner specific logs. job = job.clone(); job.getConfiguration().getLoad().setSchema(null); job.getConfiguration().getLoad().setSourceUris(null); } return job == null ? "null" : job.toPrettyString(); }
private JobStatus runJob(Job job) throws InterruptedException, IOException { if (job.getConfiguration().getLoad() != null) { return runLoadJob(job.getJobReference(), job.getConfiguration().getLoad()); } else if (job.getConfiguration().getCopy() != null) { return runCopyJob(job.getConfiguration().getCopy()); } else if (job.getConfiguration().getExtract() != null) { return runExtractJob(job, job.getConfiguration().getExtract()); } else if (job.getConfiguration().getQuery() != null) { return runQueryJob(job.getConfiguration().getQuery()); } return new JobStatus().setState("DONE"); }
@SuppressWarnings("unchecked") static <T extends JobStatistics> T fromPb(com.google.api.services.bigquery.model.Job jobPb) { JobConfiguration jobConfigPb = jobPb.getConfiguration(); com.google.api.services.bigquery.model.JobStatistics statisticPb = jobPb.getStatistics(); if (jobConfigPb.getLoad() != null) { return (T) LoadStatistics.fromPb(statisticPb); } else if (jobConfigPb.getExtract() != null) { return (T) ExtractStatistics.fromPb(statisticPb); } else if (jobConfigPb.getQuery() != null) { return (T) QueryStatistics.fromPb(statisticPb); } else if (jobConfigPb.getCopy() != null) { return (T) CopyStatistics.fromPb(statisticPb); } else { throw new IllegalArgumentException("unknown job configuration: " + jobConfigPb); } } }
BuilderImpl(Job jobPb) { this.etag = jobPb.getEtag(); this.generatedId = jobPb.getId(); if (jobPb.getJobReference() != null) { this.jobId = JobId.fromPb(jobPb.getJobReference()); } this.selfLink = jobPb.getSelfLink(); if (jobPb.getStatus() != null) { this.status = JobStatus.fromPb(jobPb.getStatus()); } if (jobPb.getStatistics() != null) { this.statistics = JobStatistics.fromPb(jobPb); } this.userEmail = jobPb.getUserEmail(); if (jobPb.getConfiguration() != null) { this.configuration = JobConfiguration.fromPb(jobPb.getConfiguration()); } }
return pollJob.getConfiguration().getQuery().getDestinationTable(); } else {
BuilderImpl(Job jobPb) { this.etag = jobPb.getEtag(); this.generatedId = jobPb.getId(); if (jobPb.getJobReference() != null) { this.jobId = JobId.fromPb(jobPb.getJobReference()); } this.selfLink = jobPb.getSelfLink(); if (jobPb.getStatus() != null) { this.status = JobStatus.fromPb(jobPb.getStatus()); } if (jobPb.getStatistics() != null) { this.statistics = JobStatistics.fromPb(jobPb.getStatistics()); } this.userEmail = jobPb.getUserEmail(); this.configuration = JobConfiguration.fromPb(jobPb.getConfiguration()); }
BuilderImpl(Job jobPb) { this.etag = jobPb.getEtag(); this.generatedId = jobPb.getId(); if (jobPb.getJobReference() != null) { this.jobId = JobId.fromPb(jobPb.getJobReference()); } this.selfLink = jobPb.getSelfLink(); if (jobPb.getStatus() != null) { this.status = JobStatus.fromPb(jobPb.getStatus()); } if (jobPb.getStatistics() != null) { this.statistics = JobStatistics.fromPb(jobPb.getStatistics()); } this.userEmail = jobPb.getUserEmail(); this.configuration = JobConfiguration.fromPb(jobPb.getConfiguration()); }
.setMessage( String.format( "Job %s failed: %s", job.job.getConfiguration(), e.toString()))); List<ResourceId> sourceFiles = filesForLoadJobs.get(jobRef.getProjectId(), jobRef.getJobId());