Class DataSourceServiceGrpc.DataSourceServiceFutureStub (2.8.0)

public static final class DataSourceServiceGrpc.DataSourceServiceFutureStub extends AbstractStub<DataSourceServiceGrpc.DataSourceServiceFutureStub>

The Google BigQuery Data Transfer API allows BigQuery users to configure transfer of their data from other Google Products into BigQuery. This service exposes methods that should be used by data source backend.

Inheritance

java.lang.Object > io.grpc.stub.AbstractStub > DataSourceServiceGrpc.DataSourceServiceFutureStub

Methods

build(Channel channel, CallOptions callOptions)

protected DataSourceServiceGrpc.DataSourceServiceFutureStub build(Channel channel, CallOptions callOptions)
Parameters
NameDescription
channelio.grpc.Channel
callOptionsio.grpc.CallOptions
Returns
TypeDescription
DataSourceServiceGrpc.DataSourceServiceFutureStub
Overrides
io.grpc.stub.AbstractStub.build(io.grpc.Channel,io.grpc.CallOptions)

createDataSourceDefinition(CreateDataSourceDefinitionRequest request)

public ListenableFuture<DataSourceDefinition> createDataSourceDefinition(CreateDataSourceDefinitionRequest request)

Creates a data source definition. Calling this method will automatically use your credentials to create the following Google Cloud resources in YOUR Google Cloud project.

  1. OAuth client
  2. Pub/Sub Topics and Subscriptions in each supported_location_ids. e.g., projects/{project_id}/{topics|subscriptions}/bigquerydatatransfer.{data_source_id}.{location_id}.run The field data_source.client_id should be left empty in the input request, as the API will create a new OAuth client on behalf of the caller. On the other hand data_source.scopes usually need to be set when there are OAuth scopes that need to be granted by end users.
  3. We need a longer deadline due to the 60 seconds SLO from Pub/Sub admin Operations. This also applies to update and delete data source definition.
Parameter
NameDescription
requestCreateDataSourceDefinitionRequest
Returns
TypeDescription
com.google.common.util.concurrent.ListenableFuture<DataSourceDefinition>

deleteDataSourceDefinition(DeleteDataSourceDefinitionRequest request)

public ListenableFuture<Empty> deleteDataSourceDefinition(DeleteDataSourceDefinitionRequest request)

Deletes a data source definition, all of the transfer configs associated with this data source definition (if any) must be deleted first by the user in ALL regions, in order to delete the data source definition. This method is primarily meant for deleting data sources created during testing stage. If the data source is referenced by transfer configs in the region specified in the request URL, the method will fail immediately. If in the current region (e.g., US) it's not used by any transfer configs, but in another region (e.g., EU) it is, then although the method will succeed in region US, but it will fail when the deletion operation is replicated to region EU. And eventually, the system will replicate the data source definition back from EU to US, in order to bring all regions to consistency. The final effect is that the data source appears to be 'undeleted' in the US region.

Parameter
NameDescription
requestDeleteDataSourceDefinitionRequest
Returns
TypeDescription
com.google.common.util.concurrent.ListenableFuture<Empty>

finishRun(FinishRunRequest request)

public ListenableFuture<Empty> finishRun(FinishRunRequest request)

Notify the Data Transfer Service that the data source is done processing the run. No more status updates or requests to start/monitor jobs will be accepted. The run will be finalized by the Data Transfer Service when all monitored jobs are completed. Does not need to be called if the run is set to FAILED.

Parameter
NameDescription
requestFinishRunRequest
Returns
TypeDescription
com.google.common.util.concurrent.ListenableFuture<Empty>

getDataSourceDefinition(GetDataSourceDefinitionRequest request)

public ListenableFuture<DataSourceDefinition> getDataSourceDefinition(GetDataSourceDefinitionRequest request)

Retrieves an existing data source definition.

Parameter
NameDescription
requestGetDataSourceDefinitionRequest
Returns
TypeDescription
com.google.common.util.concurrent.ListenableFuture<DataSourceDefinition>

listDataSourceDefinitions(ListDataSourceDefinitionsRequest request)

public ListenableFuture<ListDataSourceDefinitionsResponse> listDataSourceDefinitions(ListDataSourceDefinitionsRequest request)

Lists supported data source definitions.

Parameter
NameDescription
requestListDataSourceDefinitionsRequest
Returns
TypeDescription
com.google.common.util.concurrent.ListenableFuture<ListDataSourceDefinitionsResponse>

logTransferRunMessages(LogTransferRunMessagesRequest request)

public ListenableFuture<Empty> logTransferRunMessages(LogTransferRunMessagesRequest request)

Log messages for a transfer run. If successful (at least 1 message), resets data_source.update_deadline_seconds timer.

Parameter
NameDescription
requestLogTransferRunMessagesRequest
Returns
TypeDescription
com.google.common.util.concurrent.ListenableFuture<Empty>

startBigQueryJobs(StartBigQueryJobsRequest request)

public ListenableFuture<Empty> startBigQueryJobs(StartBigQueryJobsRequest request)

Notify the Data Transfer Service that data is ready for loading. The Data Transfer Service will start and monitor multiple BigQuery Load jobs for a transfer run. Monitored jobs will be automatically retried and produce log messages when starting and finishing a job. Can be called multiple times for the same transfer run.

Parameter
NameDescription
requestStartBigQueryJobsRequest
Returns
TypeDescription
com.google.common.util.concurrent.ListenableFuture<Empty>

updateDataSourceDefinition(UpdateDataSourceDefinitionRequest request)

public ListenableFuture<DataSourceDefinition> updateDataSourceDefinition(UpdateDataSourceDefinitionRequest request)

Updates an existing data source definition. If changing supported_location_ids, triggers same effects as mentioned in "Create a data source definition."

Parameter
NameDescription
requestUpdateDataSourceDefinitionRequest
Returns
TypeDescription
com.google.common.util.concurrent.ListenableFuture<DataSourceDefinition>

updateTransferRun(UpdateTransferRunRequest request)

public ListenableFuture<TransferRun> updateTransferRun(UpdateTransferRunRequest request)

Update a transfer run. If successful, resets data_source.update_deadline_seconds timer.

Parameter
NameDescription
requestUpdateTransferRunRequest
Returns
TypeDescription
com.google.common.util.concurrent.ListenableFuture<TransferRun>