Class DataprocMetastoreFederationClient

java.lang.Object
com.google.cloud.metastore.v1alpha.DataprocMetastoreFederationClient
All Implemented Interfaces:
BackgroundResource, AutoCloseable

@BetaApi @Generated("by gapic-generator-java") public class DataprocMetastoreFederationClient extends Object implements BackgroundResource
Service Description: Configures and manages metastore federation services. Dataproc Metastore Federation Service allows federating a collection of backend metastores like BigQuery, Dataplex Lakes, and other Dataproc Metastores. The Federation Service exposes a gRPC URL through which metadata from the backend metastores are served at query time.

The Dataproc Metastore Federation API defines the following resource model:

  • The service works with a collection of Google Cloud projects.
  • Each project has a collection of available locations.
  • Each location has a collection of federations.
  • Dataproc Metastore Federations are resources with names of the form: `projects/{project_number}/locations/{location_id}/federations/{federation_id}`.

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 (DataprocMetastoreFederationClient dataprocMetastoreFederationClient =
     DataprocMetastoreFederationClient.create()) {
   FederationName name = FederationName.of("[PROJECT]", "[LOCATION]", "[FEDERATION]");
   Federation response = dataprocMetastoreFederationClient.getFederation(name);
 }
 

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

Methods
Method Description Method Variants

ListFederations

Lists federations in a project and location.

Request object method variants only take one parameter, a request object, which must be constructed before the call.

  • listFederations(ListFederationsRequest request)

"Flattened" method variants have converted the fields of the request object into function parameters to enable multiple ways to call the same method.

  • listFederations(LocationName parent)

  • listFederations(String parent)

Callable method variants take no parameters and return an immutable API callable object, which can be used to initiate calls to the service.

  • listFederationsPagedCallable()

  • listFederationsCallable()

GetFederation

Gets the details of a single federation.

Request object method variants only take one parameter, a request object, which must be constructed before the call.

  • getFederation(GetFederationRequest request)

"Flattened" method variants have converted the fields of the request object into function parameters to enable multiple ways to call the same method.

  • getFederation(FederationName name)

  • getFederation(String name)

Callable method variants take no parameters and return an immutable API callable object, which can be used to initiate calls to the service.

  • getFederationCallable()

CreateFederation

Creates a metastore federation in a project and location.

Request object method variants only take one parameter, a request object, which must be constructed before the call.

  • createFederationAsync(CreateFederationRequest request)

Methods that return long-running operations have "Async" method variants that return `OperationFuture`, which is used to track polling of the service.

  • createFederationAsync(LocationName parent, Federation federation, String federationId)

  • createFederationAsync(String parent, Federation federation, String federationId)

Callable method variants take no parameters and return an immutable API callable object, which can be used to initiate calls to the service.

  • createFederationOperationCallable()

  • createFederationCallable()

UpdateFederation

Updates the fields of a federation.

Request object method variants only take one parameter, a request object, which must be constructed before the call.

  • updateFederationAsync(UpdateFederationRequest request)

Methods that return long-running operations have "Async" method variants that return `OperationFuture`, which is used to track polling of the service.

  • updateFederationAsync(Federation federation, FieldMask updateMask)

Callable method variants take no parameters and return an immutable API callable object, which can be used to initiate calls to the service.

  • updateFederationOperationCallable()

  • updateFederationCallable()

DeleteFederation

Deletes a single federation.

Request object method variants only take one parameter, a request object, which must be constructed before the call.

  • deleteFederationAsync(DeleteFederationRequest request)

Methods that return long-running operations have "Async" method variants that return `OperationFuture`, which is used to track polling of the service.

  • deleteFederationAsync(FederationName name)

  • deleteFederationAsync(String name)

Callable method variants take no parameters and return an immutable API callable object, which can be used to initiate calls to the service.

  • deleteFederationOperationCallable()

  • deleteFederationCallable()

ListLocations

Lists information about the supported locations for this service.

Request object method variants only take one parameter, a request object, which must be constructed before the call.

  • listLocations(ListLocationsRequest request)

Callable method variants take no parameters and return an immutable API callable object, which can be used to initiate calls to the service.

  • listLocationsPagedCallable()

  • listLocationsCallable()

GetLocation

Gets information about a location.

Request object method variants only take one parameter, a request object, which must be constructed before the call.

  • getLocation(GetLocationRequest request)

Callable method variants take no parameters and return an immutable API callable object, which can be used to initiate calls to the service.

  • getLocationCallable()

SetIamPolicy

Sets the access control policy on the specified resource. Replacesany existing policy.

Can return `NOT_FOUND`, `INVALID_ARGUMENT`, and `PERMISSION_DENIED`errors.

