pub struct DatasetService { /* private fields */ }Expand description
Implements a client for the BigQuery API.
§Example
async fn sample(
) -> anyhow::Result<()> {
let client = DatasetService::builder().build().await?;
let response = client.get_dataset()
/* set fields */
.send().await?;
println!("response {:?}", response);
Ok(())
}§Service Description
DatasetService provides methods for managing BigQuery datasets.
§Configuration
To configure DatasetService use the with_* methods in the type returned
by builder(). The default configuration should
work for most applications. Common configuration changes include
- with_endpoint(): by default this client uses the global default endpoint
(
https://bigquery.googleapis.com). Applications using regional endpoints or running in restricted networks (e.g. a network configured with Private Google Access with VPC Service Controls) may want to override this default. - with_credentials(): by default this client uses Application Default Credentials. Applications using custom authentication may need to override this default.
§Pooling and Cloning
DatasetService holds a connection pool internally, it is advised to
create one and reuse it. You do not need to wrap DatasetService in
an Rc or Arc to reuse it, because it
already uses an Arc internally.
Implementations§
Source§impl DatasetService
impl DatasetService
Sourcepub fn builder() -> ClientBuilder
pub fn builder() -> ClientBuilder
Returns a builder for DatasetService.
let client = DatasetService::builder().build().await?;Sourcepub fn from_stub<T>(stub: impl Into<Arc<T>>) -> Selfwhere
T: DatasetService + 'static,
pub fn from_stub<T>(stub: impl Into<Arc<T>>) -> Selfwhere
T: DatasetService + 'static,
Creates a new client from the provided stub.
The most common case for calling this function is in tests mocking the client’s behavior.
Sourcepub fn get_dataset(&self) -> GetDataset
pub fn get_dataset(&self) -> GetDataset
Returns the dataset specified by datasetID.
§IAM Permissions
Requires the bigquery.datasets.get permission on the dataset.
§Example
use google_cloud_bigquery_v2::Result;
async fn sample(
client: &DatasetService
) -> Result<()> {
let response = client.get_dataset()
/* set fields */
.send().await?;
println!("response {:?}", response);
Ok(())
}Sourcepub fn insert_dataset(&self) -> InsertDataset
pub fn insert_dataset(&self) -> InsertDataset
Creates a new empty dataset.
§IAM Permissions
Requires the bigquery.datasets.create permission on the project.
§Example
use google_cloud_bigquery_v2::Result;
async fn sample(
client: &DatasetService
) -> Result<()> {
let response = client.insert_dataset()
/* set fields */
.send().await?;
println!("response {:?}", response);
Ok(())
}Sourcepub fn patch_dataset(&self) -> PatchDataset
pub fn patch_dataset(&self) -> PatchDataset
Updates information in an existing dataset. The update method replaces the entire dataset resource, whereas the patch method only replaces fields that are provided in the submitted dataset resource. This method supports RFC5789 patch semantics.
§IAM Permissions
Requires the following IAM permission(s) to use this method:
bigquery.datasets.updateon the dataset.bigquery.datasets.geton the dataset.
§Example
use google_cloud_bigquery_v2::Result;
async fn sample(
client: &DatasetService
) -> Result<()> {
let response = client.patch_dataset()
/* set fields */
.send().await?;
println!("response {:?}", response);
Ok(())
}Sourcepub fn update_dataset(&self) -> UpdateDataset
pub fn update_dataset(&self) -> UpdateDataset
Updates information in an existing dataset. The update method replaces the entire dataset resource, whereas the patch method only replaces fields that are provided in the submitted dataset resource.
§IAM Permissions
Requires the bigquery.datasets.update permission on the dataset.
§Example
use google_cloud_bigquery_v2::Result;
async fn sample(
client: &DatasetService
) -> Result<()> {
let response = client.update_dataset()
/* set fields */
.send().await?;
println!("response {:?}", response);
Ok(())
}Sourcepub fn delete_dataset(&self) -> DeleteDataset
pub fn delete_dataset(&self) -> DeleteDataset
Deletes the dataset specified by the datasetId value. Before you can delete a dataset, you must delete all its tables, either manually or by specifying deleteContents. Immediately after deletion, you can create another dataset with the same name.
§IAM Permissions
Requires the bigquery.datasets.delete permission on the dataset.
§Example
use google_cloud_bigquery_v2::Result;
async fn sample(
client: &DatasetService
) -> Result<()> {
client.delete_dataset()
/* set fields */
.send().await?;
Ok(())
}Sourcepub fn list_datasets(&self) -> ListDatasets
pub fn list_datasets(&self) -> ListDatasets
Lists all datasets in the specified project to which the user has been granted the READER dataset role.
§IAM Permissions
Requires no specific IAM permission(s) to use this method.
Results are filtered to only include datasets on which the caller has the
bigquery.datasets.get permission.
§Example
use google_cloud_gax::paginator::ItemPaginator as _;
use google_cloud_bigquery_v2::Result;
async fn sample(
client: &DatasetService
) -> Result<()> {
let mut list = client.list_datasets()
/* set fields */
.by_item();
while let Some(item) = list.next().await.transpose()? {
println!("{:?}", item);
}
Ok(())
}Sourcepub fn undelete_dataset(&self) -> UndeleteDataset
pub fn undelete_dataset(&self) -> UndeleteDataset
Undeletes a dataset which is within time travel window based on datasetId. If a time is specified, the dataset version deleted at that time is undeleted, else the last live version is undeleted.
§IAM Permissions
Requires the following IAM permission(s) to use this method:
bigquery.datasets.createon the project.bigquery.datasets.geton the dataset.
§Example
use google_cloud_bigquery_v2::Result;
async fn sample(
client: &DatasetService
) -> Result<()> {
let response = client.undelete_dataset()
/* set fields */
.send().await?;
println!("response {:?}", response);
Ok(())
}Trait Implementations§
Source§impl Clone for DatasetService
impl Clone for DatasetService
Auto Trait Implementations§
impl !RefUnwindSafe for DatasetService
impl !UnwindSafe for DatasetService
impl Freeze for DatasetService
impl Send for DatasetService
impl Sync for DatasetService
impl Unpin for DatasetService
impl UnsafeUnpin for DatasetService
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> FutureExt for T
impl<T> FutureExt for T
Source§fn with_context(self, otel_cx: Context) -> WithContext<Self> ⓘ
fn with_context(self, otel_cx: Context) -> WithContext<Self> ⓘ
Source§fn with_current_context(self) -> WithContext<Self> ⓘ
fn with_current_context(self) -> WithContext<Self> ⓘ
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
Source§fn in_current_span(self) -> Instrumented<Self> ⓘ
fn in_current_span(self) -> Instrumented<Self> ⓘ
Source§impl<T> IntoRequest<T> for T
impl<T> IntoRequest<T> for T
Source§fn into_request(self) -> Request<T>
fn into_request(self) -> Request<T>
T in a tonic::Request