pub struct DataCatalogClient<T> { /* private fields */ }
Expand description

Data Catalog API service allows clients to discover, understand, and manage their data.

Implementations§

source§

impl<T> DataCatalogClient<T>
where T: GrpcService<BoxBody>, T::Error: Into<StdError>, T::ResponseBody: Body<Data = Bytes> + Send + 'static, <T::ResponseBody as Body>::Error: Into<StdError> + Send,

source

pub fn new(inner: T) -> Self

source

pub fn with_origin(inner: T, origin: Uri) -> Self

source

pub fn with_interceptor<F>( inner: T, interceptor: F, ) -> DataCatalogClient<InterceptedService<T, F>>
where F: Interceptor, T::ResponseBody: Default, T: Service<Request<BoxBody>, Response = Response<<T as GrpcService<BoxBody>>::ResponseBody>>, <T as Service<Request<BoxBody>>>::Error: Into<StdError> + Send + Sync,

source

pub fn send_compressed(self, encoding: CompressionEncoding) -> Self

Compress requests with the given encoding.

This requires the server to support it otherwise it might respond with an error.

source

pub fn accept_compressed(self, encoding: CompressionEncoding) -> Self

Enable decompressing responses.

source

pub fn max_decoding_message_size(self, limit: usize) -> Self

Limits the maximum size of a decoded message.

Default: 4MB

source

pub fn max_encoding_message_size(self, limit: usize) -> Self

Limits the maximum size of an encoded message.

Default: usize::MAX

source

pub async fn search_catalog( &mut self, request: impl IntoRequest<SearchCatalogRequest>, ) -> Result<Response<SearchCatalogResponse>, Status>

Searches Data Catalog for multiple resources like entries, tags that match a query.