Request object method variants only take one parameter, a request object, which must be constructed before the call.

  • setIamPolicy(SetIamPolicyRequest request)

Callable method variants take no parameters and return an immutable API callable object, which can be used to initiate calls to the service.

  • setIamPolicyCallable()

GetIamPolicy

Gets the access control policy for a resource. Returns an empty policyif the resource exists and does not have a policy set.

Request object method variants only take one parameter, a request object, which must be constructed before the call.

  • getIamPolicy(GetIamPolicyRequest request)

Callable method variants take no parameters and return an immutable API callable object, which can be used to initiate calls to the service.

  • getIamPolicyCallable()

TestIamPermissions

Returns permissions that a caller has on the specified resource. If theresource does not exist, this will return an empty set ofpermissions, not a `NOT_FOUND` error.

Note: This operation is designed to be used for buildingpermission-aware UIs and command-line tools, not for authorizationchecking. This operation may "fail open" without warning.

Request object method variants only take one parameter, a request object, which must be constructed before the call.

  • testIamPermissions(TestIamPermissionsRequest request)

Callable method variants take no parameters and return an immutable API callable object, which can be used to initiate calls to the service.

  • testIamPermissionsCallable()

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 DataprocMetastoreFederationSettings 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
 DataprocMetastoreFederationSettings dataprocMetastoreFederationSettings =
     DataprocMetastoreFederationSettings.newBuilder()
         .setCredentialsProvider(FixedCredentialsProvider.create(myCredentials))
         .build();
 DataprocMetastoreFederationClient dataprocMetastoreFederationClient =
     DataprocMetastoreFederationClient.create(dataprocMetastoreFederationSettings);
 

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
 DataprocMetastoreFederationSettings dataprocMetastoreFederationSettings =
     DataprocMetastoreFederationSettings.newBuilder().setEndpoint(myEndpoint).build();
 DataprocMetastoreFederationClient dataprocMetastoreFederationClient =
     DataprocMetastoreFederationClient.create(dataprocMetastoreFederationSettings);
 

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
 DataprocMetastoreFederationSettings dataprocMetastoreFederationSettings =
     DataprocMetastoreFederationSettings.newHttpJsonBuilder().build();
 DataprocMetastoreFederationClient dataprocMetastoreFederationClient =
     DataprocMetastoreFederationClient.create(dataprocMetastoreFederationSettings);
 

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

  • Constructor Details

    • DataprocMetastoreFederationClient

      protected DataprocMetastoreFederationClient(DataprocMetastoreFederationSettings settings) throws IOException
      Constructs an instance of DataprocMetastoreFederationClient, 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
    • DataprocMetastoreFederationClient

      protected DataprocMetastoreFederationClient(DataprocMetastoreFederationStub stub)
  • Method Details

    • create

      public static final DataprocMetastoreFederationClient create() throws IOException
      Constructs an instance of DataprocMetastoreFederationClient with default settings.
      Throws:
      IOException
    • create

      Constructs an instance of DataprocMetastoreFederationClient, 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

      Constructs an instance of DataprocMetastoreFederationClient, using the given stub for making calls. This is for advanced usage - prefer using create(DataprocMetastoreFederationSettings).
    • getSettings

      public final DataprocMetastoreFederationSettings getSettings()
    • getStub

    • getOperationsClient

      public final OperationsClient getOperationsClient()
      Returns the OperationsClient that can be used to query the status of a long-running operation returned by another API method call.
    • getHttpJsonOperationsClient

      @BetaApi public final OperationsClient getHttpJsonOperationsClient()
      Returns the OperationsClient that can be used to query the status of a long-running operation returned by another API method call.
    • listFederations

      Lists federations in a project and location.

      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 (DataprocMetastoreFederationClient dataprocMetastoreFederationClient =
           DataprocMetastoreFederationClient.create()) {
         LocationName parent = LocationName.of("[PROJECT]", "[LOCATION]");
         for (Federation element :
             dataprocMetastoreFederationClient.listFederations(parent).iterateAll()) {
           // doThingsWith(element);
         }
       }
       
      Parameters:
      parent - Required. The relative resource name of the location of metastore federations to list, in the following form: `projects/{project_number}/locations/{location_id}`.
      Throws:
      ApiException - if the remote call fails
    • listFederations

      Lists federations in a project and location.

      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 (DataprocMetastoreFederationClient dataprocMetastoreFederationClient =
           DataprocMetastoreFederationClient.create()) {
         String parent = LocationName.of("[PROJECT]", "[LOCATION]").toString();
         for (Federation element :
             dataprocMetastoreFederationClient.listFederations(parent).iterateAll()) {
           // doThingsWith(element);
         }
       }
       
      Parameters:
      parent - Required. The relative resource name of the location of metastore federations to list, in the following form: `projects/{project_number}/locations/{location_id}`.
      Throws:
      ApiException - if the remote call fails
    • listFederations

      Lists federations in a project and location.

      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 (DataprocMetastoreFederationClient dataprocMetastoreFederationClient =
           DataprocMetastoreFederationClient.create()) {
         ListFederationsRequest request =
             ListFederationsRequest.newBuilder()
                 .setParent(LocationName.of("[PROJECT]", "[LOCATION]").toString())
                 .setPageSize(883849137)
                 .setPageToken("pageToken873572522")
                 .setFilter("filter-1274492040")
                 .setOrderBy("orderBy-1207110587")
                 .build();
         for (Federation element :
             dataprocMetastoreFederationClient.listFederations(request).iterateAll()) {
           // doThingsWith(element);
         }
       }
       
      Parameters:
      request - The request object containing all of the parameters for the API call.
      Throws:
      ApiException - if the remote call fails
    • listFederationsPagedCallable

      Lists federations in a project and location.

      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 (DataprocMetastoreFederationClient dataprocMetastoreFederationClient =
           DataprocMetastoreFederationClient.create()) {
         ListFederationsRequest request =
             ListFederationsRequest.newBuilder()
                 .setParent(LocationName.of("[PROJECT]", "[LOCATION]").toString())
                 .setPageSize(883849137)
                 .setPageToken("pageToken873572522")
                 .setFilter("filter-1274492040")
                 .setOrderBy("orderBy-1207110587")
                 .build();
         ApiFuture<Federation> future =
             dataprocMetastoreFederationClient.listFederationsPagedCallable().futureCall(request);
         // Do something.
         for (Federation element : future.get().iterateAll()) {
           // doThingsWith(element);
         }
       }
       
    • listFederationsCallable

      public final UnaryCallable<ListFederationsRequest,ListFederationsResponse> listFederationsCallable()
      Lists federations in a project and location.

      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 (DataprocMetastoreFederationClient dataprocMetastoreFederationClient =
           DataprocMetastoreFederationClient.create()) {
         ListFederationsRequest request =
             ListFederationsRequest.newBuilder()
                 .setParent(LocationName.of("[PROJECT]", "[LOCATION]").toString())
                 .setPageSize(883849137)
                 .setPageToken("pageToken873572522")
                 .setFilter("filter-1274492040")
                 .setOrderBy("orderBy-1207110587")
                 .build();
         while (true) {
           ListFederationsResponse response =
               dataprocMetastoreFederationClient.listFederationsCallable().call(request);
           for (Federation element : response.getFederationsList()) {
             // doThingsWith(element);
           }
           String nextPageToken = response.getNextPageToken();
           if (!Strings.isNullOrEmpty(nextPageToken)) {
             request = request.toBuilder().setPageToken(nextPageToken).build();
           } else {
             break;
           }
         }
       }
       
    • getFederation

      public final Federation getFederation(FederationName name)
      Gets the details of a single federation.

      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 (DataprocMetastoreFederationClient dataprocMetastoreFederationClient =
           DataprocMetastoreFederationClient.create()) {
         FederationName name = FederationName.of("[PROJECT]", "[LOCATION]", "[FEDERATION]");
         Federation response = dataprocMetastoreFederationClient.getFederation(name);
       }
       
      Parameters:
      name - Required. The relative resource name of the metastore federation to retrieve, in the following form:

      `projects/{project_number}/locations/{location_id}/federations/{federation_id}`.

      Throws:
      ApiException - if the remote call fails
    • getFederation

      public final Federation getFederation(String name)
      Gets the details of a single federation.

      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 (DataprocMetastoreFederationClient dataprocMetastoreFederationClient =
           DataprocMetastoreFederationClient.create()) {
         String name = FederationName.of("[PROJECT]", "[LOCATION]", "[FEDERATION]").toString();
         Federation response = dataprocMetastoreFederationClient.getFederation(name);
       }
       
      Parameters:
      name - Required. The relative resource name of the metastore federation to retrieve, in the following form:

      `projects/{project_number}/locations/{location_id}/federations/{federation_id}`.

      Throws:
      ApiException - if the remote call fails
    • getFederation

      public final Federation getFederation(GetFederationRequest request)
      Gets the details of a single federation.

      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 (DataprocMetastoreFederationClient dataprocMetastoreFederationClient =
           DataprocMetastoreFederationClient.create()) {
         GetFederationRequest request =
             GetFederationRequest.newBuilder()
                 .setName(FederationName.of("[PROJECT]", "[LOCATION]", "[FEDERATION]").toString())
                 .build();
         Federation response = dataprocMetastoreFederationClient.getFederation(request);
       }
       
      Parameters:
      request - The request object containing all of the parameters for the API call.
      Throws:
      ApiException - if the remote call fails
    • getFederationCallable

      public final UnaryCallable<GetFederationRequest,Federation> getFederationCallable()
      Gets the details of a single federation.

      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 (DataprocMetastoreFederationClient dataprocMetastoreFederationClient =
           DataprocMetastoreFederationClient.create()) {
         GetFederationRequest request =
             GetFederationRequest.newBuilder()
                 .setName(FederationName.of("[PROJECT]", "[LOCATION]", "[FEDERATION]").toString())
                 .build();
         ApiFuture<Federation> future =
             dataprocMetastoreFederationClient.getFederationCallable().futureCall(request);
         // Do something.
         Federation response = future.get();
       }
       
    • createFederationAsync

      public final OperationFuture<Federation,OperationMetadata> createFederationAsync(LocationName parent, Federation federation, String federationId)
      Creates a metastore federation in a project and location.

      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 (DataprocMetastoreFederationClient dataprocMetastoreFederationClient =
           DataprocMetastoreFederationClient.create()) {
         LocationName parent = LocationName.of("[PROJECT]", "[LOCATION]");
         Federation federation = Federation.newBuilder().build();
         String federationId = "federationId-735921218";
         Federation response =
             dataprocMetastoreFederationClient
                 .createFederationAsync(parent, federation, federationId)
                 .get();
       }
       
      Parameters:
      parent - Required. The relative resource name of the location in which to create a federation service, in the following form:

      `projects/{project_number}/locations/{location_id}`.

      federation - Required. The Metastore Federation to create. The `name` field is ignored. The ID of the created metastore federation must be provided in the request's `federation_id` field.
      federationId - Required. The ID of the metastore federation, which is used as the final component of the metastore federation's name.

      This value must be between 2 and 63 characters long inclusive, begin with a letter, end with a letter or number, and consist of alpha-numeric ASCII characters or hyphens.

      Throws:
      ApiException - if the remote call fails
    • createFederationAsync

      public final OperationFuture<Federation,OperationMetadata> createFederationAsync(String parent, Federation federation, String federationId)
      Creates a metastore federation in a project and location.

      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 (DataprocMetastoreFederationClient dataprocMetastoreFederationClient =
           DataprocMetastoreFederationClient.create()) {
         String parent = LocationName.of("[PROJECT]", "[LOCATION]").toString();
         Federation federation = Federation.newBuilder().build();
         String federationId = "federationId-735921218";
         Federation response =
             dataprocMetastoreFederationClient
                 .createFederationAsync(parent, federation, federationId)
                 .get();
       }
       
      Parameters:
      parent - Required. The relative resource name of the location in which to create a federation service, in the following form:

      `projects/{project_number}/locations/{location_id}`.

      federation - Required. The Metastore Federation to create. The `name` field is ignored. The ID of the created metastore federation must be provided in the request's `federation_id` field.
      federationId - Required. The ID of the metastore federation, which is used as the final component of the metastore federation's name.

      This value must be between 2 and 63 characters long inclusive, begin with a letter, end with a letter or number, and consist of alpha-numeric ASCII characters or hyphens.

      Throws:
      ApiException - if the remote call fails
    • createFederationAsync

      public final OperationFuture<Federation,OperationMetadata> createFederationAsync(CreateFederationRequest request)
      Creates a metastore federation in a project and location.

      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 (DataprocMetastoreFederationClient dataprocMetastoreFederationClient =
           DataprocMetastoreFederationClient.create()) {
         CreateFederationRequest request =
             CreateFederationRequest.newBuilder()
                 .setParent(LocationName.of("[PROJECT]", "[LOCATION]").toString())
                 .setFederationId("federationId-735921218")
                 .setFederation(Federation.newBuilder().build())
                 .setRequestId("requestId693933066")
                 .build();
         Federation response = dataprocMetastoreFederationClient.createFederationAsync(request).get();
       }
       
      Parameters:
      request - The request object containing all of the parameters for the API call.
      Throws:
      ApiException - if the remote call fails
    • createFederationOperationCallable

      public final OperationCallable<CreateFederationRequest,Federation,OperationMetadata> createFederationOperationCallable()
      Creates a metastore federation in a project and location.

      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 (DataprocMetastoreFederationClient dataprocMetastoreFederationClient =
           DataprocMetastoreFederationClient.create()) {
         CreateFederationRequest request =
             CreateFederationRequest.newBuilder()
                 .setParent(LocationName.of("[PROJECT]", "[LOCATION]").toString())
                 .setFederationId("federationId-735921218")
                 .setFederation(Federation.newBuilder().build())
                 .setRequestId("requestId693933066")
                 .build();
         OperationFuture<Federation, OperationMetadata> future =
             dataprocMetastoreFederationClient.createFederationOperationCallable().futureCall(request);
         // Do something.
         Federation response = future.get();
       }
       
    • createFederationCallable

      public final UnaryCallable<CreateFederationRequest,Operation> createFederationCallable()
      Creates a metastore federation in a project and location.

      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 (DataprocMetastoreFederationClient dataprocMetastoreFederationClient =
           DataprocMetastoreFederationClient.create()) {
         CreateFederationRequest request =
             CreateFederationRequest.newBuilder()
                 .setParent(LocationName.of("[PROJECT]", "[LOCATION]").toString())
                 .setFederationId("federationId-735921218")
                 .setFederation(Federation.newBuilder().build())
                 .setRequestId("requestId693933066")
                 .build();
         ApiFuture<Operation> future =
             dataprocMetastoreFederationClient.createFederationCallable().futureCall(request);
         // Do something.
         Operation response = future.get();
       }
       
    • updateFederationAsync

      public final OperationFuture<Federation,OperationMetadata> updateFederationAsync(Federation federation, com.google.protobuf.FieldMask updateMask)
      Updates the fields of a federation.

      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 (DataprocMetastoreFederationClient dataprocMetastoreFederationClient =
           DataprocMetastoreFederationClient.create()) {
         Federation federation = Federation.newBuilder().build();
         FieldMask updateMask = FieldMask.newBuilder().build();
         Federation response =
             dataprocMetastoreFederationClient.updateFederationAsync(federation, updateMask).get();
       }
       
      Parameters:
      federation - Required. The metastore federation to update. The server only merges fields in the service if they are specified in `update_mask`.

      The metastore federation's `name` field is used to identify the metastore service to be updated.

      updateMask - Required. A field mask used to specify the fields to be overwritten in the metastore federation resource by the update. Fields specified in the `update_mask` are relative to the resource (not to the full request). A field is overwritten if it is in the mask.
      Throws:
      ApiException - if the remote call fails
    • updateFederationAsync

      public final OperationFuture<Federation,OperationMetadata> updateFederationAsync(UpdateFederationRequest request)
      Updates the fields of a federation.

      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 (DataprocMetastoreFederationClient dataprocMetastoreFederationClient =
           DataprocMetastoreFederationClient.create()) {
         UpdateFederationRequest request =
             UpdateFederationRequest.newBuilder()
                 .setUpdateMask(FieldMask.newBuilder().build())
                 .setFederation(Federation.newBuilder().build())
                 .setRequestId("requestId693933066")
                 .build();
         Federation response = dataprocMetastoreFederationClient.updateFederationAsync(request).get();
       }
       
      Parameters:
      request - The request object containing all of the parameters for the API call.
      Throws:
      ApiException - if the remote call fails
    • updateFederationOperationCallable

      public final OperationCallable<UpdateFederationRequest,Federation,OperationMetadata> updateFederationOperationCallable()
      Updates the fields of a federation.

      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 (DataprocMetastoreFederationClient dataprocMetastoreFederationClient =
           DataprocMetastoreFederationClient.create()) {
         UpdateFederationRequest request =
             UpdateFederationRequest.newBuilder()
                 .setUpdateMask(FieldMask.newBuilder().build())
                 .setFederation(Federation.newBuilder().build())
                 .setRequestId("requestId693933066")
                 .build();
         OperationFuture<Federation, OperationMetadata> future =
             dataprocMetastoreFederationClient.updateFederationOperationCallable().futureCall(request);
         // Do something.
         Federation response = future.get();
       }
       
    • updateFederationCallable

      public final UnaryCallable<UpdateFederationRequest,Operation> updateFederationCallable()
      Updates the fields of a federation.

      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 (DataprocMetastoreFederationClient dataprocMetastoreFederationClient =
           DataprocMetastoreFederationClient.create()) {
         UpdateFederationRequest request =
             UpdateFederationRequest.newBuilder()
                 .setUpdateMask(FieldMask.newBuilder().build())
                 .setFederation(Federation.newBuilder().build())
                 .setRequestId("requestId693933066")
                 .build();
         ApiFuture<Operation> future =
             dataprocMetastoreFederationClient.updateFederationCallable().futureCall(request);
         // Do something.
         Operation response = future.get();
       }
       
    • deleteFederationAsync

      public final OperationFuture<com.google.protobuf.Empty,OperationMetadata> deleteFederationAsync(FederationName name)
      Deletes a single federation.

      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 (DataprocMetastoreFederationClient dataprocMetastoreFederationClient =
           DataprocMetastoreFederationClient.create()) {
         FederationName name = FederationName.of("[PROJECT]", "[LOCATION]", "[FEDERATION]");
         dataprocMetastoreFederationClient.deleteFederationAsync(name).get();
       }
       
      Parameters:
      name - Required. The relative resource name of the metastore federation to delete, in the following form:

      `projects/{project_number}/locations/{location_id}/federations/{federation_id}`.

      Throws:
      ApiException - if the remote call fails
    • deleteFederationAsync

      public final OperationFuture<com.google.protobuf.Empty,OperationMetadata> deleteFederationAsync(String name)
      Deletes a single federation.

      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 (DataprocMetastoreFederationClient dataprocMetastoreFederationClient =
           DataprocMetastoreFederationClient.create()) {
         String name = FederationName.of("[PROJECT]", "[LOCATION]", "[FEDERATION]").toString();
         dataprocMetastoreFederationClient.deleteFederationAsync(name).get();
       }
       
      Parameters:
      name - Required. The relative resource name of the metastore federation to delete, in the following form:

      `projects/{project_number}/locations/{location_id}/federations/{federation_id}`.

      Throws:
      ApiException - if the remote call fails
    • deleteFederationAsync

      public final OperationFuture<com.google.protobuf.Empty,OperationMetadata> deleteFederationAsync(DeleteFederationRequest request)
      Deletes a single federation.

      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 (DataprocMetastoreFederationClient dataprocMetastoreFederationClient =
           DataprocMetastoreFederationClient.create()) {
         DeleteFederationRequest request =
             DeleteFederationRequest.newBuilder()
                 .setName(FederationName.of("[PROJECT]", "[LOCATION]", "[FEDERATION]").toString())
                 .setRequestId("requestId693933066")
                 .build();
         dataprocMetastoreFederationClient.deleteFederationAsync(request).get();
       }
       
      Parameters:
      request - The request object containing all of the parameters for the API call.
      Throws:
      ApiException - if the remote call fails
    • deleteFederationOperationCallable

      public final OperationCallable<DeleteFederationRequest,com.google.protobuf.Empty,OperationMetadata> deleteFederationOperationCallable()
      Deletes a single federation.

      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 (DataprocMetastoreFederationClient dataprocMetastoreFederationClient =
           DataprocMetastoreFederationClient.create()) {
         DeleteFederationRequest request =
             DeleteFederationRequest.newBuilder()
                 .setName(FederationName.of("[PROJECT]", "[LOCATION]", "[FEDERATION]").toString())
                 .setRequestId("requestId693933066")
                 .build();
         OperationFuture<Empty, OperationMetadata> future =
             dataprocMetastoreFederationClient.deleteFederationOperationCallable().futureCall(request);
         // Do something.
         future.get();
       }
       
    • deleteFederationCallable

      public final UnaryCallable<DeleteFederationRequest,Operation> deleteFederationCallable()
      Deletes a single federation.

      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 (DataprocMetastoreFederationClient dataprocMetastoreFederationClient =
           DataprocMetastoreFederationClient.create()) {
         DeleteFederationRequest request =
             DeleteFederationRequest.newBuilder()
                 .setName(FederationName.of("[PROJECT]", "[LOCATION]", "[FEDERATION]").toString())
                 .setRequestId("requestId693933066")
                 .build();
         ApiFuture<Operation> future =
             dataprocMetastoreFederationClient.deleteFederationCallable().futureCall(request);
         // Do something.
         future.get();
       }
       
    • listLocations

      Lists information about the supported locations for this service.

      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 (DataprocMetastoreFederationClient dataprocMetastoreFederationClient =
           DataprocMetastoreFederationClient.create()) {
         ListLocationsRequest request =
             ListLocationsRequest.newBuilder()
                 .setName("name3373707")
                 .setFilter("filter-1274492040")
                 .setPageSize(883849137)
                 .setPageToken("pageToken873572522")
                 .build();
         for (Location element :
             dataprocMetastoreFederationClient.listLocations(request).iterateAll()) {
           // doThingsWith(element);
         }
       }
       
      Parameters:
      request - The request object containing all of the parameters for the API call.
      Throws:
      ApiException - if the remote call fails
    • listLocationsPagedCallable

      Lists information about the supported locations for this service.

      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 (DataprocMetastoreFederationClient dataprocMetastoreFederationClient =
           DataprocMetastoreFederationClient.create()) {
         ListLocationsRequest request =
             ListLocationsRequest.newBuilder()
                 .setName("name3373707")
                 .setFilter("filter-1274492040")
                 .setPageSize(883849137)
                 .setPageToken("pageToken873572522")
                 .build();
         ApiFuture<Location> future =
             dataprocMetastoreFederationClient.listLocationsPagedCallable().futureCall(request);
         // Do something.
         for (Location element : future.get().iterateAll()) {
           // doThingsWith(element);
         }
       }
       
    • listLocationsCallable

      public final UnaryCallable<ListLocationsRequest,ListLocationsResponse> listLocationsCallable()
      Lists information about the supported locations for this service.

      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 (DataprocMetastoreFederationClient dataprocMetastoreFederationClient =
           DataprocMetastoreFederationClient.create()) {
         ListLocationsRequest request =
             ListLocationsRequest.newBuilder()
                 .setName("name3373707")
                 .setFilter("filter-1274492040")
                 .setPageSize(883849137)
                 .setPageToken("pageToken873572522")
                 .build();
         while (true) {
           ListLocationsResponse response =
               dataprocMetastoreFederationClient.listLocationsCallable().call(request);
           for (Location element : response.getLocationsList()) {
             // doThingsWith(element);
           }
           String nextPageToken = response.getNextPageToken();
           if (!Strings.isNullOrEmpty(nextPageToken)) {
             request = request.toBuilder().setPageToken(nextPageToken).build();
           } else {
             break;
           }
         }
       }
       
    • getLocation

      public final Location getLocation(GetLocationRequest request)
      Gets information about a location.

      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 (DataprocMetastoreFederationClient dataprocMetastoreFederationClient =
           DataprocMetastoreFederationClient.create()) {
         GetLocationRequest request = GetLocationRequest.newBuilder().setName("name3373707").build();
         Location response = dataprocMetastoreFederationClient.getLocation(request);
       }
       
      Parameters:
      request - The request object containing all of the parameters for the API call.
      Throws:
      ApiException - if the remote call fails
    • getLocationCallable

      public final UnaryCallable<GetLocationRequest,Location> getLocationCallable()
      Gets information about a location.

      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 (DataprocMetastoreFederationClient dataprocMetastoreFederationClient =
           DataprocMetastoreFederationClient.create()) {
         GetLocationRequest request = GetLocationRequest.newBuilder().setName("name3373707").build();
         ApiFuture<Location> future =
             dataprocMetastoreFederationClient.getLocationCallable().futureCall(request);
         // Do something.
         Location response = future.get();
       }
       
    • setIamPolicy

      public final Policy setIamPolicy(SetIamPolicyRequest request)
      Sets the access control policy on the specified resource. Replacesany existing policy.

      Can return `NOT_FOUND`, `INVALID_ARGUMENT`, and `PERMISSION_DENIED`errors.

      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 (DataprocMetastoreFederationClient dataprocMetastoreFederationClient =
           DataprocMetastoreFederationClient.create()) {
         SetIamPolicyRequest request =
             SetIamPolicyRequest.newBuilder()
                 .setResource(
                     BackupName.of("[PROJECT]", "[LOCATION]", "[SERVICE]", "[BACKUP]").toString())
                 .setPolicy(Policy.newBuilder().build())
                 .setUpdateMask(FieldMask.newBuilder().build())
                 .build();
         Policy response = dataprocMetastoreFederationClient.setIamPolicy(request);
       }
       
      Parameters:
      request - The request object containing all of the parameters for the API call.
      Throws:
      ApiException - if the remote call fails
    • setIamPolicyCallable

      public final UnaryCallable<SetIamPolicyRequest,Policy> setIamPolicyCallable()
      Sets the access control policy on the specified resource. Replacesany existing policy.

      Can return `NOT_FOUND`, `INVALID_ARGUMENT`, and `PERMISSION_DENIED`errors.

      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 (DataprocMetastoreFederationClient dataprocMetastoreFederationClient =
           DataprocMetastoreFederationClient.create()) {
         SetIamPolicyRequest request =
             SetIamPolicyRequest.newBuilder()
                 .setResource(
                     BackupName.of("[PROJECT]", "[LOCATION]", "[SERVICE]", "[BACKUP]").toString())
                 .setPolicy(Policy.newBuilder().build())
                 .setUpdateMask(FieldMask.newBuilder().build())
                 .build();
         ApiFuture<Policy> future =
             dataprocMetastoreFederationClient.setIamPolicyCallable().futureCall(request);
         // Do something.
         Policy response = future.get();
       }
       
    • getIamPolicy

      public final Policy getIamPolicy(GetIamPolicyRequest request)
      Gets the access control policy for a resource. Returns an empty policyif the resource exists and does not have a policy set.

      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 (DataprocMetastoreFederationClient dataprocMetastoreFederationClient =
           DataprocMetastoreFederationClient.create()) {
         GetIamPolicyRequest request =
             GetIamPolicyRequest.newBuilder()
                 .setResource(
                     BackupName.of("[PROJECT]", "[LOCATION]", "[SERVICE]", "[BACKUP]").toString())
                 .setOptions(GetPolicyOptions.newBuilder().build())
                 .build();
         Policy response = dataprocMetastoreFederationClient.getIamPolicy(request);
       }
       
      Parameters:
      request - The request object containing all of the parameters for the API call.
      Throws:
      ApiException - if the remote call fails
    • getIamPolicyCallable

      public final UnaryCallable<GetIamPolicyRequest,Policy> getIamPolicyCallable()
      Gets the access control policy for a resource. Returns an empty policyif the resource exists and does not have a policy set.

      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 (DataprocMetastoreFederationClient dataprocMetastoreFederationClient =
           DataprocMetastoreFederationClient.create()) {
         GetIamPolicyRequest request =
             GetIamPolicyRequest.newBuilder()
                 .setResource(
                     BackupName.of("[PROJECT]", "[LOCATION]", "[SERVICE]", "[BACKUP]").toString())
                 .setOptions(GetPolicyOptions.newBuilder().build())
                 .build();
         ApiFuture<Policy> future =
             dataprocMetastoreFederationClient.getIamPolicyCallable().futureCall(request);
         // Do something.
         Policy response = future.get();
       }
       
    • testIamPermissions

      public final TestIamPermissionsResponse testIamPermissions(TestIamPermissionsRequest request)
      Returns permissions that a caller has on the specified resource. If theresource does not exist, this will return an empty set ofpermissions, not a `NOT_FOUND` error.

      Note: This operation is designed to be used for buildingpermission-aware UIs and command-line tools, not for authorizationchecking. This operation may "fail open" without warning.

      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 (DataprocMetastoreFederationClient dataprocMetastoreFederationClient =
           DataprocMetastoreFederationClient.create()) {
         TestIamPermissionsRequest request =
             TestIamPermissionsRequest.newBuilder()
                 .setResource(
                     BackupName.of("[PROJECT]", "[LOCATION]", "[SERVICE]", "[BACKUP]").toString())
                 .addAllPermissions(new ArrayList<String>())
                 .build();
         TestIamPermissionsResponse response =
             dataprocMetastoreFederationClient.testIamPermissions(request);
       }
       
      Parameters:
      request - The request object containing all of the parameters for the API call.
      Throws:
      ApiException - if the remote call fails
    • testIamPermissionsCallable

      public final UnaryCallable<TestIamPermissionsRequest,TestIamPermissionsResponse> testIamPermissionsCallable()
      Returns permissions that a caller has on the specified resource. If theresource does not exist, this will return an empty set ofpermissions, not a `NOT_FOUND` error.

      Note: This operation is designed to be used for buildingpermission-aware UIs and command-line tools, not for authorizationchecking. This operation may "fail open" without warning.

      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 (DataprocMetastoreFederationClient dataprocMetastoreFederationClient =
           DataprocMetastoreFederationClient.create()) {
         TestIamPermissionsRequest request =
             TestIamPermissionsRequest.newBuilder()
                 .setResource(
                     BackupName.of("[PROJECT]", "[LOCATION]", "[SERVICE]", "[BACKUP]").toString())
                 .addAllPermissions(new ArrayList<String>())
                 .build();
         ApiFuture<TestIamPermissionsResponse> future =
             dataprocMetastoreFederationClient.testIamPermissionsCallable().futureCall(request);
         // Do something.
         TestIamPermissionsResponse response = future.get();
       }
       
    • close

      public final void close()
      Specified by:
      close in interface AutoCloseable
    • shutdown

      public void shutdown()
      Specified by:
      shutdown in interface BackgroundResource
    • isShutdown

      public boolean isShutdown()
      Specified by:
      isShutdown in interface BackgroundResource
    • isTerminated

      public boolean isTerminated()
      Specified by:
      isTerminated in interface BackgroundResource
    • shutdownNow

      public void shutdownNow()
      Specified by:
      shutdownNow in interface BackgroundResource
    • awaitTermination

      public boolean awaitTermination(long duration, TimeUnit unit) throws InterruptedException
      Specified by:
      awaitTermination in interface BackgroundResource
      Throws:
      InterruptedException