Class DataCatalogClient

  • All Implemented Interfaces:
    com.google.api.gax.core.BackgroundResource, AutoCloseable

    @BetaApi
    @Generated("by gapic-generator-java")
    public class DataCatalogClient
    extends Object
    implements com.google.api.gax.core.BackgroundResource
    Service Description: Data Catalog API service allows clients to discover, understand, and manage their data.

    This class provides the ability to make remote calls to the backing service through method calls that map to API methods. Sample code to get started:

    
     // This snippet has been automatically generated and should be regarded as a code template only.
     // It will require modifications to work:
     // - It may require correct/in-range values for request initialization.
     // - It may require specifying regional endpoints when creating the service client as shown in
     // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
     try (DataCatalogClient dataCatalogClient = DataCatalogClient.create()) {
       LocationName parent = LocationName.of("[PROJECT]", "[LOCATION]");
       String entryGroupId = "entryGroupId1228924712";
       EntryGroup entryGroup = EntryGroup.newBuilder().build();
       EntryGroup response = dataCatalogClient.createEntryGroup(parent, entryGroupId, entryGroup);
     }
     

    Note: close() needs to be called on the DataCatalogClient object to clean up resources such as threads. In the example above, try-with-resources is used, which automatically calls close().

    The surface of this class includes several types of Java methods for each of the API's methods:

    1. A "flattened" method. With this type of method, the fields of the request type have been converted into function parameters. It may be the case that not all fields are available as parameters, and not every API method will have a flattened method entry point.
    2. A "request object" method. This type of method only takes one parameter, a request object, which must be constructed before the call. Not every API method will have a request object method.
    3. A "callable" method. This type of method takes no parameters and returns an immutable API callable object, which can be used to initiate calls to the service.

    See the individual methods for example code.

    Many parameters require resource names to be formatted in a particular way. To assist with these names, this class includes a format method for each type of name, and additionally a parse method to extract the individual identifiers contained within names that are returned.

    This class can be customized by passing in a custom instance of DataCatalogSettings to create(). For example:

    To customize credentials:

    
     // This snippet has been automatically generated and should be regarded as a code template only.
     // It will require modifications to work:
     // - It may require correct/in-range values for request initialization.
     // - It may require specifying regional endpoints when creating the service client as shown in
     // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
     DataCatalogSettings dataCatalogSettings =
         DataCatalogSettings.newBuilder()
             .setCredentialsProvider(FixedCredentialsProvider.create(myCredentials))
             .build();
     DataCatalogClient dataCatalogClient = DataCatalogClient.create(dataCatalogSettings);
     

    To customize the endpoint:

    
     // This snippet has been automatically generated and should be regarded as a code template only.
     // It will require modifications to work:
     // - It may require correct/in-range values for request initialization.
     // - It may require specifying regional endpoints when creating the service client as shown in
     // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
     DataCatalogSettings dataCatalogSettings =
         DataCatalogSettings.newBuilder().setEndpoint(myEndpoint).build();
     DataCatalogClient dataCatalogClient = DataCatalogClient.create(dataCatalogSettings);
     

    To use REST (HTTP1.1/JSON) transport (instead of gRPC) for sending and receiving requests over the wire:

    
     // This snippet has been automatically generated and should be regarded as a code template only.
     // It will require modifications to work:
     // - It may require correct/in-range values for request initialization.
     // - It may require specifying regional endpoints when creating the service client as shown in
     // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
     DataCatalogSettings dataCatalogSettings = DataCatalogSettings.newHttpJsonBuilder().build();
     DataCatalogClient dataCatalogClient = DataCatalogClient.create(dataCatalogSettings);
     

    Please refer to the GitHub repository's samples for more quickstart code snippets.

    • Constructor Detail

      • DataCatalogClient

        protected DataCatalogClient​(DataCatalogSettings settings)
                             throws IOException
        Constructs an instance of DataCatalogClient, using the given settings. This is protected so that it is easy to make a subclass, but otherwise, the static factory methods should be preferred.
        Throws:
        IOException
    • Method Detail

      • create

        public static final DataCatalogClient create​(DataCatalogSettings settings)
                                              throws IOException
        Constructs an instance of DataCatalogClient, using the given settings. The channels are created based on the settings passed in, or defaults for any settings that are not set.
        Throws:
        IOException
      • create

        public static final DataCatalogClient create​(DataCatalogStub stub)
        Constructs an instance of DataCatalogClient, using the given stub for making calls. This is for advanced usage - prefer using create(DataCatalogSettings).
      • searchCatalog

        public final DataCatalogClient.SearchCatalogPagedResponse searchCatalog​(SearchCatalogRequest.Scope scope,
                                                                                String query)
        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](https://cloud.google.com/data-catalog/docs/how-to/search-reference) for more information.

        Sample code:

        
         // This snippet has been automatically generated and should be regarded as a code template only.
         // It will require modifications to work:
         // - It may require correct/in-range values for request initialization.
         // - It may require specifying regional endpoints when creating the service client as shown in
         // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
         try (DataCatalogClient dataCatalogClient = DataCatalogClient.create()) {
           SearchCatalogRequest.Scope scope = SearchCatalogRequest.Scope.newBuilder().build();
           String query = "query107944136";
           for (SearchCatalogResult element :
               dataCatalogClient.searchCatalog(scope, query).iterateAll()) {
             // doThingsWith(element);
           }
         }
         
        Parameters:
        scope - Required. The scope of this search request. A `scope` that has empty `include_org_ids`, `include_project_ids` AND false `include_gcp_public_datasets` is considered invalid. Data Catalog will return an error in such a case.
        query - Optional. The query string in search query syntax. An empty query string will result in all data assets (in the specified scope) that the user has access to. Query strings can be simple as "x" or more qualified as:
        • name:x
        • column:x
        • description:y

        Note: Query tokens need to have a minimum of 3 characters for substring matching to work correctly. See [Data Catalog Search Syntax](https://cloud.google.com/data-catalog/docs/how-to/search-reference) for more information.

        Throws:
        com.google.api.gax.rpc.ApiException - if the remote call fails
      • searchCatalog

        public final DataCatalogClient.SearchCatalogPagedResponse searchCatalog​(SearchCatalogRequest request)
        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](https://cloud.google.com/data-catalog/docs/how-to/search-reference) for more information.

        Sample code:

        
         // This snippet has been automatically generated and should be regarded as a code template only.
         // It will require modifications to work:
         // - It may require correct/in-range values for request initialization.
         // - It may require specifying regional endpoints when creating the service client as shown in
         // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
         try (DataCatalogClient dataCatalogClient = DataCatalogClient.create()) {
           SearchCatalogRequest request =
               SearchCatalogRequest.newBuilder()
                   .setScope(SearchCatalogRequest.Scope.newBuilder().build())
                   .setQuery("query107944136")
                   .setPageSize(883849137)
                   .setPageToken("pageToken873572522")
                   .setOrderBy("orderBy-1207110587")
                   .build();
           for (SearchCatalogResult element : dataCatalogClient.searchCatalog(request).iterateAll()) {
             // doThingsWith(element);
           }
         }
         
        Parameters:
        request - The request object containing all of the parameters for the API call.
        Throws:
        com.google.api.gax.rpc.ApiException - if the remote call fails
      • searchCatalogPagedCallable

        public final com.google.api.gax.rpc.UnaryCallable<SearchCatalogRequest,​DataCatalogClient.SearchCatalogPagedResponse> searchCatalogPagedCallable()
        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](https://cloud.google.com/data-catalog/docs/how-to/search-reference) for more information.

        Sample code:

        
         // This snippet has been automatically generated and should be regarded as a code template only.
         // It will require modifications to work:
         // - It may require correct/in-range values for request initialization.
         // - It may require specifying regional endpoints when creating the service client as shown in
         // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
         try (DataCatalogClient dataCatalogClient = DataCatalogClient.create()) {
           SearchCatalogRequest request =
               SearchCatalogRequest.newBuilder()
                   .setScope(SearchCatalogRequest.Scope.newBuilder().build())
                   .setQuery("query107944136")
                   .setPageSize(883849137)
                   .setPageToken("pageToken873572522")
                   .setOrderBy("orderBy-1207110587")
                   .build();
           ApiFuture<SearchCatalogResult> future =
               dataCatalogClient.searchCatalogPagedCallable().futureCall(request);
           // Do something.
           for (SearchCatalogResult element : future.get().iterateAll()) {
             // doThingsWith(element);
           }
         }
         
      • searchCatalogCallable

        public final com.google.api.gax.rpc.UnaryCallable<SearchCatalogRequest,​SearchCatalogResponse> searchCatalogCallable()
        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](https://cloud.google.com/data-catalog/docs/how-to/search-reference) for more information.

        Sample code:

        
         // This snippet has been automatically generated and should be regarded as a code template only.
         // It will require modifications to work:
         // - It may require correct/in-range values for request initialization.
         // - It may require specifying regional endpoints when creating the service client as shown in
         // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
         try (DataCatalogClient dataCatalogClient = DataCatalogClient.create()) {
           SearchCatalogRequest request =
               SearchCatalogRequest.newBuilder()
                   .setScope(SearchCatalogRequest.Scope.newBuilder().build())
                   .setQuery("query107944136")
                   .setPageSize(883849137)
                   .setPageToken("pageToken873572522")
                   .setOrderBy("orderBy-1207110587")
                   .build();
           while (true) {
             SearchCatalogResponse response = dataCatalogClient.searchCatalogCallable().call(request);
             for (SearchCatalogResult element : response.getResultsList()) {
               // doThingsWith(element);
             }
             String nextPageToken = response.getNextPageToken();
             if (!Strings.isNullOrEmpty(nextPageToken)) {
               request = request.toBuilder().setPageToken(nextPageToken).build();
             } else {
               break;
             }
           }
         }
         
      • createEntryGroup

        public final EntryGroup createEntryGroup​(LocationName parent,
                                                 String entryGroupId,
                                                 EntryGroup entryGroup)
        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).

        Sample code:

        
         // This snippet has been automatically generated and should be regarded as a code template only.
         // It will require modifications to work:
         // - It may require correct/in-range values for request initialization.
         // - It may require specifying regional endpoints when creating the service client as shown in
         // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
         try (DataCatalogClient dataCatalogClient = DataCatalogClient.create()) {
           LocationName parent = LocationName.of("[PROJECT]", "[LOCATION]");
           String entryGroupId = "entryGroupId1228924712";
           EntryGroup entryGroup = EntryGroup.newBuilder().build();
           EntryGroup response = dataCatalogClient.createEntryGroup(parent, entryGroupId, entryGroup);
         }
         
        Parameters:
        parent - Required. The name of the project this entry group is in. Example:
        • projects/{project_id}/locations/{location}

        Note that this EntryGroup and its child resources may not actually be stored in the location in this name.

        entryGroupId - Required. The id of the entry group to create. The id must begin with a letter or underscore, contain only English letters, numbers and underscores, and be at most 64 characters.
        entryGroup - The entry group to create. Defaults to an empty entry group.
        Throws:
        com.google.api.gax.rpc.ApiException - if the remote call fails
      • createEntryGroup

        public final EntryGroup createEntryGroup​(String parent,
                                                 String entryGroupId,
                                                 EntryGroup entryGroup)
        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).

        Sample code:

        
         // This snippet has been automatically generated and should be regarded as a code template only.
         // It will require modifications to work:
         // - It may require correct/in-range values for request initialization.
         // - It may require specifying regional endpoints when creating the service client as shown in
         // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
         try (DataCatalogClient dataCatalogClient = DataCatalogClient.create()) {
           String parent = LocationName.of("[PROJECT]", "[LOCATION]").toString();
           String entryGroupId = "entryGroupId1228924712";
           EntryGroup entryGroup = EntryGroup.newBuilder().build();
           EntryGroup response = dataCatalogClient.createEntryGroup(parent, entryGroupId, entryGroup);
         }
         
        Parameters:
        parent - Required. The name of the project this entry group is in. Example:
        • projects/{project_id}/locations/{location}

        Note that this EntryGroup and its child resources may not actually be stored in the location in this name.

        entryGroupId - Required. The id of the entry group to create. The id must begin with a letter or underscore, contain only English letters, numbers and underscores, and be at most 64 characters.
        entryGroup - The entry group to create. Defaults to an empty entry group.
        Throws:
        com.google.api.gax.rpc.ApiException - if the remote call fails
      • createEntryGroup

        public final EntryGroup createEntryGroup​(CreateEntryGroupRequest request)
        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).

        Sample code:

        
         // This snippet has been automatically generated and should be regarded as a code template only.
         // It will require modifications to work:
         // - It may require correct/in-range values for request initialization.
         // - It may require specifying regional endpoints when creating the service client as shown in
         // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
         try (DataCatalogClient dataCatalogClient = DataCatalogClient.create()) {
           CreateEntryGroupRequest request =
               CreateEntryGroupRequest.newBuilder()
                   .setParent(LocationName.of("[PROJECT]", "[LOCATION]").toString())
                   .setEntryGroupId("entryGroupId1228924712")
                   .setEntryGroup(EntryGroup.newBuilder().build())
                   .build();
           EntryGroup response = dataCatalogClient.createEntryGroup(request);
         }
         
        Parameters:
        request - The request object containing all of the parameters for the API call.
        Throws:
        com.google.api.gax.rpc.ApiException - if the remote call fails
      • createEntryGroupCallable

        public final com.google.api.gax.rpc.UnaryCallable<CreateEntryGroupRequest,​EntryGroup> createEntryGroupCallable()
        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).

        Sample code:

        
         // This snippet has been automatically generated and should be regarded as a code template only.
         // It will require modifications to work:
         // - It may require correct/in-range values for request initialization.
         // - It may require specifying regional endpoints when creating the service client as shown in
         // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
         try (DataCatalogClient dataCatalogClient = DataCatalogClient.create()) {
           CreateEntryGroupRequest request =
               CreateEntryGroupRequest.newBuilder()
                   .setParent(LocationName.of("[PROJECT]", "[LOCATION]").toString())
                   .setEntryGroupId("entryGroupId1228924712")
                   .setEntryGroup(EntryGroup.newBuilder().build())
                   .build();
           ApiFuture<EntryGroup> future =
               dataCatalogClient.createEntryGroupCallable().futureCall(request);
           // Do something.
           EntryGroup response = future.get();
         }
         
      • updateEntryGroup

        public final EntryGroup updateEntryGroup​(EntryGroup entryGroup)
        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).

        Sample code:

        
         // This snippet has been automatically generated and should be regarded as a code template only.
         // It will require modifications to work:
         // - It may require correct/in-range values for request initialization.
         // - It may require specifying regional endpoints when creating the service client as shown in
         // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
         try (DataCatalogClient dataCatalogClient = DataCatalogClient.create()) {
           EntryGroup entryGroup = EntryGroup.newBuilder().build();
           EntryGroup response = dataCatalogClient.updateEntryGroup(entryGroup);
         }
         
        Parameters:
        entryGroup - Required. The updated entry group. "name" field must be set.
        Throws:
        com.google.api.gax.rpc.ApiException - if the remote call fails
      • updateEntryGroup

        public final EntryGroup updateEntryGroup​(EntryGroup entryGroup,
                                                 com.google.protobuf.FieldMask updateMask)
        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).

        Sample code:

        
         // This snippet has been automatically generated and should be regarded as a code template only.
         // It will require modifications to work:
         // - It may require correct/in-range values for request initialization.
         // - It may require specifying regional endpoints when creating the service client as shown in
         // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
         try (DataCatalogClient dataCatalogClient = DataCatalogClient.create()) {
           EntryGroup entryGroup = EntryGroup.newBuilder().build();
           FieldMask updateMask = FieldMask.newBuilder().build();
           EntryGroup response = dataCatalogClient.updateEntryGroup(entryGroup, updateMask);
         }
         
        Parameters:
        entryGroup - Required. The updated entry group. "name" field must be set.
        updateMask - Names of fields whose values to overwrite on an entry group.

        If this parameter is absent or empty, all modifiable fields are overwritten. If such fields are non-required and omitted in the request body, their values are emptied.

        Throws:
        com.google.api.gax.rpc.ApiException - if the remote call fails
      • updateEntryGroup

        public final EntryGroup updateEntryGroup​(UpdateEntryGroupRequest request)
        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).

        Sample code:

        
         // This snippet has been automatically generated and should be regarded as a code template only.
         // It will require modifications to work:
         // - It may require correct/in-range values for request initialization.
         // - It may require specifying regional endpoints when creating the service client as shown in
         // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
         try (DataCatalogClient dataCatalogClient = DataCatalogClient.create()) {
           UpdateEntryGroupRequest request =
               UpdateEntryGroupRequest.newBuilder()
                   .setEntryGroup(EntryGroup.newBuilder().build())
                   .setUpdateMask(FieldMask.newBuilder().build())
                   .build();
           EntryGroup response = dataCatalogClient.updateEntryGroup(request);
         }
         
        Parameters:
        request - The request object containing all of the parameters for the API call.
        Throws:
        com.google.api.gax.rpc.ApiException - if the remote call fails
      • updateEntryGroupCallable

        public final com.google.api.gax.rpc.UnaryCallable<UpdateEntryGroupRequest,​EntryGroup> updateEntryGroupCallable()
        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).

        Sample code:

        
         // This snippet has been automatically generated and should be regarded as a code template only.
         // It will require modifications to work:
         // - It may require correct/in-range values for request initialization.
         // - It may require specifying regional endpoints when creating the service client as shown in
         // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
         try (DataCatalogClient dataCatalogClient = DataCatalogClient.create()) {
           UpdateEntryGroupRequest request =
               UpdateEntryGroupRequest.newBuilder()
                   .setEntryGroup(EntryGroup.newBuilder().build())
                   .setUpdateMask(FieldMask.newBuilder().build())
                   .build();
           ApiFuture<EntryGroup> future =
               dataCatalogClient.updateEntryGroupCallable().futureCall(request);
           // Do something.
           EntryGroup response = future.get();
         }
         
      • getEntryGroup

        public final EntryGroup getEntryGroup​(EntryGroupName name)
        Gets an EntryGroup.

        Sample code:

        
         // This snippet has been automatically generated and should be regarded as a code template only.
         // It will require modifications to work:
         // - It may require correct/in-range values for request initialization.
         // - It may require specifying regional endpoints when creating the service client as shown in
         // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
         try (DataCatalogClient dataCatalogClient = DataCatalogClient.create()) {
           EntryGroupName name = EntryGroupName.of("[PROJECT]", "[LOCATION]", "[ENTRY_GROUP]");
           EntryGroup response = dataCatalogClient.getEntryGroup(name);
         }
         
        Parameters:
        name - Required. The name of the entry group. For example, `projects/{project_id}/locations/{location}/entryGroups/{entry_group_id}`.
        Throws:
        com.google.api.gax.rpc.ApiException - if the remote call fails
      • getEntryGroup

        public final EntryGroup getEntryGroup​(String name)
        Gets an EntryGroup.

        Sample code:

        
         // This snippet has been automatically generated and should be regarded as a code template only.
         // It will require modifications to work:
         // - It may require correct/in-range values for request initialization.
         // - It may require specifying regional endpoints when creating the service client as shown in
         // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
         try (DataCatalogClient dataCatalogClient = DataCatalogClient.create()) {
           String name = EntryGroupName.of("[PROJECT]", "[LOCATION]", "[ENTRY_GROUP]").toString();
           EntryGroup response = dataCatalogClient.getEntryGroup(name);
         }
         
        Parameters:
        name - Required. The name of the entry group. For example, `projects/{project_id}/locations/{location}/entryGroups/{entry_group_id}`.
        Throws:
        com.google.api.gax.rpc.ApiException - if the remote call fails
      • getEntryGroup

        public final EntryGroup getEntryGroup​(EntryGroupName name,
                                              com.google.protobuf.FieldMask readMask)
        Gets an EntryGroup.

        Sample code:

        
         // This snippet has been automatically generated and should be regarded as a code template only.
         // It will require modifications to work:
         // - It may require correct/in-range values for request initialization.
         // - It may require specifying regional endpoints when creating the service client as shown in
         // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
         try (DataCatalogClient dataCatalogClient = DataCatalogClient.create()) {
           EntryGroupName name = EntryGroupName.of("[PROJECT]", "[LOCATION]", "[ENTRY_GROUP]");
           FieldMask readMask = FieldMask.newBuilder().build();
           EntryGroup response = dataCatalogClient.getEntryGroup(name, readMask);
         }
         
        Parameters:
        name - Required. The name of the entry group. For example, `projects/{project_id}/locations/{location}/entryGroups/{entry_group_id}`.
        readMask - The fields to return. If not set or empty, all fields are returned.
        Throws:
        com.google.api.gax.rpc.ApiException - if the remote call fails
      • getEntryGroup

        public final EntryGroup getEntryGroup​(String name,
                                              com.google.protobuf.FieldMask readMask)
        Gets an EntryGroup.

        Sample code:

        
         // This snippet has been automatically generated and should be regarded as a code template only.
         // It will require modifications to work:
         // - It may require correct/in-range values for request initialization.
         // - It may require specifying regional endpoints when creating the service client as shown in
         // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
         try (DataCatalogClient dataCatalogClient = DataCatalogClient.create()) {
           String name = EntryGroupName.of("[PROJECT]", "[LOCATION]", "[ENTRY_GROUP]").toString();
           FieldMask readMask = FieldMask.newBuilder().build();
           EntryGroup response = dataCatalogClient.getEntryGroup(name, readMask);
         }
         
        Parameters:
        name - Required. The name of the entry group. For example, `projects/{project_id}/locations/{location}/entryGroups/{entry_group_id}`.
        readMask - The fields to return. If not set or empty, all fields are returned.
        Throws:
        com.google.api.gax.rpc.ApiException - if the remote call fails
      • getEntryGroup

        public final EntryGroup getEntryGroup​(GetEntryGroupRequest request)
        Gets an EntryGroup.

        Sample code:

        
         // This snippet has been automatically generated and should be regarded as a code template only.
         // It will require modifications to work:
         // - It may require correct/in-range values for request initialization.
         // - It may require specifying regional endpoints when creating the service client as shown in
         // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
         try (DataCatalogClient dataCatalogClient = DataCatalogClient.create()) {
           GetEntryGroupRequest request =
               GetEntryGroupRequest.newBuilder()
                   .setName(EntryGroupName.of("[PROJECT]", "[LOCATION]", "[ENTRY_GROUP]").toString())
                   .setReadMask(FieldMask.newBuilder().build())
                   .build();
           EntryGroup response = dataCatalogClient.getEntryGroup(request);
         }
         
        Parameters:
        request - The request object containing all of the parameters for the API call.
        Throws:
        com.google.api.gax.rpc.ApiException - if the remote call fails
      • getEntryGroupCallable

        public final com.google.api.gax.rpc.UnaryCallable<GetEntryGroupRequest,​EntryGroup> getEntryGroupCallable()
        Gets an EntryGroup.

        Sample code:

        
         // This snippet has been automatically generated and should be regarded as a code template only.
         // It will require modifications to work:
         // - It may require correct/in-range values for request initialization.
         // - It may require specifying regional endpoints when creating the service client as shown in
         // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
         try (DataCatalogClient dataCatalogClient = DataCatalogClient.create()) {
           GetEntryGroupRequest request =
               GetEntryGroupRequest.newBuilder()
                   .setName(EntryGroupName.of("[PROJECT]", "[LOCATION]", "[ENTRY_GROUP]").toString())
                   .setReadMask(FieldMask.newBuilder().build())
                   .build();
           ApiFuture<EntryGroup> future = dataCatalogClient.getEntryGroupCallable().futureCall(request);
           // Do something.
           EntryGroup response = future.get();
         }
         
      • deleteEntryGroup

        public final void deleteEntryGroup​(EntryGroupName name)
        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).

        Sample code:

        
         // This snippet has been automatically generated and should be regarded as a code template only.
         // It will require modifications to work:
         // - It may require correct/in-range values for request initialization.
         // - It may require specifying regional endpoints when creating the service client as shown in
         // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
         try (DataCatalogClient dataCatalogClient = DataCatalogClient.create()) {
           EntryGroupName name = EntryGroupName.of("[PROJECT]", "[LOCATION]", "[ENTRY_GROUP]");
           dataCatalogClient.deleteEntryGroup(name);
         }
         
        Parameters:
        name - Required. The name of the entry group. For example, `projects/{project_id}/locations/{location}/entryGroups/{entry_group_id}`.
        Throws:
        com.google.api.gax.rpc.ApiException - if the remote call fails
      • deleteEntryGroup

        public final void deleteEntryGroup​(String name)
        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).

        Sample code:

        
         // This snippet has been automatically generated and should be regarded as a code template only.
         // It will require modifications to work:
         // - It may require correct/in-range values for request initialization.
         // - It may require specifying regional endpoints when creating the service client as shown in
         // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
         try (DataCatalogClient dataCatalogClient = DataCatalogClient.create()) {
           String name = EntryGroupName.of("[PROJECT]", "[LOCATION]", "[ENTRY_GROUP]").toString();
           dataCatalogClient.deleteEntryGroup(name);
         }
         
        Parameters:
        name - Required. The name of the entry group. For example, `projects/{project_id}/locations/{location}/entryGroups/{entry_group_id}`.
        Throws:
        com.google.api.gax.rpc.ApiException - if the remote call fails
      • deleteEntryGroup

        public final void deleteEntryGroup​(DeleteEntryGroupRequest request)
        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).

        Sample code:

        
         // This snippet has been automatically generated and should be regarded as a code template only.
         // It will require modifications to work:
         // - It may require correct/in-range values for request initialization.
         // - It may require specifying regional endpoints when creating the service client as shown in
         // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
         try (DataCatalogClient dataCatalogClient = DataCatalogClient.create()) {
           DeleteEntryGroupRequest request =
               DeleteEntryGroupRequest.newBuilder()
                   .setName(EntryGroupName.of("[PROJECT]", "[LOCATION]", "[ENTRY_GROUP]").toString())
                   .setForce(true)
                   .build();
           dataCatalogClient.deleteEntryGroup(request);
         }
         
        Parameters:
        request - The request object containing all of the parameters for the API call.
        Throws:
        com.google.api.gax.rpc.ApiException - if the remote call fails
      • deleteEntryGroupCallable

        public final com.google.api.gax.rpc.UnaryCallable<DeleteEntryGroupRequest,​com.google.protobuf.Empty> deleteEntryGroupCallable()
        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).

        Sample code:

        
         // This snippet has been automatically generated and should be regarded as a code template only.
         // It will require modifications to work:
         // - It may require correct/in-range values for request initialization.
         // - It may require specifying regional endpoints when creating the service client as shown in
         // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
         try (DataCatalogClient dataCatalogClient = DataCatalogClient.create()) {
           DeleteEntryGroupRequest request =
               DeleteEntryGroupRequest.newBuilder()
                   .setName(EntryGroupName.of("[PROJECT]", "[LOCATION]", "[ENTRY_GROUP]").toString())
                   .setForce(true)
                   .build();
           ApiFuture<Empty> future = dataCatalogClient.deleteEntryGroupCallable().futureCall(request);
           // Do something.
           future.get();
         }
         
      • listEntryGroups

        public final DataCatalogClient.ListEntryGroupsPagedResponse listEntryGroups​(LocationName parent)
        Lists entry groups.

        Sample code:

        
         // This snippet has been automatically generated and should be regarded as a code template only.
         // It will require modifications to work:
         // - It may require correct/in-range values for request initialization.
         // - It may require specifying regional endpoints when creating the service client as shown in
         // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
         try (DataCatalogClient dataCatalogClient = DataCatalogClient.create()) {
           LocationName parent = LocationName.of("[PROJECT]", "[LOCATION]");
           for (EntryGroup element : dataCatalogClient.listEntryGroups(parent).iterateAll()) {
             // doThingsWith(element);
           }
         }
         
        Parameters:
        parent - Required. The name of the location that contains the entry groups, which can be provided in URL format. Example:
        • projects/{project_id}/locations/{location}
        Throws:
        com.google.api.gax.rpc.ApiException - if the remote call fails
      • listEntryGroups

        public final DataCatalogClient.ListEntryGroupsPagedResponse listEntryGroups​(String parent)
        Lists entry groups.

        Sample code:

        
         // This snippet has been automatically generated and should be regarded as a code template only.
         // It will require modifications to work:
         // - It may require correct/in-range values for request initialization.
         // - It may require specifying regional endpoints when creating the service client as shown in
         // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
         try (DataCatalogClient dataCatalogClient = DataCatalogClient.create()) {
           String parent = LocationName.of("[PROJECT]", "[LOCATION]").toString();
           for (EntryGroup element : dataCatalogClient.listEntryGroups(parent).iterateAll()) {
             // doThingsWith(element);
           }
         }
         
        Parameters:
        parent - Required. The name of the location that contains the entry groups, which can be provided in URL format. Example:
        • projects/{project_id}/locations/{location}
        Throws:
        com.google.api.gax.rpc.ApiException - if the remote call fails
      • listEntryGroups

        public final DataCatalogClient.ListEntryGroupsPagedResponse listEntryGroups​(ListEntryGroupsRequest request)
        Lists entry groups.

        Sample code:

        
         // This snippet has been automatically generated and should be regarded as a code template only.
         // It will require modifications to work:
         // - It may require correct/in-range values for request initialization.
         // - It may require specifying regional endpoints when creating the service client as shown in
         // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
         try (DataCatalogClient dataCatalogClient = DataCatalogClient.create()) {
           ListEntryGroupsRequest request =
               ListEntryGroupsRequest.newBuilder()
                   .setParent(LocationName.of("[PROJECT]", "[LOCATION]").toString())
                   .setPageSize(883849137)
                   .setPageToken("pageToken873572522")
                   .build();
           for (EntryGroup element : dataCatalogClient.listEntryGroups(request).iterateAll()) {
             // doThingsWith(element);
           }
         }
         
        Parameters:
        request - The request object containing all of the parameters for the API call.
        Throws:
        com.google.api.gax.rpc.ApiException - if the remote call fails
      • listEntryGroupsPagedCallable

        public final com.google.api.gax.rpc.UnaryCallable<ListEntryGroupsRequest,​DataCatalogClient.ListEntryGroupsPagedResponse> listEntryGroupsPagedCallable()
        Lists entry groups.

        Sample code:

        
         // This snippet has been automatically generated and should be regarded as a code template only.
         // It will require modifications to work:
         // - It may require correct/in-range values for request initialization.
         // - It may require specifying regional endpoints when creating the service client as shown in
         // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
         try (DataCatalogClient dataCatalogClient = DataCatalogClient.create()) {
           ListEntryGroupsRequest request =
               ListEntryGroupsRequest.newBuilder()
                   .setParent(LocationName.of("[PROJECT]", "[LOCATION]").toString())
                   .setPageSize(883849137)
                   .setPageToken("pageToken873572522")
                   .build();
           ApiFuture<EntryGroup> future =
               dataCatalogClient.listEntryGroupsPagedCallable().futureCall(request);
           // Do something.
           for (EntryGroup element : future.get().iterateAll()) {
             // doThingsWith(element);
           }
         }
         
      • listEntryGroupsCallable

        public final com.google.api.gax.rpc.UnaryCallable<ListEntryGroupsRequest,​ListEntryGroupsResponse> listEntryGroupsCallable()
        Lists entry groups.

        Sample code:

        
         // This snippet has been automatically generated and should be regarded as a code template only.
         // It will require modifications to work:
         // - It may require correct/in-range values for request initialization.
         // - It may require specifying regional endpoints when creating the service client as shown in
         // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
         try (DataCatalogClient dataCatalogClient = DataCatalogClient.create()) {
           ListEntryGroupsRequest request =
               ListEntryGroupsRequest.newBuilder()
                   .setParent(LocationName.of("[PROJECT]", "[LOCATION]").toString())
                   .setPageSize(883849137)
                   .setPageToken("pageToken873572522")
                   .build();
           while (true) {
             ListEntryGroupsResponse response =
                 dataCatalogClient.listEntryGroupsCallable().call(request);
             for (EntryGroup element : response.getEntryGroupsList()) {
               // doThingsWith(element);
             }
             String nextPageToken = response.getNextPageToken();
             if (!Strings.isNullOrEmpty(nextPageToken)) {
               request = request.toBuilder().setPageToken(nextPageToken).build();
             } else {
               break;
             }
           }
         }
         
      • createEntry

        public final Entry createEntry​(EntryGroupName parent,
                                       String entryId,
                                       Entry entry)
        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.

        Sample code:

        
         // This snippet has been automatically generated and should be regarded as a code template only.
         // It will require modifications to work:
         // - It may require correct/in-range values for request initialization.
         // - It may require specifying regional endpoints when creating the service client as shown in
         // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
         try (DataCatalogClient dataCatalogClient = DataCatalogClient.create()) {
           EntryGroupName parent = EntryGroupName.of("[PROJECT]", "[LOCATION]", "[ENTRY_GROUP]");
           String entryId = "entryId-1591558867";
           Entry entry = Entry.newBuilder().build();
           Entry response = dataCatalogClient.createEntry(parent, entryId, entry);
         }
         
        Parameters:
        parent - Required. The name of the entry group this entry is in. Example:
        • projects/{project_id}/locations/{location}/entryGroups/{entry_group_id}

        Note that this Entry and its child resources may not actually be stored in the location in this name.

        entryId - Required. The id of the entry to create.
        entry - Required. The entry to create.
        Throws:
        com.google.api.gax.rpc.ApiException - if the remote call fails
      • createEntry

        public final Entry createEntry​(String parent,
                                       String entryId,
                                       Entry entry)
        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.

        Sample code:

        
         // This snippet has been automatically generated and should be regarded as a code template only.
         // It will require modifications to work:
         // - It may require correct/in-range values for request initialization.
         // - It may require specifying regional endpoints when creating the service client as shown in
         // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
         try (DataCatalogClient dataCatalogClient = DataCatalogClient.create()) {
           String parent = EntryGroupName.of("[PROJECT]", "[LOCATION]", "[ENTRY_GROUP]").toString();
           String entryId = "entryId-1591558867";
           Entry entry = Entry.newBuilder().build();
           Entry response = dataCatalogClient.createEntry(parent, entryId, entry);
         }
         
        Parameters:
        parent - Required. The name of the entry group this entry is in. Example:
        • projects/{project_id}/locations/{location}/entryGroups/{entry_group_id}

        Note that this Entry and its child resources may not actually be stored in the location in this name.

        entryId - Required. The id of the entry to create.
        entry - Required. The entry to create.
        Throws:
        com.google.api.gax.rpc.ApiException - if the remote call fails
      • createEntry

        public final Entry createEntry​(CreateEntryRequest request)
        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.

        Sample code:

        
         // This snippet has been automatically generated and should be regarded as a code template only.
         // It will require modifications to work:
         // - It may require correct/in-range values for request initialization.
         // - It may require specifying regional endpoints when creating the service client as shown in
         // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
         try (DataCatalogClient dataCatalogClient = DataCatalogClient.create()) {
           CreateEntryRequest request =
               CreateEntryRequest.newBuilder()
                   .setParent(EntryGroupName.of("[PROJECT]", "[LOCATION]", "[ENTRY_GROUP]").toString())
                   .setEntryId("entryId-1591558867")
                   .setEntry(Entry.newBuilder().build())
                   .build();
           Entry response = dataCatalogClient.createEntry(request);
         }
         
        Parameters:
        request - The request object containing all of the parameters for the API call.
        Throws:
        com.google.api.gax.rpc.ApiException - if the remote call fails
      • createEntryCallable

        public final com.google.api.gax.rpc.UnaryCallable<CreateEntryRequest,​Entry> createEntryCallable()
        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.

        Sample code:

        
         // This snippet has been automatically generated and should be regarded as a code template only.
         // It will require modifications to work:
         // - It may require correct/in-range values for request initialization.
         // - It may require specifying regional endpoints when creating the service client as shown in
         // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
         try (DataCatalogClient dataCatalogClient = DataCatalogClient.create()) {
           CreateEntryRequest request =
               CreateEntryRequest.newBuilder()
                   .setParent(EntryGroupName.of("[PROJECT]", "[LOCATION]", "[ENTRY_GROUP]").toString())
                   .setEntryId("entryId-1591558867")
                   .setEntry(Entry.newBuilder().build())
                   .build();
           ApiFuture<Entry> future = dataCatalogClient.createEntryCallable().futureCall(request);
           // Do something.
           Entry response = future.get();
         }
         
      • updateEntry

        public final Entry updateEntry​(Entry entry)
        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).

        Sample code:

        
         // This snippet has been automatically generated and should be regarded as a code template only.
         // It will require modifications to work:
         // - It may require correct/in-range values for request initialization.
         // - It may require specifying regional endpoints when creating the service client as shown in
         // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
         try (DataCatalogClient dataCatalogClient = DataCatalogClient.create()) {
           Entry entry = Entry.newBuilder().build();
           Entry response = dataCatalogClient.updateEntry(entry);
         }
         
        Parameters:
        entry - Required. The updated entry. The "name" field must be set.
        Throws:
        com.google.api.gax.rpc.ApiException - if the remote call fails
      • updateEntry

        public final Entry updateEntry​(Entry entry,
                                       com.google.protobuf.FieldMask updateMask)
        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).

        Sample code:

        
         // This snippet has been automatically generated and should be regarded as a code template only.
         // It will require modifications to work:
         // - It may require correct/in-range values for request initialization.
         // - It may require specifying regional endpoints when creating the service client as shown in
         // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
         try (DataCatalogClient dataCatalogClient = DataCatalogClient.create()) {
           Entry entry = Entry.newBuilder().build();
           FieldMask updateMask = FieldMask.newBuilder().build();
           Entry response = dataCatalogClient.updateEntry(entry, updateMask);
         }
         
        Parameters:
        entry - Required. The updated entry. The "name" field must be set.
        updateMask - Names of fields whose values to overwrite on an entry.

        If this parameter is absent or empty, all modifiable fields are overwritten. If such fields are non-required and omitted in the request body, their values are emptied.

        The following fields are modifiable:

        • For entries with type `DATA_STREAM`: * `schema`
        • For entries with type `FILESET`: * `schema` * `display_name` * `description` * `gcs_fileset_spec` * `gcs_fileset_spec.file_patterns`
        • For entries with `user_specified_type`: * `schema` * `display_name` * `description` * `user_specified_type` * `user_specified_system` * `linked_resource` * `source_system_timestamps`
        Throws:
        com.google.api.gax.rpc.ApiException - if the remote call fails
      • updateEntry

        public final Entry updateEntry​(UpdateEntryRequest request)
        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).

        Sample code:

        
         // This snippet has been automatically generated and should be regarded as a code template only.
         // It will require modifications to work:
         // - It may require correct/in-range values for request initialization.
         // - It may require specifying regional endpoints when creating the service client as shown in
         // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
         try (DataCatalogClient dataCatalogClient = DataCatalogClient.create()) {
           UpdateEntryRequest request =
               UpdateEntryRequest.newBuilder()
                   .setEntry(Entry.newBuilder().build())
                   .setUpdateMask(FieldMask.newBuilder().build())
                   .build();
           Entry response = dataCatalogClient.updateEntry(request);
         }
         
        Parameters:
        request - The request object containing all of the parameters for the API call.
        Throws:
        com.google.api.gax.rpc.ApiException - if the remote call fails
      • updateEntryCallable

        public final com.google.api.gax.rpc.UnaryCallable<UpdateEntryRequest,​Entry> updateEntryCallable()
        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).

        Sample code:

        
         // This snippet has been automatically generated and should be regarded as a code template only.
         // It will require modifications to work:
         // - It may require correct/in-range values for request initialization.
         // - It may require specifying regional endpoints when creating the service client as shown in
         // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
         try (DataCatalogClient dataCatalogClient = DataCatalogClient.create()) {
           UpdateEntryRequest request =
               UpdateEntryRequest.newBuilder()
                   .setEntry(Entry.newBuilder().build())
                   .setUpdateMask(FieldMask.newBuilder().build())
                   .build();
           ApiFuture<Entry> future = dataCatalogClient.updateEntryCallable().futureCall(request);
           // Do something.
           Entry response = future.get();
         }
         
      • deleteEntry

        public final void deleteEntry​(EntryName name)
        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).

        Sample code:

        
         // This snippet has been automatically generated and should be regarded as a code template only.
         // It will require modifications to work:
         // - It may require correct/in-range values for request initialization.
         // - It may require specifying regional endpoints when creating the service client as shown in
         // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
         try (DataCatalogClient dataCatalogClient = DataCatalogClient.create()) {
           EntryName name = EntryName.of("[PROJECT]", "[LOCATION]", "[ENTRY_GROUP]", "[ENTRY]");
           dataCatalogClient.deleteEntry(name);
         }
         
        Parameters:
        name - Required. The name of the entry. Example:
        • projects/{project_id}/locations/{location}/entryGroups/{entry_group_id}/entries/{entry_id}
        Throws:
        com.google.api.gax.rpc.ApiException - if the remote call fails
      • deleteEntry

        public final void deleteEntry​(String name)
        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).

        Sample code:

        
         // This snippet has been automatically generated and should be regarded as a code template only.
         // It will require modifications to work:
         // - It may require correct/in-range values for request initialization.
         // - It may require specifying regional endpoints when creating the service client as shown in
         // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
         try (DataCatalogClient dataCatalogClient = DataCatalogClient.create()) {
           String name = EntryName.of("[PROJECT]", "[LOCATION]", "[ENTRY_GROUP]", "[ENTRY]").toString();
           dataCatalogClient.deleteEntry(name);
         }
         
        Parameters:
        name - Required. The name of the entry. Example:
        • projects/{project_id}/locations/{location}/entryGroups/{entry_group_id}/entries/{entry_id}
        Throws:
        com.google.api.gax.rpc.ApiException - if the remote call fails
      • deleteEntry

        public final void deleteEntry​(DeleteEntryRequest request)
        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).

        Sample code:

        
         // This snippet has been automatically generated and should be regarded as a code template only.
         // It will require modifications to work:
         // - It may require correct/in-range values for request initialization.
         // - It may require specifying regional endpoints when creating the service client as shown in
         // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
         try (DataCatalogClient dataCatalogClient = DataCatalogClient.create()) {
           DeleteEntryRequest request =
               DeleteEntryRequest.newBuilder()
                   .setName(
                       EntryName.of("[PROJECT]", "[LOCATION]", "[ENTRY_GROUP]", "[ENTRY]").toString())
                   .build();
           dataCatalogClient.deleteEntry(request);
         }
         
        Parameters:
        request - The request object containing all of the parameters for the API call.
        Throws:
        com.google.api.gax.rpc.ApiException - if the remote call fails
      • deleteEntryCallable

        public final com.google.api.gax.rpc.UnaryCallable<DeleteEntryRequest,​com.google.protobuf.Empty> deleteEntryCallable()
        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).

        Sample code:

        
         // This snippet has been automatically generated and should be regarded as a code template only.
         // It will require modifications to work:
         // - It may require correct/in-range values for request initialization.
         // - It may require specifying regional endpoints when creating the service client as shown in
         // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
         try (DataCatalogClient dataCatalogClient = DataCatalogClient.create()) {
           DeleteEntryRequest request =
               DeleteEntryRequest.newBuilder()
                   .setName(
                       EntryName.of("[PROJECT]", "[LOCATION]", "[ENTRY_GROUP]", "[ENTRY]").toString())
                   .build();
           ApiFuture<Empty> future = dataCatalogClient.deleteEntryCallable().futureCall(request);
           // Do something.
           future.get();
         }
         
      • getEntry

        public final Entry getEntry​(EntryName name)
        Gets an entry.

        Sample code:

        
         // This snippet has been automatically generated and should be regarded as a code template only.
         // It will require modifications to work:
         // - It may require correct/in-range values for request initialization.
         // - It may require specifying regional endpoints when creating the service client as shown in
         // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
         try (DataCatalogClient dataCatalogClient = DataCatalogClient.create()) {
           EntryName name = EntryName.of("[PROJECT]", "[LOCATION]", "[ENTRY_GROUP]", "[ENTRY]");
           Entry response = dataCatalogClient.getEntry(name);
         }
         
        Parameters:
        name - Required. The name of the entry. Example:
        • projects/{project_id}/locations/{location}/entryGroups/{entry_group_id}/entries/{entry_id}
        Throws:
        com.google.api.gax.rpc.ApiException - if the remote call fails
      • getEntry

        public final Entry getEntry​(String name)
        Gets an entry.

        Sample code:

        
         // This snippet has been automatically generated and should be regarded as a code template only.
         // It will require modifications to work:
         // - It may require correct/in-range values for request initialization.
         // - It may require specifying regional endpoints when creating the service client as shown in
         // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
         try (DataCatalogClient dataCatalogClient = DataCatalogClient.create()) {
           String name = EntryName.of("[PROJECT]", "[LOCATION]", "[ENTRY_GROUP]", "[ENTRY]").toString();
           Entry response = dataCatalogClient.getEntry(name);
         }
         
        Parameters:
        name - Required. The name of the entry. Example:
        • projects/{project_id}/locations/{location}/entryGroups/{entry_group_id}/entries/{entry_id}
        Throws:
        com.google.api.gax.rpc.ApiException - if the remote call fails
      • getEntry

        public final Entry getEntry​(GetEntryRequest request)
        Gets an entry.

        Sample code:

        
         // This snippet has been automatically generated and should be regarded as a code template only.
         // It will require modifications to work:
         // - It may require correct/in-range values for request initialization.
         // - It may require specifying regional endpoints when creating the service client as shown in
         // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
         try (DataCatalogClient dataCatalogClient = DataCatalogClient.create()) {
           GetEntryRequest request =
               GetEntryRequest.newBuilder()
                   .setName(
                       EntryName.of("[PROJECT]", "[LOCATION]", "[ENTRY_GROUP]", "[ENTRY]").toString())
                   .build();
           Entry response = dataCatalogClient.getEntry(request);
         }
         
        Parameters:
        request - The request object containing all of the parameters for the API call.
        Throws:
        com.google.api.gax.rpc.ApiException - if the remote call fails
      • getEntryCallable

        public final com.google.api.gax.rpc.UnaryCallable<GetEntryRequest,​Entry> getEntryCallable()
        Gets an entry.

        Sample code:

        
         // This snippet has been automatically generated and should be regarded as a code template only.
         // It will require modifications to work:
         // - It may require correct/in-range values for request initialization.
         // - It may require specifying regional endpoints when creating the service client as shown in
         // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
         try (DataCatalogClient dataCatalogClient = DataCatalogClient.create()) {
           GetEntryRequest request =
               GetEntryRequest.newBuilder()
                   .setName(
                       EntryName.of("[PROJECT]", "[LOCATION]", "[ENTRY_GROUP]", "[ENTRY]").toString())
                   .build();
           ApiFuture<Entry> future = dataCatalogClient.getEntryCallable().futureCall(request);
           // Do something.
           Entry response = future.get();
         }
         
      • lookupEntry

        public final Entry lookupEntry​(LookupEntryRequest request)
        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.

        Sample code:

        
         // This snippet has been automatically generated and should be regarded as a code template only.
         // It will require modifications to work:
         // - It may require correct/in-range values for request initialization.
         // - It may require specifying regional endpoints when creating the service client as shown in
         // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
         try (DataCatalogClient dataCatalogClient = DataCatalogClient.create()) {
           LookupEntryRequest request = LookupEntryRequest.newBuilder().build();
           Entry response = dataCatalogClient.lookupEntry(request);
         }
         
        Parameters:
        request - The request object containing all of the parameters for the API call.
        Throws:
        com.google.api.gax.rpc.ApiException - if the remote call fails
      • lookupEntryCallable

        public final com.google.api.gax.rpc.UnaryCallable<LookupEntryRequest,​Entry> lookupEntryCallable()
        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.

        Sample code:

        
         // This snippet has been automatically generated and should be regarded as a code template only.
         // It will require modifications to work:
         // - It may require correct/in-range values for request initialization.
         // - It may require specifying regional endpoints when creating the service client as shown in
         // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
         try (DataCatalogClient dataCatalogClient = DataCatalogClient.create()) {
           LookupEntryRequest request = LookupEntryRequest.newBuilder().build();
           ApiFuture<Entry> future = dataCatalogClient.lookupEntryCallable().futureCall(request);
           // Do something.
           Entry response = future.get();
         }
         
      • listEntries

        public final DataCatalogClient.ListEntriesPagedResponse listEntries​(EntryGroupName parent)
        Lists entries.

        Sample code:

        
         // This snippet has been automatically generated and should be regarded as a code template only.
         // It will require modifications to work:
         // - It may require correct/in-range values for request initialization.
         // - It may require specifying regional endpoints when creating the service client as shown in
         // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
         try (DataCatalogClient dataCatalogClient = DataCatalogClient.create()) {
           EntryGroupName parent = EntryGroupName.of("[PROJECT]", "[LOCATION]", "[ENTRY_GROUP]");
           for (Entry element : dataCatalogClient.listEntries(parent).iterateAll()) {
             // doThingsWith(element);
           }
         }
         
        Parameters:
        parent - Required. The name of the entry group that contains the entries, which can be provided in URL format. Example:
        • projects/{project_id}/locations/{location}/entryGroups/{entry_group_id}
        Throws:
        com.google.api.gax.rpc.ApiException - if the remote call fails
      • listEntries

        public final DataCatalogClient.ListEntriesPagedResponse listEntries​(String parent)
        Lists entries.

        Sample code:

        
         // This snippet has been automatically generated and should be regarded as a code template only.
         // It will require modifications to work:
         // - It may require correct/in-range values for request initialization.
         // - It may require specifying regional endpoints when creating the service client as shown in
         // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
         try (DataCatalogClient dataCatalogClient = DataCatalogClient.create()) {
           String parent = EntryGroupName.of("[PROJECT]", "[LOCATION]", "[ENTRY_GROUP]").toString();
           for (Entry element : dataCatalogClient.listEntries(parent).iterateAll()) {
             // doThingsWith(element);
           }
         }
         
        Parameters:
        parent - Required. The name of the entry group that contains the entries, which can be provided in URL format. Example:
        • projects/{project_id}/locations/{location}/entryGroups/{entry_group_id}
        Throws:
        com.google.api.gax.rpc.ApiException - if the remote call fails
      • listEntries

        public final DataCatalogClient.ListEntriesPagedResponse listEntries​(ListEntriesRequest request)
        Lists entries.

        Sample code:

        
         // This snippet has been automatically generated and should be regarded as a code template only.
         // It will require modifications to work:
         // - It may require correct/in-range values for request initialization.
         // - It may require specifying regional endpoints when creating the service client as shown in
         // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
         try (DataCatalogClient dataCatalogClient = DataCatalogClient.create()) {
           ListEntriesRequest request =
               ListEntriesRequest.newBuilder()
                   .setParent(EntryGroupName.of("[PROJECT]", "[LOCATION]", "[ENTRY_GROUP]").toString())
                   .setPageSize(883849137)
                   .setPageToken("pageToken873572522")
                   .setReadMask(FieldMask.newBuilder().build())
                   .build();
           for (Entry element : dataCatalogClient.listEntries(request).iterateAll()) {
             // doThingsWith(element);
           }
         }
         
        Parameters:
        request - The request object containing all of the parameters for the API call.
        Throws:
        com.google.api.gax.rpc.ApiException - if the remote call fails
      • listEntriesPagedCallable

        public final com.google.api.gax.rpc.UnaryCallable<ListEntriesRequest,​DataCatalogClient.ListEntriesPagedResponse> listEntriesPagedCallable()
        Lists entries.

        Sample code:

        
         // This snippet has been automatically generated and should be regarded as a code template only.
         // It will require modifications to work:
         // - It may require correct/in-range values for request initialization.
         // - It may require specifying regional endpoints when creating the service client as shown in
         // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
         try (DataCatalogClient dataCatalogClient = DataCatalogClient.create()) {
           ListEntriesRequest request =
               ListEntriesRequest.newBuilder()
                   .setParent(EntryGroupName.of("[PROJECT]", "[LOCATION]", "[ENTRY_GROUP]").toString())
                   .setPageSize(883849137)
                   .setPageToken("pageToken873572522")
                   .setReadMask(FieldMask.newBuilder().build())
                   .build();
           ApiFuture<Entry> future = dataCatalogClient.listEntriesPagedCallable().futureCall(request);
           // Do something.
           for (Entry element : future.get().iterateAll()) {
             // doThingsWith(element);
           }
         }
         
      • listEntriesCallable

        public final com.google.api.gax.rpc.UnaryCallable<ListEntriesRequest,​ListEntriesResponse> listEntriesCallable()
        Lists entries.

        Sample code:

        
         // This snippet has been automatically generated and should be regarded as a code template only.
         // It will require modifications to work:
         // - It may require correct/in-range values for request initialization.
         // - It may require specifying regional endpoints when creating the service client as shown in
         // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
         try (DataCatalogClient dataCatalogClient = DataCatalogClient.create()) {
           ListEntriesRequest request =
               ListEntriesRequest.newBuilder()
                   .setParent(EntryGroupName.of("[PROJECT]", "[LOCATION]", "[ENTRY_GROUP]").toString())
                   .setPageSize(883849137)
                   .setPageToken("pageToken873572522")
                   .setReadMask(FieldMask.newBuilder().build())
                   .build();
           while (true) {
             ListEntriesResponse response = dataCatalogClient.listEntriesCallable().call(request);
             for (Entry element : response.getEntriesList()) {
               // doThingsWith(element);
             }
             String nextPageToken = response.getNextPageToken();
             if (!Strings.isNullOrEmpty(nextPageToken)) {
               request = request.toBuilder().setPageToken(nextPageToken).build();
             } else {
               break;
             }
           }
         }
         
      • createTagTemplate

        public final TagTemplate createTagTemplate​(LocationName parent,
                                                   String tagTemplateId,
                                                   TagTemplate tagTemplate)
        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](https://cloud.google.com/data-catalog/docs/concepts/resource-project) for more information).

        Sample code:

        
         // This snippet has been automatically generated and should be regarded as a code template only.
         // It will require modifications to work:
         // - It may require correct/in-range values for request initialization.
         // - It may require specifying regional endpoints when creating the service client as shown in
         // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
         try (DataCatalogClient dataCatalogClient = DataCatalogClient.create()) {
           LocationName parent = LocationName.of("[PROJECT]", "[LOCATION]");
           String tagTemplateId = "tagTemplateId-1438776721";
           TagTemplate tagTemplate = TagTemplate.newBuilder().build();
           TagTemplate response =
               dataCatalogClient.createTagTemplate(parent, tagTemplateId, tagTemplate);
         }
         
        Parameters:
        parent - Required. The name of the project and the template location [region](https://cloud.google.com/data-catalog/docs/concepts/regions.

        Example:

        • projects/{project_id}/locations/us-central1
        tagTemplateId - Required. The id of the tag template to create.
        tagTemplate - Required. The tag template to create.
        Throws:
        com.google.api.gax.rpc.ApiException - if the remote call fails
      • createTagTemplate

        public final TagTemplate createTagTemplate​(String parent,
                                                   String tagTemplateId,
                                                   TagTemplate tagTemplate)
        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](https://cloud.google.com/data-catalog/docs/concepts/resource-project) for more information).

        Sample code:

        
         // This snippet has been automatically generated and should be regarded as a code template only.
         // It will require modifications to work:
         // - It may require correct/in-range values for request initialization.
         // - It may require specifying regional endpoints when creating the service client as shown in
         // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
         try (DataCatalogClient dataCatalogClient = DataCatalogClient.create()) {
           String parent = LocationName.of("[PROJECT]", "[LOCATION]").toString();
           String tagTemplateId = "tagTemplateId-1438776721";
           TagTemplate tagTemplate = TagTemplate.newBuilder().build();
           TagTemplate response =
               dataCatalogClient.createTagTemplate(parent, tagTemplateId, tagTemplate);
         }
         
        Parameters:
        parent - Required. The name of the project and the template location [region](https://cloud.google.com/data-catalog/docs/concepts/regions.

        Example:

        • projects/{project_id}/locations/us-central1
        tagTemplateId - Required. The id of the tag template to create.
        tagTemplate - Required. The tag template to create.
        Throws:
        com.google.api.gax.rpc.ApiException - if the remote call fails
      • createTagTemplate

        public final TagTemplate createTagTemplate​(CreateTagTemplateRequest request)
        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](https://cloud.google.com/data-catalog/docs/concepts/resource-project) for more information).

        Sample code:

        
         // This snippet has been automatically generated and should be regarded as a code template only.
         // It will require modifications to work:
         // - It may require correct/in-range values for request initialization.
         // - It may require specifying regional endpoints when creating the service client as shown in
         // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
         try (DataCatalogClient dataCatalogClient = DataCatalogClient.create()) {
           CreateTagTemplateRequest request =
               CreateTagTemplateRequest.newBuilder()
                   .setParent(LocationName.of("[PROJECT]", "[LOCATION]").toString())
                   .setTagTemplateId("tagTemplateId-1438776721")
                   .setTagTemplate(TagTemplate.newBuilder().build())
                   .build();
           TagTemplate response = dataCatalogClient.createTagTemplate(request);
         }
         
        Parameters:
        request - The request object containing all of the parameters for the API call.
        Throws:
        com.google.api.gax.rpc.ApiException - if the remote call fails
      • createTagTemplateCallable

        public final com.google.api.gax.rpc.UnaryCallable<CreateTagTemplateRequest,​TagTemplate> createTagTemplateCallable()
        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](https://cloud.google.com/data-catalog/docs/concepts/resource-project) for more information).

        Sample code:

        
         // This snippet has been automatically generated and should be regarded as a code template only.
         // It will require modifications to work:
         // - It may require correct/in-range values for request initialization.
         // - It may require specifying regional endpoints when creating the service client as shown in
         // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
         try (DataCatalogClient dataCatalogClient = DataCatalogClient.create()) {
           CreateTagTemplateRequest request =
               CreateTagTemplateRequest.newBuilder()
                   .setParent(LocationName.of("[PROJECT]", "[LOCATION]").toString())
                   .setTagTemplateId("tagTemplateId-1438776721")
                   .setTagTemplate(TagTemplate.newBuilder().build())
                   .build();
           ApiFuture<TagTemplate> future =
               dataCatalogClient.createTagTemplateCallable().futureCall(request);
           // Do something.
           TagTemplate response = future.get();
         }
         
      • getTagTemplate

        public final TagTemplate getTagTemplate​(TagTemplateName name)
        Gets a tag template.

        Sample code:

        
         // This snippet has been automatically generated and should be regarded as a code template only.
         // It will require modifications to work:
         // - It may require correct/in-range values for request initialization.
         // - It may require specifying regional endpoints when creating the service client as shown in
         // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
         try (DataCatalogClient dataCatalogClient = DataCatalogClient.create()) {
           TagTemplateName name = TagTemplateName.of("[PROJECT]", "[LOCATION]", "[TAG_TEMPLATE]");
           TagTemplate response = dataCatalogClient.getTagTemplate(name);
         }
         
        Parameters:
        name - Required. The name of the tag template. Example:
        • projects/{project_id}/locations/{location}/tagTemplates/{tag_template_id}
        Throws:
        com.google.api.gax.rpc.ApiException - if the remote call fails
      • getTagTemplate

        public final TagTemplate getTagTemplate​(String name)
        Gets a tag template.

        Sample code:

        
         // This snippet has been automatically generated and should be regarded as a code template only.
         // It will require modifications to work:
         // - It may require correct/in-range values for request initialization.
         // - It may require specifying regional endpoints when creating the service client as shown in
         // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
         try (DataCatalogClient dataCatalogClient = DataCatalogClient.create()) {
           String name = TagTemplateName.of("[PROJECT]", "[LOCATION]", "[TAG_TEMPLATE]").toString();
           TagTemplate response = dataCatalogClient.getTagTemplate(name);
         }
         
        Parameters:
        name - Required. The name of the tag template. Example:
        • projects/{project_id}/locations/{location}/tagTemplates/{tag_template_id}
        Throws:
        com.google.api.gax.rpc.ApiException - if the remote call fails
      • getTagTemplate

        public final TagTemplate getTagTemplate​(GetTagTemplateRequest request)
        Gets a tag template.

        Sample code:

        
         // This snippet has been automatically generated and should be regarded as a code template only.
         // It will require modifications to work:
         // - It may require correct/in-range values for request initialization.
         // - It may require specifying regional endpoints when creating the service client as shown in
         // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
         try (DataCatalogClient dataCatalogClient = DataCatalogClient.create()) {
           GetTagTemplateRequest request =
               GetTagTemplateRequest.newBuilder()
                   .setName(TagTemplateName.of("[PROJECT]", "[LOCATION]", "[TAG_TEMPLATE]").toString())
                   .build();
           TagTemplate response = dataCatalogClient.getTagTemplate(request);
         }
         
        Parameters:
        request - The request object containing all of the parameters for the API call.
        Throws:
        com.google.api.gax.rpc.ApiException - if the remote call fails
      • getTagTemplateCallable

        public final com.google.api.gax.rpc.UnaryCallable<GetTagTemplateRequest,​TagTemplate> getTagTemplateCallable()
        Gets a tag template.

        Sample code:

        
         // This snippet has been automatically generated and should be regarded as a code template only.
         // It will require modifications to work:
         // - It may require correct/in-range values for request initialization.
         // - It may require specifying regional endpoints when creating the service client as shown in
         // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
         try (DataCatalogClient dataCatalogClient = DataCatalogClient.create()) {
           GetTagTemplateRequest request =
               GetTagTemplateRequest.newBuilder()
                   .setName(TagTemplateName.of("[PROJECT]", "[LOCATION]", "[TAG_TEMPLATE]").toString())
                   .build();
           ApiFuture<TagTemplate> future =
               dataCatalogClient.getTagTemplateCallable().futureCall(request);
           // Do something.
           TagTemplate response = future.get();
         }
         
      • updateTagTemplate

        public final TagTemplate updateTagTemplate​(TagTemplate tagTemplate)
        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).

        Sample code:

        
         // This snippet has been automatically generated and should be regarded as a code template only.
         // It will require modifications to work:
         // - It may require correct/in-range values for request initialization.
         // - It may require specifying regional endpoints when creating the service client as shown in
         // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
         try (DataCatalogClient dataCatalogClient = DataCatalogClient.create()) {
           TagTemplate tagTemplate = TagTemplate.newBuilder().build();
           TagTemplate response = dataCatalogClient.updateTagTemplate(tagTemplate);
         }
         
        Parameters:
        tagTemplate - Required. The template to update. The "name" field must be set.
        Throws:
        com.google.api.gax.rpc.ApiException - if the remote call fails
      • updateTagTemplate

        public final TagTemplate updateTagTemplate​(TagTemplate tagTemplate,
                                                   com.google.protobuf.FieldMask updateMask)
        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).

        Sample code:

        
         // This snippet has been automatically generated and should be regarded as a code template only.
         // It will require modifications to work:
         // - It may require correct/in-range values for request initialization.
         // - It may require specifying regional endpoints when creating the service client as shown in
         // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
         try (DataCatalogClient dataCatalogClient = DataCatalogClient.create()) {
           TagTemplate tagTemplate = TagTemplate.newBuilder().build();
           FieldMask updateMask = FieldMask.newBuilder().build();
           TagTemplate response = dataCatalogClient.updateTagTemplate(tagTemplate, updateMask);
         }
         
        Parameters:
        tagTemplate - Required. The template to update. The "name" field must be set.
        updateMask - Names of fields whose values to overwrite on a tag template. Currently, only `display_name` can be overwritten.

        In general, if this parameter is absent or empty, all modifiable fields are overwritten. If such fields are non-required and omitted in the request body, their values are emptied.

        Throws:
        com.google.api.gax.rpc.ApiException - if the remote call fails
      • updateTagTemplate

        public final TagTemplate updateTagTemplate​(UpdateTagTemplateRequest request)
        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).

        Sample code:

        
         // This snippet has been automatically generated and should be regarded as a code template only.
         // It will require modifications to work:
         // - It may require correct/in-range values for request initialization.
         // - It may require specifying regional endpoints when creating the service client as shown in
         // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
         try (DataCatalogClient dataCatalogClient = DataCatalogClient.create()) {
           UpdateTagTemplateRequest request =
               UpdateTagTemplateRequest.newBuilder()
                   .setTagTemplate(TagTemplate.newBuilder().build())
                   .setUpdateMask(FieldMask.newBuilder().build())
                   .build();
           TagTemplate response = dataCatalogClient.updateTagTemplate(request);
         }
         
        Parameters:
        request - The request object containing all of the parameters for the API call.
        Throws:
        com.google.api.gax.rpc.ApiException - if the remote call fails
      • updateTagTemplateCallable

        public final com.google.api.gax.rpc.UnaryCallable<UpdateTagTemplateRequest,​TagTemplate> updateTagTemplateCallable()
        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).

        Sample code:

        
         // This snippet has been automatically generated and should be regarded as a code template only.
         // It will require modifications to work:
         // - It may require correct/in-range values for request initialization.
         // - It may require specifying regional endpoints when creating the service client as shown in
         // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
         try (DataCatalogClient dataCatalogClient = DataCatalogClient.create()) {
           UpdateTagTemplateRequest request =
               UpdateTagTemplateRequest.newBuilder()
                   .setTagTemplate(TagTemplate.newBuilder().build())
                   .setUpdateMask(FieldMask.newBuilder().build())
                   .build();
           ApiFuture<TagTemplate> future =
               dataCatalogClient.updateTagTemplateCallable().futureCall(request);
           // Do something.
           TagTemplate response = future.get();
         }
         
      • deleteTagTemplate

        public final void deleteTagTemplate​(TagTemplateName name,
                                            boolean force)
        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).

        Sample code:

        
         // This snippet has been automatically generated and should be regarded as a code template only.
         // It will require modifications to work:
         // - It may require correct/in-range values for request initialization.
         // - It may require specifying regional endpoints when creating the service client as shown in
         // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
         try (DataCatalogClient dataCatalogClient = DataCatalogClient.create()) {
           TagTemplateName name = TagTemplateName.of("[PROJECT]", "[LOCATION]", "[TAG_TEMPLATE]");
           boolean force = true;
           dataCatalogClient.deleteTagTemplate(name, force);
         }
         
        Parameters:
        name - Required. The name of the tag template to delete. Example:
        • projects/{project_id}/locations/{location}/tagTemplates/{tag_template_id}
        force - Required. Currently, this field must always be set to `true`. This confirms the deletion of any possible tags using this template. `force = false` will be supported in the future.
        Throws:
        com.google.api.gax.rpc.ApiException - if the remote call fails
      • deleteTagTemplate

        public final void deleteTagTemplate​(String name,
                                            boolean force)
        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).

        Sample code:

        
         // This snippet has been automatically generated and should be regarded as a code template only.
         // It will require modifications to work:
         // - It may require correct/in-range values for request initialization.
         // - It may require specifying regional endpoints when creating the service client as shown in
         // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
         try (DataCatalogClient dataCatalogClient = DataCatalogClient.create()) {
           String name = TagTemplateName.of("[PROJECT]", "[LOCATION]", "[TAG_TEMPLATE]").toString();
           boolean force = true;
           dataCatalogClient.deleteTagTemplate(name, force);
         }
         
        Parameters:
        name - Required. The name of the tag template to delete. Example:
        • projects/{project_id}/locations/{location}/tagTemplates/{tag_template_id}
        force - Required. Currently, this field must always be set to `true`. This confirms the deletion of any possible tags using this template. `force = false` will be supported in the future.
        Throws:
        com.google.api.gax.rpc.ApiException - if the remote call fails
      • deleteTagTemplate

        public final void deleteTagTemplate​(DeleteTagTemplateRequest request)
        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).

        Sample code:

        
         // This snippet has been automatically generated and should be regarded as a code template only.
         // It will require modifications to work:
         // - It may require correct/in-range values for request initialization.
         // - It may require specifying regional endpoints when creating the service client as shown in
         // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
         try (DataCatalogClient dataCatalogClient = DataCatalogClient.create()) {
           DeleteTagTemplateRequest request =
               DeleteTagTemplateRequest.newBuilder()
                   .setName(TagTemplateName.of("[PROJECT]", "[LOCATION]", "[TAG_TEMPLATE]").toString())
                   .setForce(true)
                   .build();
           dataCatalogClient.deleteTagTemplate(request);
         }
         
        Parameters:
        request - The request object containing all of the parameters for the API call.
        Throws:
        com.google.api.gax.rpc.ApiException - if the remote call fails
      • deleteTagTemplateCallable

        public final com.google.api.gax.rpc.UnaryCallable<DeleteTagTemplateRequest,​com.google.protobuf.Empty> deleteTagTemplateCallable()
        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).

        Sample code:

        
         // This snippet has been automatically generated and should be regarded as a code template only.
         // It will require modifications to work:
         // - It may require correct/in-range values for request initialization.
         // - It may require specifying regional endpoints when creating the service client as shown in
         // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
         try (DataCatalogClient dataCatalogClient = DataCatalogClient.create()) {
           DeleteTagTemplateRequest request =
               DeleteTagTemplateRequest.newBuilder()
                   .setName(TagTemplateName.of("[PROJECT]", "[LOCATION]", "[TAG_TEMPLATE]").toString())
                   .setForce(true)
                   .build();
           ApiFuture<Empty> future = dataCatalogClient.deleteTagTemplateCallable().futureCall(request);
           // Do something.
           future.get();
         }
         
      • createTagTemplateField

        public final TagTemplateField createTagTemplateField​(TagTemplateName parent,
                                                             String tagTemplateFieldId,
                                                             TagTemplateField tagTemplateField)
        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](https://cloud.google.com/data-catalog/docs/concepts/resource-project) for more information).

        Sample code:

        
         // This snippet has been automatically generated and should be regarded as a code template only.
         // It will require modifications to work:
         // - It may require correct/in-range values for request initialization.
         // - It may require specifying regional endpoints when creating the service client as shown in
         // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
         try (DataCatalogClient dataCatalogClient = DataCatalogClient.create()) {
           TagTemplateName parent = TagTemplateName.of("[PROJECT]", "[LOCATION]", "[TAG_TEMPLATE]");
           String tagTemplateFieldId = "tagTemplateFieldId-1556835615";
           TagTemplateField tagTemplateField = TagTemplateField.newBuilder().build();
           TagTemplateField response =
               dataCatalogClient.createTagTemplateField(parent, tagTemplateFieldId, tagTemplateField);
         }
         
        Parameters:
        parent - Required. The name of the project and the template location [region](https://cloud.google.com/data-catalog/docs/concepts/regions).

        Example:

        • projects/{project_id}/locations/us-central1/tagTemplates/{tag_template_id}
        tagTemplateFieldId - Required. The ID of the tag template field to create. Field ids can contain letters (both uppercase and lowercase), numbers (0-9), underscores (_) and dashes (-). Field IDs must be at least 1 character long and at most 128 characters long. Field IDs must also be unique within their template.
        tagTemplateField - Required. The tag template field to create.
        Throws:
        com.google.api.gax.rpc.ApiException - if the remote call fails
      • createTagTemplateField

        public final TagTemplateField createTagTemplateField​(String parent,
                                                             String tagTemplateFieldId,
                                                             TagTemplateField tagTemplateField)
        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](https://cloud.google.com/data-catalog/docs/concepts/resource-project) for more information).

        Sample code:

        
         // This snippet has been automatically generated and should be regarded as a code template only.
         // It will require modifications to work:
         // - It may require correct/in-range values for request initialization.
         // - It may require specifying regional endpoints when creating the service client as shown in
         // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
         try (DataCatalogClient dataCatalogClient = DataCatalogClient.create()) {
           String parent = TagTemplateName.of("[PROJECT]", "[LOCATION]", "[TAG_TEMPLATE]").toString();
           String tagTemplateFieldId = "tagTemplateFieldId-1556835615";
           TagTemplateField tagTemplateField = TagTemplateField.newBuilder().build();
           TagTemplateField response =
               dataCatalogClient.createTagTemplateField(parent, tagTemplateFieldId, tagTemplateField);
         }
         
        Parameters:
        parent - Required. The name of the project and the template location [region](https://cloud.google.com/data-catalog/docs/concepts/regions).

        Example:

        • projects/{project_id}/locations/us-central1/tagTemplates/{tag_template_id}
        tagTemplateFieldId - Required. The ID of the tag template field to create. Field ids can contain letters (both uppercase and lowercase), numbers (0-9), underscores (_) and dashes (-). Field IDs must be at least 1 character long and at most 128 characters long. Field IDs must also be unique within their template.
        tagTemplateField - Required. The tag template field to create.
        Throws:
        com.google.api.gax.rpc.ApiException - if the remote call fails
      • createTagTemplateField

        public final TagTemplateField createTagTemplateField​(CreateTagTemplateFieldRequest request)
        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](https://cloud.google.com/data-catalog/docs/concepts/resource-project) for more information).

        Sample code:

        
         // This snippet has been automatically generated and should be regarded as a code template only.
         // It will require modifications to work:
         // - It may require correct/in-range values for request initialization.
         // - It may require specifying regional endpoints when creating the service client as shown in
         // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
         try (DataCatalogClient dataCatalogClient = DataCatalogClient.create()) {
           CreateTagTemplateFieldRequest request =
               CreateTagTemplateFieldRequest.newBuilder()
                   .setParent(TagTemplateName.of("[PROJECT]", "[LOCATION]", "[TAG_TEMPLATE]").toString())
                   .setTagTemplateFieldId("tagTemplateFieldId-1556835615")
                   .setTagTemplateField(TagTemplateField.newBuilder().build())
                   .build();
           TagTemplateField response = dataCatalogClient.createTagTemplateField(request);
         }
         
        Parameters:
        request - The request object containing all of the parameters for the API call.
        Throws:
        com.google.api.gax.rpc.ApiException - if the remote call fails
      • createTagTemplateFieldCallable

        public final com.google.api.gax.rpc.UnaryCallable<CreateTagTemplateFieldRequest,​TagTemplateField> createTagTemplateFieldCallable()
        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](https://cloud.google.com/data-catalog/docs/concepts/resource-project) for more information).

        Sample code:

        
         // This snippet has been automatically generated and should be regarded as a code template only.
         // It will require modifications to work:
         // - It may require correct/in-range values for request initialization.
         // - It may require specifying regional endpoints when creating the service client as shown in
         // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
         try (DataCatalogClient dataCatalogClient = DataCatalogClient.create()) {
           CreateTagTemplateFieldRequest request =
               CreateTagTemplateFieldRequest.newBuilder()
                   .setParent(TagTemplateName.of("[PROJECT]", "[LOCATION]", "[TAG_TEMPLATE]").toString())
                   .setTagTemplateFieldId("tagTemplateFieldId-1556835615")
                   .setTagTemplateField(TagTemplateField.newBuilder().build())
                   .build();
           ApiFuture<TagTemplateField> future =
               dataCatalogClient.createTagTemplateFieldCallable().futureCall(request);
           // Do something.
           TagTemplateField response = future.get();
         }
         
      • updateTagTemplateField

        public final TagTemplateField updateTagTemplateField​(TagTemplateFieldName name,
                                                             TagTemplateField tagTemplateField)
        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).

        Sample code:

        
         // This snippet has been automatically generated and should be regarded as a code template only.
         // It will require modifications to work:
         // - It may require correct/in-range values for request initialization.
         // - It may require specifying regional endpoints when creating the service client as shown in
         // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
         try (DataCatalogClient dataCatalogClient = DataCatalogClient.create()) {
           TagTemplateFieldName name =
               TagTemplateFieldName.of("[PROJECT]", "[LOCATION]", "[TAG_TEMPLATE]", "[FIELD]");
           TagTemplateField tagTemplateField = TagTemplateField.newBuilder().build();
           TagTemplateField response = dataCatalogClient.updateTagTemplateField(name, tagTemplateField);
         }
         
        Parameters:
        name - Required. The name of the tag template field. Example:
        • projects/{project_id}/locations/{location}/tagTemplates/{tag_template_id}/fields/{tag_template_field_id}
        tagTemplateField - Required. The template to update.
        Throws:
        com.google.api.gax.rpc.ApiException - if the remote call fails
      • updateTagTemplateField

        public final TagTemplateField updateTagTemplateField​(String name,
                                                             TagTemplateField tagTemplateField)
        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).

        Sample code:

        
         // This snippet has been automatically generated and should be regarded as a code template only.
         // It will require modifications to work:
         // - It may require correct/in-range values for request initialization.
         // - It may require specifying regional endpoints when creating the service client as shown in
         // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
         try (DataCatalogClient dataCatalogClient = DataCatalogClient.create()) {
           String name =
               TagTemplateFieldName.of("[PROJECT]", "[LOCATION]", "[TAG_TEMPLATE]", "[FIELD]")
                   .toString();
           TagTemplateField tagTemplateField = TagTemplateField.newBuilder().build();
           TagTemplateField response = dataCatalogClient.updateTagTemplateField(name, tagTemplateField);
         }
         
        Parameters:
        name - Required. The name of the tag template field. Example:
        • projects/{project_id}/locations/{location}/tagTemplates/{tag_template_id}/fields/{tag_template_field_id}
        tagTemplateField - Required. The template to update.
        Throws:
        com.google.api.gax.rpc.ApiException - if the remote call fails
      • updateTagTemplateField

        public final TagTemplateField updateTagTemplateField​(TagTemplateFieldName name,
                                                             TagTemplateField tagTemplateField,
                                                             com.google.protobuf.FieldMask updateMask)
        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).

        Sample code:

        
         // This snippet has been automatically generated and should be regarded as a code template only.
         // It will require modifications to work:
         // - It may require correct/in-range values for request initialization.
         // - It may require specifying regional endpoints when creating the service client as shown in
         // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
         try (DataCatalogClient dataCatalogClient = DataCatalogClient.create()) {
           TagTemplateFieldName name =
               TagTemplateFieldName.of("[PROJECT]", "[LOCATION]", "[TAG_TEMPLATE]", "[FIELD]");
           TagTemplateField tagTemplateField = TagTemplateField.newBuilder().build();
           FieldMask updateMask = FieldMask.newBuilder().build();
           TagTemplateField response =
               dataCatalogClient.updateTagTemplateField(name, tagTemplateField, updateMask);
         }
         
        Parameters:
        name - Required. The name of the tag template field. Example:
        • projects/{project_id}/locations/{location}/tagTemplates/{tag_template_id}/fields/{tag_template_field_id}
        tagTemplateField - Required. The template to update.
        updateMask - Optional. Names of fields whose values to overwrite on an individual field of a tag template. The following fields are modifiable:

        * `display_name` * `type.enum_type` * `is_required`

        If this parameter is absent or empty, all modifiable fields are overwritten. If such fields are non-required and omitted in the request body, their values are emptied with one exception: when updating an enum type, the provided values are merged with the existing values. Therefore, enum values can only be added, existing enum values cannot be deleted or renamed.

        Additionally, updating a template field from optional to required is

        • not* allowed.
        Throws:
        com.google.api.gax.rpc.ApiException - if the remote call fails
      • updateTagTemplateField

        public final TagTemplateField updateTagTemplateField​(String name,
                                                             TagTemplateField tagTemplateField,
                                                             com.google.protobuf.FieldMask updateMask)
        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).

        Sample code:

        
         // This snippet has been automatically generated and should be regarded as a code template only.
         // It will require modifications to work:
         // - It may require correct/in-range values for request initialization.
         // - It may require specifying regional endpoints when creating the service client as shown in
         // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
         try (DataCatalogClient dataCatalogClient = DataCatalogClient.create()) {
           String name =
               TagTemplateFieldName.of("[PROJECT]", "[LOCATION]", "[TAG_TEMPLATE]", "[FIELD]")
                   .toString();
           TagTemplateField tagTemplateField = TagTemplateField.newBuilder().build();
           FieldMask updateMask = FieldMask.newBuilder().build();
           TagTemplateField response =
               dataCatalogClient.updateTagTemplateField(name, tagTemplateField, updateMask);
         }
         
        Parameters:
        name - Required. The name of the tag template field. Example:
        • projects/{project_id}/locations/{location}/tagTemplates/{tag_template_id}/fields/{tag_template_field_id}
        tagTemplateField - Required. The template to update.
        updateMask - Optional. Names of fields whose values to overwrite on an individual field of a tag template. The following fields are modifiable:

        * `display_name` * `type.enum_type` * `is_required`

        If this parameter is absent or empty, all modifiable fields are overwritten. If such fields are non-required and omitted in the request body, their values are emptied with one exception: when updating an enum type, the provided values are merged with the existing values. Therefore, enum values can only be added, existing enum values cannot be deleted or renamed.

        Additionally, updating a template field from optional to required is

        • not* allowed.
        Throws:
        com.google.api.gax.rpc.ApiException - if the remote call fails
      • updateTagTemplateField

        public final TagTemplateField updateTagTemplateField​(UpdateTagTemplateFieldRequest request)
        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).

        Sample code:

        
         // This snippet has been automatically generated and should be regarded as a code template only.
         // It will require modifications to work:
         // - It may require correct/in-range values for request initialization.
         // - It may require specifying regional endpoints when creating the service client as shown in
         // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
         try (DataCatalogClient dataCatalogClient = DataCatalogClient.create()) {
           UpdateTagTemplateFieldRequest request =
               UpdateTagTemplateFieldRequest.newBuilder()
                   .setName(
                       TagTemplateFieldName.of("[PROJECT]", "[LOCATION]", "[TAG_TEMPLATE]", "[FIELD]")
                           .toString())
                   .setTagTemplateField(TagTemplateField.newBuilder().build())
                   .setUpdateMask(FieldMask.newBuilder().build())
                   .build();
           TagTemplateField response = dataCatalogClient.updateTagTemplateField(request);
         }
         
        Parameters:
        request - The request object containing all of the parameters for the API call.
        Throws:
        com.google.api.gax.rpc.ApiException - if the remote call fails
      • updateTagTemplateFieldCallable

        public final com.google.api.gax.rpc.UnaryCallable<UpdateTagTemplateFieldRequest,​TagTemplateField> updateTagTemplateFieldCallable()
        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).

        Sample code:

        
         // This snippet has been automatically generated and should be regarded as a code template only.
         // It will require modifications to work:
         // - It may require correct/in-range values for request initialization.
         // - It may require specifying regional endpoints when creating the service client as shown in
         // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
         try (DataCatalogClient dataCatalogClient = DataCatalogClient.create()) {
           UpdateTagTemplateFieldRequest request =
               UpdateTagTemplateFieldRequest.newBuilder()
                   .setName(
                       TagTemplateFieldName.of("[PROJECT]", "[LOCATION]", "[TAG_TEMPLATE]", "[FIELD]")
                           .toString())
                   .setTagTemplateField(TagTemplateField.newBuilder().build())
                   .setUpdateMask(FieldMask.newBuilder().build())
                   .build();
           ApiFuture<TagTemplateField> future =
               dataCatalogClient.updateTagTemplateFieldCallable().futureCall(request);
           // Do something.
           TagTemplateField response = future.get();
         }
         
      • renameTagTemplateField

        public final TagTemplateField renameTagTemplateField​(TagTemplateFieldName name,
                                                             String newTagTemplateFieldId)
        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](https://cloud.google.com/data-catalog/docs/concepts/resource-project) for more information).

        Sample code:

        
         // This snippet has been automatically generated and should be regarded as a code template only.
         // It will require modifications to work:
         // - It may require correct/in-range values for request initialization.
         // - It may require specifying regional endpoints when creating the service client as shown in
         // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
         try (DataCatalogClient dataCatalogClient = DataCatalogClient.create()) {
           TagTemplateFieldName name =
               TagTemplateFieldName.of("[PROJECT]", "[LOCATION]", "[TAG_TEMPLATE]", "[FIELD]");
           String newTagTemplateFieldId = "newTagTemplateFieldId2008993953";
           TagTemplateField response =
               dataCatalogClient.renameTagTemplateField(name, newTagTemplateFieldId);
         }
         
        Parameters:
        name - Required. The name of the tag template. Example:
        • projects/{project_id}/locations/{location}/tagTemplates/{tag_template_id}/fields/{tag_template_field_id}
        newTagTemplateFieldId - Required. The new ID of this tag template field. For example, `my_new_field`.
        Throws:
        com.google.api.gax.rpc.ApiException - if the remote call fails
      • renameTagTemplateField

        public final TagTemplateField renameTagTemplateField​(String name,
                                                             String newTagTemplateFieldId)
        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](https://cloud.google.com/data-catalog/docs/concepts/resource-project) for more information).

        Sample code:

        
         // This snippet has been automatically generated and should be regarded as a code template only.
         // It will require modifications to work:
         // - It may require correct/in-range values for request initialization.
         // - It may require specifying regional endpoints when creating the service client as shown in
         // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
         try (DataCatalogClient dataCatalogClient = DataCatalogClient.create()) {
           String name =
               TagTemplateFieldName.of("[PROJECT]", "[LOCATION]", "[TAG_TEMPLATE]", "[FIELD]")
                   .toString();
           String newTagTemplateFieldId = "newTagTemplateFieldId2008993953";
           TagTemplateField response =
               dataCatalogClient.renameTagTemplateField(name, newTagTemplateFieldId);
         }
         
        Parameters:
        name - Required. The name of the tag template. Example:
        • projects/{project_id}/locations/{location}/tagTemplates/{tag_template_id}/fields/{tag_template_field_id}
        newTagTemplateFieldId - Required. The new ID of this tag template field. For example, `my_new_field`.
        Throws:
        com.google.api.gax.rpc.ApiException - if the remote call fails
      • renameTagTemplateField

        public final TagTemplateField renameTagTemplateField​(RenameTagTemplateFieldRequest request)
        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](https://cloud.google.com/data-catalog/docs/concepts/resource-project) for more information).

        Sample code:

        
         // This snippet has been automatically generated and should be regarded as a code template only.
         // It will require modifications to work:
         // - It may require correct/in-range values for request initialization.
         // - It may require specifying regional endpoints when creating the service client as shown in
         // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
         try (DataCatalogClient dataCatalogClient = DataCatalogClient.create()) {
           RenameTagTemplateFieldRequest request =
               RenameTagTemplateFieldRequest.newBuilder()
                   .setName(
                       TagTemplateFieldName.of("[PROJECT]", "[LOCATION]", "[TAG_TEMPLATE]", "[FIELD]")
                           .toString())
                   .setNewTagTemplateFieldId("newTagTemplateFieldId2008993953")
                   .build();
           TagTemplateField response = dataCatalogClient.renameTagTemplateField(request);
         }
         
        Parameters:
        request - The request object containing all of the parameters for the API call.
        Throws:
        com.google.api.gax.rpc.ApiException - if the remote call fails
      • renameTagTemplateFieldCallable

        public final com.google.api.gax.rpc.UnaryCallable<RenameTagTemplateFieldRequest,​TagTemplateField> renameTagTemplateFieldCallable()
        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](https://cloud.google.com/data-catalog/docs/concepts/resource-project) for more information).

        Sample code:

        
         // This snippet has been automatically generated and should be regarded as a code template only.
         // It will require modifications to work:
         // - It may require correct/in-range values for request initialization.
         // - It may require specifying regional endpoints when creating the service client as shown in
         // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
         try (DataCatalogClient dataCatalogClient = DataCatalogClient.create()) {
           RenameTagTemplateFieldRequest request =
               RenameTagTemplateFieldRequest.newBuilder()
                   .setName(
                       TagTemplateFieldName.of("[PROJECT]", "[LOCATION]", "[TAG_TEMPLATE]", "[FIELD]")
                           .toString())
                   .setNewTagTemplateFieldId("newTagTemplateFieldId2008993953")
                   .build();
           ApiFuture<TagTemplateField> future =
               dataCatalogClient.renameTagTemplateFieldCallable().futureCall(request);
           // Do something.
           TagTemplateField response = future.get();
         }
         
      • renameTagTemplateFieldEnumValue

        public final TagTemplateField renameTagTemplateFieldEnumValue​(TagTemplateFieldEnumValueName name,
                                                                      String newEnumValueDisplayName)
        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.

        Sample code:

        
         // This snippet has been automatically generated and should be regarded as a code template only.
         // It will require modifications to work:
         // - It may require correct/in-range values for request initialization.
         // - It may require specifying regional endpoints when creating the service client as shown in
         // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
         try (DataCatalogClient dataCatalogClient = DataCatalogClient.create()) {
           TagTemplateFieldEnumValueName name =
               TagTemplateFieldEnumValueName.of(
                   "[PROJECT]",
                   "[LOCATION]",
                   "[TAG_TEMPLATE]",
                   "[TAG_TEMPLATE_FIELD_ID]",
                   "[ENUM_VALUE_DISPLAY_NAME]");
           String newEnumValueDisplayName = "newEnumValueDisplayName-1119629027";
           TagTemplateField response =
               dataCatalogClient.renameTagTemplateFieldEnumValue(name, newEnumValueDisplayName);
         }
         
        Parameters:
        name - Required. The name of the enum field value. Example:
        • projects/{project_id}/locations/{location}/tagTemplates/{tag_template_id}/fields/{tag_template_field_id}/enumValues/{enum_value_display_name}
        newEnumValueDisplayName - Required. The new display name of the enum value. For example, `my_new_enum_value`.
        Throws:
        com.google.api.gax.rpc.ApiException - if the remote call fails
      • renameTagTemplateFieldEnumValue

        public final TagTemplateField renameTagTemplateFieldEnumValue​(String name,
                                                                      String newEnumValueDisplayName)
        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.

        Sample code:

        
         // This snippet has been automatically generated and should be regarded as a code template only.
         // It will require modifications to work:
         // - It may require correct/in-range values for request initialization.
         // - It may require specifying regional endpoints when creating the service client as shown in
         // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
         try (DataCatalogClient dataCatalogClient = DataCatalogClient.create()) {
           String name =
               TagTemplateFieldEnumValueName.of(
                       "[PROJECT]",
                       "[LOCATION]",
                       "[TAG_TEMPLATE]",
                       "[TAG_TEMPLATE_FIELD_ID]",
                       "[ENUM_VALUE_DISPLAY_NAME]")
                   .toString();
           String newEnumValueDisplayName = "newEnumValueDisplayName-1119629027";
           TagTemplateField response =
               dataCatalogClient.renameTagTemplateFieldEnumValue(name, newEnumValueDisplayName);
         }
         
        Parameters:
        name - Required. The name of the enum field value. Example:
        • projects/{project_id}/locations/{location}/tagTemplates/{tag_template_id}/fields/{tag_template_field_id}/enumValues/{enum_value_display_name}
        newEnumValueDisplayName - Required. The new display name of the enum value. For example, `my_new_enum_value`.
        Throws:
        com.google.api.gax.rpc.ApiException - if the remote call fails
      • renameTagTemplateFieldEnumValue

        public final TagTemplateField renameTagTemplateFieldEnumValue​(RenameTagTemplateFieldEnumValueRequest request)
        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.

        Sample code:

        
         // This snippet has been automatically generated and should be regarded as a code template only.
         // It will require modifications to work:
         // - It may require correct/in-range values for request initialization.
         // - It may require specifying regional endpoints when creating the service client as shown in
         // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
         try (DataCatalogClient dataCatalogClient = DataCatalogClient.create()) {
           RenameTagTemplateFieldEnumValueRequest request =
               RenameTagTemplateFieldEnumValueRequest.newBuilder()
                   .setName(
                       TagTemplateFieldEnumValueName.of(
                               "[PROJECT]",
                               "[LOCATION]",
                               "[TAG_TEMPLATE]",
                               "[TAG_TEMPLATE_FIELD_ID]",
                               "[ENUM_VALUE_DISPLAY_NAME]")
                           .toString())
                   .setNewEnumValueDisplayName("newEnumValueDisplayName-1119629027")
                   .build();
           TagTemplateField response = dataCatalogClient.renameTagTemplateFieldEnumValue(request);
         }
         
        Parameters:
        request - The request object containing all of the parameters for the API call.
        Throws:
        com.google.api.gax.rpc.ApiException - if the remote call fails
      • renameTagTemplateFieldEnumValueCallable

        public final com.google.api.gax.rpc.UnaryCallable<RenameTagTemplateFieldEnumValueRequest,​TagTemplateField> renameTagTemplateFieldEnumValueCallable()
        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.

        Sample code:

        
         // This snippet has been automatically generated and should be regarded as a code template only.
         // It will require modifications to work:
         // - It may require correct/in-range values for request initialization.
         // - It may require specifying regional endpoints when creating the service client as shown in
         // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
         try (DataCatalogClient dataCatalogClient = DataCatalogClient.create()) {
           RenameTagTemplateFieldEnumValueRequest request =
               RenameTagTemplateFieldEnumValueRequest.newBuilder()
                   .setName(
                       TagTemplateFieldEnumValueName.of(
                               "[PROJECT]",
                               "[LOCATION]",
                               "[TAG_TEMPLATE]",
                               "[TAG_TEMPLATE_FIELD_ID]",
                               "[ENUM_VALUE_DISPLAY_NAME]")
                           .toString())
                   .setNewEnumValueDisplayName("newEnumValueDisplayName-1119629027")
                   .build();
           ApiFuture<TagTemplateField> future =
               dataCatalogClient.renameTagTemplateFieldEnumValueCallable().futureCall(request);
           // Do something.
           TagTemplateField response = future.get();
         }
         
      • deleteTagTemplateField

        public final void deleteTagTemplateField​(TagTemplateFieldName name,
                                                 boolean force)
        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).

        Sample code:

        
         // This snippet has been automatically generated and should be regarded as a code template only.
         // It will require modifications to work:
         // - It may require correct/in-range values for request initialization.
         // - It may require specifying regional endpoints when creating the service client as shown in
         // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
         try (DataCatalogClient dataCatalogClient = DataCatalogClient.create()) {
           TagTemplateFieldName name =
               TagTemplateFieldName.of("[PROJECT]", "[LOCATION]", "[TAG_TEMPLATE]", "[FIELD]");
           boolean force = true;
           dataCatalogClient.deleteTagTemplateField(name, force);
         }
         
        Parameters:
        name - Required. The name of the tag template field to delete. Example:
        • projects/{project_id}/locations/{location}/tagTemplates/{tag_template_id}/fields/{tag_template_field_id}
        force - Required. Currently, this field must always be set to `true`. This confirms the deletion of this field from any tags using this field. `force = false` will be supported in the future.
        Throws:
        com.google.api.gax.rpc.ApiException - if the remote call fails
      • deleteTagTemplateField

        public final void deleteTagTemplateField​(String name,
                                                 boolean force)
        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).

        Sample code:

        
         // This snippet has been automatically generated and should be regarded as a code template only.
         // It will require modifications to work:
         // - It may require correct/in-range values for request initialization.
         // - It may require specifying regional endpoints when creating the service client as shown in
         // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
         try (DataCatalogClient dataCatalogClient = DataCatalogClient.create()) {
           String name =
               TagTemplateFieldName.of("[PROJECT]", "[LOCATION]", "[TAG_TEMPLATE]", "[FIELD]")
                   .toString();
           boolean force = true;
           dataCatalogClient.deleteTagTemplateField(name, force);
         }
         
        Parameters:
        name - Required. The name of the tag template field to delete. Example:
        • projects/{project_id}/locations/{location}/tagTemplates/{tag_template_id}/fields/{tag_template_field_id}
        force - Required. Currently, this field must always be set to `true`. This confirms the deletion of this field from any tags using this field. `force = false` will be supported in the future.
        Throws:
        com.google.api.gax.rpc.ApiException - if the remote call fails
      • deleteTagTemplateField

        public final void deleteTagTemplateField​(DeleteTagTemplateFieldRequest request)
        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).

        Sample code:

        
         // This snippet has been automatically generated and should be regarded as a code template only.
         // It will require modifications to work:
         // - It may require correct/in-range values for request initialization.
         // - It may require specifying regional endpoints when creating the service client as shown in
         // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
         try (DataCatalogClient dataCatalogClient = DataCatalogClient.create()) {
           DeleteTagTemplateFieldRequest request =
               DeleteTagTemplateFieldRequest.newBuilder()
                   .setName(
                       TagTemplateFieldName.of("[PROJECT]", "[LOCATION]", "[TAG_TEMPLATE]", "[FIELD]")
                           .toString())
                   .setForce(true)
                   .build();
           dataCatalogClient.deleteTagTemplateField(request);
         }
         
        Parameters:
        request - The request object containing all of the parameters for the API call.
        Throws:
        com.google.api.gax.rpc.ApiException - if the remote call fails
      • deleteTagTemplateFieldCallable

        public final com.google.api.gax.rpc.UnaryCallable<DeleteTagTemplateFieldRequest,​com.google.protobuf.Empty> deleteTagTemplateFieldCallable()
        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).

        Sample code:

        
         // This snippet has been automatically generated and should be regarded as a code template only.
         // It will require modifications to work:
         // - It may require correct/in-range values for request initialization.
         // - It may require specifying regional endpoints when creating the service client as shown in
         // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
         try (DataCatalogClient dataCatalogClient = DataCatalogClient.create()) {
           DeleteTagTemplateFieldRequest request =
               DeleteTagTemplateFieldRequest.newBuilder()
                   .setName(
                       TagTemplateFieldName.of("[PROJECT]", "[LOCATION]", "[TAG_TEMPLATE]", "[FIELD]")
                           .toString())
                   .setForce(true)
                   .build();
           ApiFuture<Empty> future =
               dataCatalogClient.deleteTagTemplateFieldCallable().futureCall(request);
           // Do something.
           future.get();
         }
         
      • createTag

        public final Tag createTag​(EntryName parent,
                                   Tag tag)
        Creates a tag on an [Entry][google.cloud.datacatalog.v1beta1.Entry]. Note: The project identified by the `parent` parameter for the [tag](https://cloud.google.com/data-catalog/docs/reference/rest/v1beta1/projects.locations.entryGroups.entries.tags/create#path-parameters) and the [tag template](https://cloud.google.com/data-catalog/docs/reference/rest/v1beta1/projects.locations.tagTemplates/create#path-parameters) used to create the tag must be from the same organization.

        Sample code:

        
         // This snippet has been automatically generated and should be regarded as a code template only.
         // It will require modifications to work:
         // - It may require correct/in-range values for request initialization.
         // - It may require specifying regional endpoints when creating the service client as shown in
         // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
         try (DataCatalogClient dataCatalogClient = DataCatalogClient.create()) {
           EntryName parent = EntryName.of("[PROJECT]", "[LOCATION]", "[ENTRY_GROUP]", "[ENTRY]");
           Tag tag = Tag.newBuilder().build();
           Tag response = dataCatalogClient.createTag(parent, tag);
         }
         
        Parameters:
        parent - Required. The name of the resource to attach this tag to. Tags can be attached to Entries. Example:
        • projects/{project_id}/locations/{location}/entryGroups/{entry_group_id}/entries/{entry_id}

        Note that this Tag and its child resources may not actually be stored in the location in this name.

        tag - Required. The tag to create.
        Throws:
        com.google.api.gax.rpc.ApiException - if the remote call fails
      • createTag

        public final Tag createTag​(String parent,
                                   Tag tag)
        Creates a tag on an [Entry][google.cloud.datacatalog.v1beta1.Entry]. Note: The project identified by the `parent` parameter for the [tag](https://cloud.google.com/data-catalog/docs/reference/rest/v1beta1/projects.locations.entryGroups.entries.tags/create#path-parameters) and the [tag template](https://cloud.google.com/data-catalog/docs/reference/rest/v1beta1/projects.locations.tagTemplates/create#path-parameters) used to create the tag must be from the same organization.

        Sample code:

        
         // This snippet has been automatically generated and should be regarded as a code template only.
         // It will require modifications to work:
         // - It may require correct/in-range values for request initialization.
         // - It may require specifying regional endpoints when creating the service client as shown in
         // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
         try (DataCatalogClient dataCatalogClient = DataCatalogClient.create()) {
           String parent =
               EntryName.of("[PROJECT]", "[LOCATION]", "[ENTRY_GROUP]", "[ENTRY]").toString();
           Tag tag = Tag.newBuilder().build();
           Tag response = dataCatalogClient.createTag(parent, tag);
         }
         
        Parameters:
        parent - Required. The name of the resource to attach this tag to. Tags can be attached to Entries. Example:
        • projects/{project_id}/locations/{location}/entryGroups/{entry_group_id}/entries/{entry_id}

        Note that this Tag and its child resources may not actually be stored in the location in this name.

        tag - Required. The tag to create.
        Throws:
        com.google.api.gax.rpc.ApiException - if the remote call fails
      • createTag

        public final Tag createTag​(CreateTagRequest request)
        Creates a tag on an [Entry][google.cloud.datacatalog.v1beta1.Entry]. Note: The project identified by the `parent` parameter for the [tag](https://cloud.google.com/data-catalog/docs/reference/rest/v1beta1/projects.locations.entryGroups.entries.tags/create#path-parameters) and the [tag template](https://cloud.google.com/data-catalog/docs/reference/rest/v1beta1/projects.locations.tagTemplates/create#path-parameters) used to create the tag must be from the same organization.

        Sample code:

        
         // This snippet has been automatically generated and should be regarded as a code template only.
         // It will require modifications to work:
         // - It may require correct/in-range values for request initialization.
         // - It may require specifying regional endpoints when creating the service client as shown in
         // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
         try (DataCatalogClient dataCatalogClient = DataCatalogClient.create()) {
           CreateTagRequest request =
               CreateTagRequest.newBuilder()
                   .setParent(
                       EntryName.of("[PROJECT]", "[LOCATION]", "[ENTRY_GROUP]", "[ENTRY]").toString())
                   .setTag(Tag.newBuilder().build())
                   .build();
           Tag response = dataCatalogClient.createTag(request);
         }
         
        Parameters:
        request - The request object containing all of the parameters for the API call.
        Throws:
        com.google.api.gax.rpc.ApiException - if the remote call fails
      • createTagCallable

        public final com.google.api.gax.rpc.UnaryCallable<CreateTagRequest,​Tag> createTagCallable()
        Creates a tag on an [Entry][google.cloud.datacatalog.v1beta1.Entry]. Note: The project identified by the `parent` parameter for the [tag](https://cloud.google.com/data-catalog/docs/reference/rest/v1beta1/projects.locations.entryGroups.entries.tags/create#path-parameters) and the [tag template](https://cloud.google.com/data-catalog/docs/reference/rest/v1beta1/projects.locations.tagTemplates/create#path-parameters) used to create the tag must be from the same organization.

        Sample code:

        
         // This snippet has been automatically generated and should be regarded as a code template only.
         // It will require modifications to work:
         // - It may require correct/in-range values for request initialization.
         // - It may require specifying regional endpoints when creating the service client as shown in
         // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
         try (DataCatalogClient dataCatalogClient = DataCatalogClient.create()) {
           CreateTagRequest request =
               CreateTagRequest.newBuilder()
                   .setParent(
                       EntryName.of("[PROJECT]", "[LOCATION]", "[ENTRY_GROUP]", "[ENTRY]").toString())
                   .setTag(Tag.newBuilder().build())
                   .build();
           ApiFuture<Tag> future = dataCatalogClient.createTagCallable().futureCall(request);
           // Do something.
           Tag response = future.get();
         }
         
      • updateTag

        public final Tag updateTag​(Tag tag)
        Updates an existing tag.

        Sample code:

        
         // This snippet has been automatically generated and should be regarded as a code template only.
         // It will require modifications to work:
         // - It may require correct/in-range values for request initialization.
         // - It may require specifying regional endpoints when creating the service client as shown in
         // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
         try (DataCatalogClient dataCatalogClient = DataCatalogClient.create()) {
           Tag tag = Tag.newBuilder().build();
           Tag response = dataCatalogClient.updateTag(tag);
         }
         
        Parameters:
        tag - Required. The updated tag. The "name" field must be set.
        Throws:
        com.google.api.gax.rpc.ApiException - if the remote call fails
      • updateTag

        public final Tag updateTag​(Tag tag,
                                   com.google.protobuf.FieldMask updateMask)
        Updates an existing tag.

        Sample code:

        
         // This snippet has been automatically generated and should be regarded as a code template only.
         // It will require modifications to work:
         // - It may require correct/in-range values for request initialization.
         // - It may require specifying regional endpoints when creating the service client as shown in
         // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
         try (DataCatalogClient dataCatalogClient = DataCatalogClient.create()) {
           Tag tag = Tag.newBuilder().build();
           FieldMask updateMask = FieldMask.newBuilder().build();
           Tag response = dataCatalogClient.updateTag(tag, updateMask);
         }
         
        Parameters:
        tag - Required. The updated tag. The "name" field must be set.
        updateMask - Note: Currently, this parameter can only take `"fields"` as value.

        Names of fields whose values to overwrite on a tag. Currently, a tag has the only modifiable field with the name `fields`.

        In general, if this parameter is absent or empty, all modifiable fields are overwritten. If such fields are non-required and omitted in the request body, their values are emptied.

        Throws:
        com.google.api.gax.rpc.ApiException - if the remote call fails
      • updateTag

        public final Tag updateTag​(UpdateTagRequest request)
        Updates an existing tag.

        Sample code:

        
         // This snippet has been automatically generated and should be regarded as a code template only.
         // It will require modifications to work:
         // - It may require correct/in-range values for request initialization.
         // - It may require specifying regional endpoints when creating the service client as shown in
         // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
         try (DataCatalogClient dataCatalogClient = DataCatalogClient.create()) {
           UpdateTagRequest request =
               UpdateTagRequest.newBuilder()
                   .setTag(Tag.newBuilder().build())
                   .setUpdateMask(FieldMask.newBuilder().build())
                   .build();
           Tag response = dataCatalogClient.updateTag(request);
         }
         
        Parameters:
        request - The request object containing all of the parameters for the API call.
        Throws:
        com.google.api.gax.rpc.ApiException - if the remote call fails
      • updateTagCallable

        public final com.google.api.gax.rpc.UnaryCallable<UpdateTagRequest,​Tag> updateTagCallable()
        Updates an existing tag.

        Sample code:

        
         // This snippet has been automatically generated and should be regarded as a code template only.
         // It will require modifications to work:
         // - It may require correct/in-range values for request initialization.
         // - It may require specifying regional endpoints when creating the service client as shown in
         // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
         try (DataCatalogClient dataCatalogClient = DataCatalogClient.create()) {
           UpdateTagRequest request =
               UpdateTagRequest.newBuilder()
                   .setTag(Tag.newBuilder().build())
                   .setUpdateMask(FieldMask.newBuilder().build())
                   .build();
           ApiFuture<Tag> future = dataCatalogClient.updateTagCallable().futureCall(request);
           // Do something.
           Tag response = future.get();
         }
         
      • deleteTag

        public final void deleteTag​(EntryName name)
        Deletes a tag.

        Sample code:

        
         // This snippet has been automatically generated and should be regarded as a code template only.
         // It will require modifications to work:
         // - It may require correct/in-range values for request initialization.
         // - It may require specifying regional endpoints when creating the service client as shown in
         // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
         try (DataCatalogClient dataCatalogClient = DataCatalogClient.create()) {
           EntryName name = EntryName.of("[PROJECT]", "[LOCATION]", "[ENTRY_GROUP]", "[ENTRY]");
           dataCatalogClient.deleteTag(name);
         }
         
        Parameters:
        name - Required. The name of the tag to delete. Example:
        • projects/{project_id}/locations/{location}/entryGroups/{entry_group_id}/entries/{entry_id}/tags/{tag_id}
        Throws:
        com.google.api.gax.rpc.ApiException - if the remote call fails
      • deleteTag

        public final void deleteTag​(String name)
        Deletes a tag.

        Sample code:

        
         // This snippet has been automatically generated and should be regarded as a code template only.
         // It will require modifications to work:
         // - It may require correct/in-range values for request initialization.
         // - It may require specifying regional endpoints when creating the service client as shown in
         // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
         try (DataCatalogClient dataCatalogClient = DataCatalogClient.create()) {
           String name = EntryName.of("[PROJECT]", "[LOCATION]", "[ENTRY_GROUP]", "[ENTRY]").toString();
           dataCatalogClient.deleteTag(name);
         }
         
        Parameters:
        name - Required. The name of the tag to delete. Example:
        • projects/{project_id}/locations/{location}/entryGroups/{entry_group_id}/entries/{entry_id}/tags/{tag_id}
        Throws:
        com.google.api.gax.rpc.ApiException - if the remote call fails
      • deleteTag

        public final void deleteTag​(DeleteTagRequest request)
        Deletes a tag.

        Sample code:

        
         // This snippet has been automatically generated and should be regarded as a code template only.
         // It will require modifications to work:
         // - It may require correct/in-range values for request initialization.
         // - It may require specifying regional endpoints when creating the service client as shown in
         // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
         try (DataCatalogClient dataCatalogClient = DataCatalogClient.create()) {
           DeleteTagRequest request =
               DeleteTagRequest.newBuilder()
                   .setName(
                       EntryName.of("[PROJECT]", "[LOCATION]", "[ENTRY_GROUP]", "[ENTRY]").toString())
                   .build();
           dataCatalogClient.deleteTag(request);
         }
         
        Parameters:
        request - The request object containing all of the parameters for the API call.
        Throws:
        com.google.api.gax.rpc.ApiException - if the remote call fails
      • deleteTagCallable

        public final com.google.api.gax.rpc.UnaryCallable<DeleteTagRequest,​com.google.protobuf.Empty> deleteTagCallable()
        Deletes a tag.

        Sample code:

        
         // This snippet has been automatically generated and should be regarded as a code template only.
         // It will require modifications to work:
         // - It may require correct/in-range values for request initialization.
         // - It may require specifying regional endpoints when creating the service client as shown in
         // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
         try (DataCatalogClient dataCatalogClient = DataCatalogClient.create()) {
           DeleteTagRequest request =
               DeleteTagRequest.newBuilder()
                   .setName(
                       EntryName.of("[PROJECT]", "[LOCATION]", "[ENTRY_GROUP]", "[ENTRY]").toString())
                   .build();
           ApiFuture<Empty> future = dataCatalogClient.deleteTagCallable().futureCall(request);
           // Do something.
           future.get();
         }
         
      • listTags

        public final DataCatalogClient.ListTagsPagedResponse listTags​(EntryName parent)
        Lists tags assigned to an [Entry][google.cloud.datacatalog.v1beta1.Entry]. The [columns][google.cloud.datacatalog.v1beta1.Tag.column] in the response are lowercased.

        Sample code:

        
         // This snippet has been automatically generated and should be regarded as a code template only.
         // It will require modifications to work:
         // - It may require correct/in-range values for request initialization.
         // - It may require specifying regional endpoints when creating the service client as shown in
         // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
         try (DataCatalogClient dataCatalogClient = DataCatalogClient.create()) {
           EntryName parent = EntryName.of("[PROJECT]", "[LOCATION]", "[ENTRY_GROUP]", "[ENTRY]");
           for (Tag element : dataCatalogClient.listTags(parent).iterateAll()) {
             // doThingsWith(element);
           }
         }
         
        Parameters:
        parent - Required. The name of the Data Catalog resource to list the tags of. The resource could be an [Entry][google.cloud.datacatalog.v1beta1.Entry] or an [EntryGroup][google.cloud.datacatalog.v1beta1.EntryGroup].

        Examples:

        • projects/{project_id}/locations/{location}/entryGroups/{entry_group_id}
        • projects/{project_id}/locations/{location}/entryGroups/{entry_group_id}/entries/{entry_id}
        Throws:
        com.google.api.gax.rpc.ApiException - if the remote call fails
      • listTags

        public final DataCatalogClient.ListTagsPagedResponse listTags​(String parent)
        Lists tags assigned to an [Entry][google.cloud.datacatalog.v1beta1.Entry]. The [columns][google.cloud.datacatalog.v1beta1.Tag.column] in the response are lowercased.

        Sample code:

        
         // This snippet has been automatically generated and should be regarded as a code template only.
         // It will require modifications to work:
         // - It may require correct/in-range values for request initialization.
         // - It may require specifying regional endpoints when creating the service client as shown in
         // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
         try (DataCatalogClient dataCatalogClient = DataCatalogClient.create()) {
           String parent =
               EntryName.of("[PROJECT]", "[LOCATION]", "[ENTRY_GROUP]", "[ENTRY]").toString();
           for (Tag element : dataCatalogClient.listTags(parent).iterateAll()) {
             // doThingsWith(element);
           }
         }
         
        Parameters:
        parent - Required. The name of the Data Catalog resource to list the tags of. The resource could be an [Entry][google.cloud.datacatalog.v1beta1.Entry] or an [EntryGroup][google.cloud.datacatalog.v1beta1.EntryGroup].

        Examples:

        • projects/{project_id}/locations/{location}/entryGroups/{entry_group_id}
        • projects/{project_id}/locations/{location}/entryGroups/{entry_group_id}/entries/{entry_id}
        Throws:
        com.google.api.gax.rpc.ApiException - if the remote call fails
      • listTags

        public final DataCatalogClient.ListTagsPagedResponse listTags​(ListTagsRequest request)
        Lists tags assigned to an [Entry][google.cloud.datacatalog.v1beta1.Entry]. The [columns][google.cloud.datacatalog.v1beta1.Tag.column] in the response are lowercased.

        Sample code:

        
         // This snippet has been automatically generated and should be regarded as a code template only.
         // It will require modifications to work:
         // - It may require correct/in-range values for request initialization.
         // - It may require specifying regional endpoints when creating the service client as shown in
         // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
         try (DataCatalogClient dataCatalogClient = DataCatalogClient.create()) {
           ListTagsRequest request =
               ListTagsRequest.newBuilder()
                   .setParent(
                       EntryName.of("[PROJECT]", "[LOCATION]", "[ENTRY_GROUP]", "[ENTRY]").toString())
                   .setPageSize(883849137)
                   .setPageToken("pageToken873572522")
                   .build();
           for (Tag element : dataCatalogClient.listTags(request).iterateAll()) {
             // doThingsWith(element);
           }
         }
         
        Parameters:
        request - The request object containing all of the parameters for the API call.
        Throws:
        com.google.api.gax.rpc.ApiException - if the remote call fails
      • listTagsPagedCallable

        public final com.google.api.gax.rpc.UnaryCallable<ListTagsRequest,​DataCatalogClient.ListTagsPagedResponse> listTagsPagedCallable()
        Lists tags assigned to an [Entry][google.cloud.datacatalog.v1beta1.Entry]. The [columns][google.cloud.datacatalog.v1beta1.Tag.column] in the response are lowercased.

        Sample code:

        
         // This snippet has been automatically generated and should be regarded as a code template only.
         // It will require modifications to work:
         // - It may require correct/in-range values for request initialization.
         // - It may require specifying regional endpoints when creating the service client as shown in
         // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
         try (DataCatalogClient dataCatalogClient = DataCatalogClient.create()) {
           ListTagsRequest request =
               ListTagsRequest.newBuilder()
                   .setParent(
                       EntryName.of("[PROJECT]", "[LOCATION]", "[ENTRY_GROUP]", "[ENTRY]").toString())
                   .setPageSize(883849137)
                   .setPageToken("pageToken873572522")
                   .build();
           ApiFuture<Tag> future = dataCatalogClient.listTagsPagedCallable().futureCall(request);
           // Do something.
           for (Tag element : future.get().iterateAll()) {
             // doThingsWith(element);
           }
         }
         
      • listTagsCallable

        public final com.google.api.gax.rpc.UnaryCallable<ListTagsRequest,​ListTagsResponse> listTagsCallable()
        Lists tags assigned to an [Entry][google.cloud.datacatalog.v1beta1.Entry]. The [columns][google.cloud.datacatalog.v1beta1.Tag.column] in the response are lowercased.

        Sample code:

        
         // This snippet has been automatically generated and should be regarded as a code template only.
         // It will require modifications to work:
         // - It may require correct/in-range values for request initialization.
         // - It may require specifying regional endpoints when creating the service client as shown in
         // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
         try (DataCatalogClient dataCatalogClient = DataCatalogClient.create()) {
           ListTagsRequest request =
               ListTagsRequest.newBuilder()
                   .setParent(
                       EntryName.of("[PROJECT]", "[LOCATION]", "[ENTRY_GROUP]", "[ENTRY]").toString())
                   .setPageSize(883849137)
                   .setPageToken("pageToken873572522")
                   .build();
           while (true) {
             ListTagsResponse response = dataCatalogClient.listTagsCallable().call(request);
             for (Tag element : response.getTagsList()) {
               // doThingsWith(element);
             }
             String nextPageToken = response.getNextPageToken();
             if (!Strings.isNullOrEmpty(nextPageToken)) {
               request = request.toBuilder().setPageToken(nextPageToken).build();
             } else {
               break;
             }
           }
         }
         
      • setIamPolicy

        public final com.google.iam.v1.Policy setIamPolicy​(com.google.api.resourcenames.ResourceName resource,
                                                           com.google.iam.v1.Policy policy)
        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.

        Sample code:

        
         // This snippet has been automatically generated and should be regarded as a code template only.
         // It will require modifications to work:
         // - It may require correct/in-range values for request initialization.
         // - It may require specifying regional endpoints when creating the service client as shown in
         // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
         try (DataCatalogClient dataCatalogClient = DataCatalogClient.create()) {
           ResourceName resource = EntryGroupName.of("[PROJECT]", "[LOCATION]", "[ENTRY_GROUP]");
           Policy policy = Policy.newBuilder().build();
           Policy response = dataCatalogClient.setIamPolicy(resource, policy);
         }
         
        Parameters:
        resource - REQUIRED: The resource for which the policy is being specified. See the operation documentation for the appropriate value for this field.
        policy - REQUIRED: The complete policy to be applied to the `resource`. The size of the policy is limited to a few 10s of KB. An empty policy is a valid policy but certain Cloud Platform services (such as Projects) might reject them.
        Throws:
        com.google.api.gax.rpc.ApiException - if the remote call fails
      • setIamPolicy

        public final com.google.iam.v1.Policy setIamPolicy​(String resource,
                                                           com.google.iam.v1.Policy policy)
        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.

        Sample code:

        
         // This snippet has been automatically generated and should be regarded as a code template only.
         // It will require modifications to work:
         // - It may require correct/in-range values for request initialization.
         // - It may require specifying regional endpoints when creating the service client as shown in
         // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
         try (DataCatalogClient dataCatalogClient = DataCatalogClient.create()) {
           String resource =
               EntryName.of("[PROJECT]", "[LOCATION]", "[ENTRY_GROUP]", "[ENTRY]").toString();
           Policy policy = Policy.newBuilder().build();
           Policy response = dataCatalogClient.setIamPolicy(resource, policy);
         }
         
        Parameters:
        resource - REQUIRED: The resource for which the policy is being specified. See the operation documentation for the appropriate value for this field.
        policy - REQUIRED: The complete policy to be applied to the `resource`. The size of the policy is limited to a few 10s of KB. An empty policy is a valid policy but certain Cloud Platform services (such as Projects) might reject them.
        Throws:
        com.google.api.gax.rpc.ApiException - if the remote call fails
      • setIamPolicy

        public final com.google.iam.v1.Policy setIamPolicy​(com.google.iam.v1.SetIamPolicyRequest request)
        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.

        Sample code:

        
         // This snippet has been automatically generated and should be regarded as a code template only.
         // It will require modifications to work:
         // - It may require correct/in-range values for request initialization.
         // - It may require specifying regional endpoints when creating the service client as shown in
         // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
         try (DataCatalogClient dataCatalogClient = DataCatalogClient.create()) {
           SetIamPolicyRequest request =
               SetIamPolicyRequest.newBuilder()
                   .setResource(EntryGroupName.of("[PROJECT]", "[LOCATION]", "[ENTRY_GROUP]").toString())
                   .setPolicy(Policy.newBuilder().build())
                   .setUpdateMask(FieldMask.newBuilder().build())
                   .build();
           Policy response = dataCatalogClient.setIamPolicy(request);
         }
         
        Parameters:
        request - The request object containing all of the parameters for the API call.
        Throws:
        com.google.api.gax.rpc.ApiException - if the remote call fails
      • setIamPolicyCallable

        public final com.google.api.gax.rpc.UnaryCallable<com.google.iam.v1.SetIamPolicyRequest,​com.google.iam.v1.Policy> setIamPolicyCallable()
        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.

        Sample code:

        
         // This snippet has been automatically generated and should be regarded as a code template only.
         // It will require modifications to work:
         // - It may require correct/in-range values for request initialization.
         // - It may require specifying regional endpoints when creating the service client as shown in
         // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
         try (DataCatalogClient dataCatalogClient = DataCatalogClient.create()) {
           SetIamPolicyRequest request =
               SetIamPolicyRequest.newBuilder()
                   .setResource(EntryGroupName.of("[PROJECT]", "[LOCATION]", "[ENTRY_GROUP]").toString())
                   .setPolicy(Policy.newBuilder().build())
                   .setUpdateMask(FieldMask.newBuilder().build())
                   .build();
           ApiFuture<Policy> future = dataCatalogClient.setIamPolicyCallable().futureCall(request);
           // Do something.
           Policy response = future.get();
         }
         
      • getIamPolicy

        public final com.google.iam.v1.Policy getIamPolicy​(com.google.api.resourcenames.ResourceName resource)
        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.

        Sample code:

        
         // This snippet has been automatically generated and should be regarded as a code template only.
         // It will require modifications to work:
         // - It may require correct/in-range values for request initialization.
         // - It may require specifying regional endpoints when creating the service client as shown in
         // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
         try (DataCatalogClient dataCatalogClient = DataCatalogClient.create()) {
           ResourceName resource = EntryName.of("[PROJECT]", "[LOCATION]", "[ENTRY_GROUP]", "[ENTRY]");
           Policy response = dataCatalogClient.getIamPolicy(resource);
         }
         
        Parameters:
        resource - REQUIRED: The resource for which the policy is being requested. See the operation documentation for the appropriate value for this field.
        Throws:
        com.google.api.gax.rpc.ApiException - if the remote call fails
      • getIamPolicy

        public final com.google.iam.v1.Policy getIamPolicy​(String resource)
        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.

        Sample code:

        
         // This snippet has been automatically generated and should be regarded as a code template only.
         // It will require modifications to work:
         // - It may require correct/in-range values for request initialization.
         // - It may require specifying regional endpoints when creating the service client as shown in
         // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
         try (DataCatalogClient dataCatalogClient = DataCatalogClient.create()) {
           String resource =
               EntryName.of("[PROJECT]", "[LOCATION]", "[ENTRY_GROUP]", "[ENTRY]").toString();
           Policy response = dataCatalogClient.getIamPolicy(resource);
         }
         
        Parameters:
        resource - REQUIRED: The resource for which the policy is being requested. See the operation documentation for the appropriate value for this field.
        Throws:
        com.google.api.gax.rpc.ApiException - if the remote call fails
      • getIamPolicy

        public final com.google.iam.v1.Policy getIamPolicy​(com.google.iam.v1.GetIamPolicyRequest request)
        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.

        Sample code:

        
         // This snippet has been automatically generated and should be regarded as a code template only.
         // It will require modifications to work:
         // - It may require correct/in-range values for request initialization.
         // - It may require specifying regional endpoints when creating the service client as shown in
         // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
         try (DataCatalogClient dataCatalogClient = DataCatalogClient.create()) {
           GetIamPolicyRequest request =
               GetIamPolicyRequest.newBuilder()
                   .setResource(
                       EntryName.of("[PROJECT]", "[LOCATION]", "[ENTRY_GROUP]", "[ENTRY]").toString())
                   .setOptions(GetPolicyOptions.newBuilder().build())
                   .build();
           Policy response = dataCatalogClient.getIamPolicy(request);
         }
         
        Parameters:
        request - The request object containing all of the parameters for the API call.
        Throws:
        com.google.api.gax.rpc.ApiException - if the remote call fails
      • getIamPolicyCallable

        public final com.google.api.gax.rpc.UnaryCallable<com.google.iam.v1.GetIamPolicyRequest,​com.google.iam.v1.Policy> getIamPolicyCallable()
        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.

        Sample code:

        
         // This snippet has been automatically generated and should be regarded as a code template only.
         // It will require modifications to work:
         // - It may require correct/in-range values for request initialization.
         // - It may require specifying regional endpoints when creating the service client as shown in
         // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
         try (DataCatalogClient dataCatalogClient = DataCatalogClient.create()) {
           GetIamPolicyRequest request =
               GetIamPolicyRequest.newBuilder()
                   .setResource(
                       EntryName.of("[PROJECT]", "[LOCATION]", "[ENTRY_GROUP]", "[ENTRY]").toString())
                   .setOptions(GetPolicyOptions.newBuilder().build())
                   .build();
           ApiFuture<Policy> future = dataCatalogClient.getIamPolicyCallable().futureCall(request);
           // Do something.
           Policy response = future.get();
         }
         
      • testIamPermissions

        public final com.google.iam.v1.TestIamPermissionsResponse testIamPermissions​(com.google.iam.v1.TestIamPermissionsRequest request)
        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.

        Sample code:

        
         // This snippet has been automatically generated and should be regarded as a code template only.
         // It will require modifications to work:
         // - It may require correct/in-range values for request initialization.
         // - It may require specifying regional endpoints when creating the service client as shown in
         // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
         try (DataCatalogClient dataCatalogClient = DataCatalogClient.create()) {
           TestIamPermissionsRequest request =
               TestIamPermissionsRequest.newBuilder()
                   .setResource(
                       EntryName.of("[PROJECT]", "[LOCATION]", "[ENTRY_GROUP]", "[ENTRY]").toString())
                   .addAllPermissions(new ArrayList<String>())
                   .build();
           TestIamPermissionsResponse response = dataCatalogClient.testIamPermissions(request);
         }
         
        Parameters:
        request - The request object containing all of the parameters for the API call.
        Throws:
        com.google.api.gax.rpc.ApiException - if the remote call fails
      • testIamPermissionsCallable

        public final com.google.api.gax.rpc.UnaryCallable<com.google.iam.v1.TestIamPermissionsRequest,​com.google.iam.v1.TestIamPermissionsResponse> testIamPermissionsCallable()
        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.

        Sample code:

        
         // This snippet has been automatically generated and should be regarded as a code template only.
         // It will require modifications to work:
         // - It may require correct/in-range values for request initialization.
         // - It may require specifying regional endpoints when creating the service client as shown in
         // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
         try (DataCatalogClient dataCatalogClient = DataCatalogClient.create()) {
           TestIamPermissionsRequest request =
               TestIamPermissionsRequest.newBuilder()
                   .setResource(
                       EntryName.of("[PROJECT]", "[LOCATION]", "[ENTRY_GROUP]", "[ENTRY]").toString())
                   .addAllPermissions(new ArrayList<String>())
                   .build();
           ApiFuture<TestIamPermissionsResponse> future =
               dataCatalogClient.testIamPermissionsCallable().futureCall(request);
           // Do something.
           TestIamPermissionsResponse response = future.get();
         }
         
      • shutdown

        public void shutdown()
        Specified by:
        shutdown in interface com.google.api.gax.core.BackgroundResource
      • isShutdown

        public boolean isShutdown()
        Specified by:
        isShutdown in interface com.google.api.gax.core.BackgroundResource
      • isTerminated

        public boolean isTerminated()
        Specified by:
        isTerminated in interface com.google.api.gax.core.BackgroundResource
      • shutdownNow

        public void shutdownNow()
        Specified by:
        shutdownNow in interface com.google.api.gax.core.BackgroundResource