This is a custom method (https://cloud.google.com/apis/design/custom_methods) and does not return the complete resource, only the resource identifier and high level fields. Clients can subsequently call Get methods.

Note that Data Catalog search queries do not guarantee full recall. Query results that match your query may not be returned, even in subsequent result pages. Also note that results returned (and not returned) can vary across repeated search queries.

See Data Catalog Search Syntax for more information.

source

pub async fn create_entry_group( &mut self, request: impl IntoRequest<CreateEntryGroupRequest>, ) -> Result<Response<EntryGroup>, Status>

A maximum of 10,000 entry groups may be created per organization across all locations.

Users should enable the Data Catalog API in the project identified by the parent parameter (see [Data Catalog Resource Project] (https://cloud.google.com/data-catalog/docs/concepts/resource-project) for more information).

source

pub async fn update_entry_group( &mut self, request: impl IntoRequest<UpdateEntryGroupRequest>, ) -> Result<Response<EntryGroup>, Status>

Updates an EntryGroup. The user should enable the Data Catalog API in the project identified by the entry_group.name parameter (see [Data Catalog Resource Project] (https://cloud.google.com/data-catalog/docs/concepts/resource-project) for more information).

source

pub async fn get_entry_group( &mut self, request: impl IntoRequest<GetEntryGroupRequest>, ) -> Result<Response<EntryGroup>, Status>

Gets an EntryGroup.

source

pub async fn delete_entry_group( &mut self, request: impl IntoRequest<DeleteEntryGroupRequest>, ) -> Result<Response<()>, Status>

Deletes an EntryGroup. Only entry groups that do not contain entries can be deleted. Users should enable the Data Catalog API in the project identified by the name parameter (see [Data Catalog Resource Project] (https://cloud.google.com/data-catalog/docs/concepts/resource-project) for more information).

source

pub async fn list_entry_groups( &mut self, request: impl IntoRequest<ListEntryGroupsRequest>, ) -> Result<Response<ListEntryGroupsResponse>, Status>

Lists entry groups.

source

pub async fn create_entry( &mut self, request: impl IntoRequest<CreateEntryRequest>, ) -> Result<Response<Entry>, Status>

Creates an entry. Only entries of ‘FILESET’ type or user-specified type can be created.

Users should enable the Data Catalog API in the project identified by the parent parameter (see [Data Catalog Resource Project] (https://cloud.google.com/data-catalog/docs/concepts/resource-project) for more information).

A maximum of 100,000 entries may be created per entry group.

source

pub async fn update_entry( &mut self, request: impl IntoRequest<UpdateEntryRequest>, ) -> Result<Response<Entry>, Status>

Updates an existing entry. Users should enable the Data Catalog API in the project identified by the entry.name parameter (see [Data Catalog Resource Project] (https://cloud.google.com/data-catalog/docs/concepts/resource-project) for more information).

source

pub async fn delete_entry( &mut self, request: impl IntoRequest<DeleteEntryRequest>, ) -> Result<Response<()>, Status>

Deletes an existing entry. Only entries created through [CreateEntry][google.cloud.datacatalog.v1beta1.DataCatalog.CreateEntry] method can be deleted. Users should enable the Data Catalog API in the project identified by the name parameter (see [Data Catalog Resource Project] (https://cloud.google.com/data-catalog/docs/concepts/resource-project) for more information).

source

pub async fn get_entry( &mut self, request: impl IntoRequest<GetEntryRequest>, ) -> Result<Response<Entry>, Status>

Gets an entry.

source

pub async fn lookup_entry( &mut self, request: impl IntoRequest<LookupEntryRequest>, ) -> Result<Response<Entry>, Status>

Get an entry by target resource name. This method allows clients to use the resource name from the source Google Cloud Platform service to get the Data Catalog Entry.

source

pub async fn list_entries( &mut self, request: impl IntoRequest<ListEntriesRequest>, ) -> Result<Response<ListEntriesResponse>, Status>

Lists entries.

source

pub async fn create_tag_template( &mut self, request: impl IntoRequest<CreateTagTemplateRequest>, ) -> Result<Response<TagTemplate>, Status>

Creates a tag template. The user should enable the Data Catalog API in the project identified by the parent parameter (see Data Catalog Resource Project for more information).

source

pub async fn get_tag_template( &mut self, request: impl IntoRequest<GetTagTemplateRequest>, ) -> Result<Response<TagTemplate>, Status>

Gets a tag template.

source

pub async fn update_tag_template( &mut self, request: impl IntoRequest<UpdateTagTemplateRequest>, ) -> Result<Response<TagTemplate>, Status>

Updates a tag template. This method cannot be used to update the fields of a template. The tag template fields are represented as separate resources and should be updated using their own create/update/delete methods. Users should enable the Data Catalog API in the project identified by the tag_template.name parameter (see [Data Catalog Resource Project] (https://cloud.google.com/data-catalog/docs/concepts/resource-project) for more information).

source

pub async fn delete_tag_template( &mut self, request: impl IntoRequest<DeleteTagTemplateRequest>, ) -> Result<Response<()>, Status>

Deletes a tag template and all tags using the template. Users should enable the Data Catalog API in the project identified by the name parameter (see [Data Catalog Resource Project] (https://cloud.google.com/data-catalog/docs/concepts/resource-project) for more information).

source

pub async fn create_tag_template_field( &mut self, request: impl IntoRequest<CreateTagTemplateFieldRequest>, ) -> Result<Response<TagTemplateField>, Status>

Creates a field in a tag template. The user should enable the Data Catalog API in the project identified by the parent parameter (see Data Catalog Resource Project for more information).

source

pub async fn update_tag_template_field( &mut self, request: impl IntoRequest<UpdateTagTemplateFieldRequest>, ) -> Result<Response<TagTemplateField>, Status>

Updates a field in a tag template. This method cannot be used to update the field type. Users should enable the Data Catalog API in the project identified by the name parameter (see [Data Catalog Resource Project] (https://cloud.google.com/data-catalog/docs/concepts/resource-project) for more information).

source

pub async fn rename_tag_template_field( &mut self, request: impl IntoRequest<RenameTagTemplateFieldRequest>, ) -> Result<Response<TagTemplateField>, Status>

Renames a field in a tag template. The user should enable the Data Catalog API in the project identified by the name parameter (see Data Catalog Resource Project for more information).

source

pub async fn rename_tag_template_field_enum_value( &mut self, request: impl IntoRequest<RenameTagTemplateFieldEnumValueRequest>, ) -> Result<Response<TagTemplateField>, Status>

Renames an enum value in a tag template. The enum values have to be unique within one enum field. Thus, an enum value cannot be renamed with a name used in any other enum value within the same enum field.

source

pub async fn delete_tag_template_field( &mut self, request: impl IntoRequest<DeleteTagTemplateFieldRequest>, ) -> Result<Response<()>, Status>

Deletes a field in a tag template and all uses of that field. Users should enable the Data Catalog API in the project identified by the name parameter (see [Data Catalog Resource Project] (https://cloud.google.com/data-catalog/docs/concepts/resource-project) for more information).

source

pub async fn create_tag( &mut self, request: impl IntoRequest<CreateTagRequest>, ) -> Result<Response<Tag>, Status>

Creates a tag on an [Entry][google.cloud.datacatalog.v1beta1.Entry]. Note: The project identified by the parent parameter for the tag and the tag template used to create the tag must be from the same organization.

source

pub async fn update_tag( &mut self, request: impl IntoRequest<UpdateTagRequest>, ) -> Result<Response<Tag>, Status>

Updates an existing tag.

source

pub async fn delete_tag( &mut self, request: impl IntoRequest<DeleteTagRequest>, ) -> Result<Response<()>, Status>

Deletes a tag.

source

pub async fn list_tags( &mut self, request: impl IntoRequest<ListTagsRequest>, ) -> Result<Response<ListTagsResponse>, Status>

Lists tags assigned to an [Entry][google.cloud.datacatalog.v1beta1.Entry]. The [columns][google.cloud.datacatalog.v1beta1.Tag.column] in the response are lowercased.

source

pub async fn set_iam_policy( &mut self, request: impl IntoRequest<SetIamPolicyRequest>, ) -> Result<Response<Policy>, Status>

Sets the access control policy for a resource. Replaces any existing policy. Supported resources are:

  • Tag templates.
  • Entries.
  • Entry groups. Note, this method cannot be used to manage policies for BigQuery, Pub/Sub and any external Google Cloud Platform resources synced to Data Catalog.

Callers must have following Google IAM permission

  • datacatalog.tagTemplates.setIamPolicy to set policies on tag templates.
  • datacatalog.entries.setIamPolicy to set policies on entries.
  • datacatalog.entryGroups.setIamPolicy to set policies on entry groups.
source

pub async fn get_iam_policy( &mut self, request: impl IntoRequest<GetIamPolicyRequest>, ) -> Result<Response<Policy>, Status>

Gets the access control policy for a resource. A NOT_FOUND error is returned if the resource does not exist. An empty policy is returned if the resource exists but does not have a policy set on it.

Supported resources are:

  • Tag templates.
  • Entries.
  • Entry groups. Note, this method cannot be used to manage policies for BigQuery, Pub/Sub and any external Google Cloud Platform resources synced to Data Catalog.

Callers must have following Google IAM permission

  • datacatalog.tagTemplates.getIamPolicy to get policies on tag templates.
  • datacatalog.entries.getIamPolicy to get policies on entries.
  • datacatalog.entryGroups.getIamPolicy to get policies on entry groups.
source

pub async fn test_iam_permissions( &mut self, request: impl IntoRequest<TestIamPermissionsRequest>, ) -> Result<Response<TestIamPermissionsResponse>, Status>

Returns the caller’s permissions on a resource. If the resource does not exist, an empty set of permissions is returned (We don’t return a NOT_FOUND error).

Supported resources are:

  • Tag templates.
  • Entries.
  • Entry groups. Note, this method cannot be used to manage policies for BigQuery, Pub/Sub and any external Google Cloud Platform resources synced to Data Catalog.

A caller is not required to have Google IAM permission to make this request.

Trait Implementations§

source§

impl<T: Clone> Clone for DataCatalogClient<T>

source§

fn clone(&self) -> DataCatalogClient<T>

Returns a copy of the value. Read more
1.0.0 · source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
source§

impl<T: Debug> Debug for DataCatalogClient<T>

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more

Auto Trait Implementations§

§

impl<T> !Freeze for DataCatalogClient<T>

§

impl<T> RefUnwindSafe for DataCatalogClient<T>
where T: RefUnwindSafe,

§

impl<T> Send for DataCatalogClient<T>
where T: Send,

§

impl<T> Sync for DataCatalogClient<T>
where T: Sync,

§

impl<T> Unpin for DataCatalogClient<T>
where T: Unpin,

§

impl<T> UnwindSafe for DataCatalogClient<T>
where T: UnwindSafe,

Blanket Implementations§

source§

impl<T> Any for T
where T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for T
where T: ?Sized,

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
source§

impl<T> From<T> for T

source§

fn from(t: T) -> T

Returns the argument unchanged.

§

impl<T> FromRef<T> for T
where T: Clone,

§

fn from_ref(input: &T) -> T

Converts to this type from a reference to the input type.
§

impl<T> Instrument for T

§

fn instrument(self, span: Span) -> Instrumented<Self>

Instruments this type with the provided [Span], returning an Instrumented wrapper. Read more
§

fn in_current_span(self) -> Instrumented<Self>

Instruments this type with the current Span, returning an Instrumented wrapper. Read more
source§

impl<T, U> Into<U> for T
where U: From<T>,

source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

source§

impl<T> IntoRequest<T> for T

source§

fn into_request(self) -> Request<T>

Wrap the input message T in a tonic::Request
source§

impl<T> ToOwned for T
where T: Clone,

§

type Owned = T

The resulting type after obtaining ownership.
source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

§

type Error = Infallible

The type returned in the event of a conversion error.
source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
§

impl<V, T> VZip<V> for T
where V: MultiLane<T>,

§

fn vzip(self) -> V

§

impl<T> WithSubscriber for T

§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a [WithDispatch] wrapper. Read more