Class TenantServiceClient

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

    @Generated("by gapic-generator-java")
    public class TenantServiceClient
    extends Object
    implements com.google.api.gax.core.BackgroundResource
    Service Description: A service that handles tenant management, including CRUD and enumeration.

    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 (TenantServiceClient tenantServiceClient = TenantServiceClient.create()) {
       ProjectName parent = ProjectName.of("[PROJECT]");
       Tenant tenant = Tenant.newBuilder().build();
       Tenant response = tenantServiceClient.createTenant(parent, tenant);
     }
     

    Note: close() needs to be called on the TenantServiceClient 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 TenantServiceSettings 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
     TenantServiceSettings tenantServiceSettings =
         TenantServiceSettings.newBuilder()
             .setCredentialsProvider(FixedCredentialsProvider.create(myCredentials))
             .build();
     TenantServiceClient tenantServiceClient = TenantServiceClient.create(tenantServiceSettings);
     

    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
     TenantServiceSettings tenantServiceSettings =
         TenantServiceSettings.newBuilder().setEndpoint(myEndpoint).build();
     TenantServiceClient tenantServiceClient = TenantServiceClient.create(tenantServiceSettings);
     

    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
     TenantServiceSettings tenantServiceSettings =
         TenantServiceSettings.newHttpJsonBuilder().build();
     TenantServiceClient tenantServiceClient = TenantServiceClient.create(tenantServiceSettings);
     

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

    • Constructor Detail

      • TenantServiceClient

        protected TenantServiceClient​(TenantServiceSettings settings)
                               throws IOException
        Constructs an instance of TenantServiceClient, 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 TenantServiceClient create​(TenantServiceSettings settings)
                                                throws IOException
        Constructs an instance of TenantServiceClient, 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 TenantServiceClient create​(TenantServiceStub stub)
        Constructs an instance of TenantServiceClient, using the given stub for making calls. This is for advanced usage - prefer using create(TenantServiceSettings).
      • createTenant

        public final Tenant createTenant​(ProjectName parent,
                                         Tenant tenant)
        Creates a new tenant entity.

        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 (TenantServiceClient tenantServiceClient = TenantServiceClient.create()) {
           ProjectName parent = ProjectName.of("[PROJECT]");
           Tenant tenant = Tenant.newBuilder().build();
           Tenant response = tenantServiceClient.createTenant(parent, tenant);
         }
         
        Parameters:
        parent - Required. Resource name of the project under which the tenant is created.

        The format is "projects/{project_id}", for example, "projects/foo".

        tenant - Required. The tenant to be created.
        Throws:
        com.google.api.gax.rpc.ApiException - if the remote call fails
      • createTenant

        public final Tenant createTenant​(String parent,
                                         Tenant tenant)
        Creates a new tenant entity.

        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 (TenantServiceClient tenantServiceClient = TenantServiceClient.create()) {
           String parent = ProjectName.of("[PROJECT]").toString();
           Tenant tenant = Tenant.newBuilder().build();
           Tenant response = tenantServiceClient.createTenant(parent, tenant);
         }
         
        Parameters:
        parent - Required. Resource name of the project under which the tenant is created.

        The format is "projects/{project_id}", for example, "projects/foo".

        tenant - Required. The tenant to be created.
        Throws:
        com.google.api.gax.rpc.ApiException - if the remote call fails
      • createTenant

        public final Tenant createTenant​(CreateTenantRequest request)
        Creates a new tenant entity.

        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 (TenantServiceClient tenantServiceClient = TenantServiceClient.create()) {
           CreateTenantRequest request =
               CreateTenantRequest.newBuilder()
                   .setParent(ProjectName.of("[PROJECT]").toString())
                   .setTenant(Tenant.newBuilder().build())
                   .build();
           Tenant response = tenantServiceClient.createTenant(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
      • createTenantCallable

        public final com.google.api.gax.rpc.UnaryCallable<CreateTenantRequest,​Tenant> createTenantCallable()
        Creates a new tenant entity.

        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 (TenantServiceClient tenantServiceClient = TenantServiceClient.create()) {
           CreateTenantRequest request =
               CreateTenantRequest.newBuilder()
                   .setParent(ProjectName.of("[PROJECT]").toString())
                   .setTenant(Tenant.newBuilder().build())
                   .build();
           ApiFuture<Tenant> future = tenantServiceClient.createTenantCallable().futureCall(request);
           // Do something.
           Tenant response = future.get();
         }
         
      • getTenant

        public final Tenant getTenant​(TenantName name)
        Retrieves specified tenant.

        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 (TenantServiceClient tenantServiceClient = TenantServiceClient.create()) {
           TenantName name = TenantName.of("[PROJECT]", "[TENANT]");
           Tenant response = tenantServiceClient.getTenant(name);
         }
         
        Parameters:
        name - Required. The resource name of the tenant to be retrieved.

        The format is "projects/{project_id}/tenants/{tenant_id}", for example, "projects/foo/tenants/bar".

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

        public final Tenant getTenant​(String name)
        Retrieves specified tenant.

        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 (TenantServiceClient tenantServiceClient = TenantServiceClient.create()) {
           String name = TenantName.of("[PROJECT]", "[TENANT]").toString();
           Tenant response = tenantServiceClient.getTenant(name);
         }
         
        Parameters:
        name - Required. The resource name of the tenant to be retrieved.

        The format is "projects/{project_id}/tenants/{tenant_id}", for example, "projects/foo/tenants/bar".

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

        public final Tenant getTenant​(GetTenantRequest request)
        Retrieves specified tenant.

        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 (TenantServiceClient tenantServiceClient = TenantServiceClient.create()) {
           GetTenantRequest request =
               GetTenantRequest.newBuilder()
                   .setName(TenantName.of("[PROJECT]", "[TENANT]").toString())
                   .build();
           Tenant response = tenantServiceClient.getTenant(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
      • getTenantCallable

        public final com.google.api.gax.rpc.UnaryCallable<GetTenantRequest,​Tenant> getTenantCallable()
        Retrieves specified tenant.

        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 (TenantServiceClient tenantServiceClient = TenantServiceClient.create()) {
           GetTenantRequest request =
               GetTenantRequest.newBuilder()
                   .setName(TenantName.of("[PROJECT]", "[TENANT]").toString())
                   .build();
           ApiFuture<Tenant> future = tenantServiceClient.getTenantCallable().futureCall(request);
           // Do something.
           Tenant response = future.get();
         }
         
      • updateTenant

        public final Tenant updateTenant​(Tenant tenant,
                                         com.google.protobuf.FieldMask updateMask)
        Updates specified tenant.

        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 (TenantServiceClient tenantServiceClient = TenantServiceClient.create()) {
           Tenant tenant = Tenant.newBuilder().build();
           FieldMask updateMask = FieldMask.newBuilder().build();
           Tenant response = tenantServiceClient.updateTenant(tenant, updateMask);
         }
         
        Parameters:
        tenant - Required. The tenant resource to replace the current resource in the system.
        updateMask - Strongly recommended for the best service experience.

        If [update_mask][google.cloud.talent.v4.UpdateTenantRequest.update_mask] is provided, only the specified fields in [tenant][google.cloud.talent.v4.UpdateTenantRequest.tenant] are updated. Otherwise all the fields are updated.

        A field mask to specify the tenant fields to be updated. Only top level fields of [Tenant][google.cloud.talent.v4.Tenant] are supported.

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

        public final Tenant updateTenant​(UpdateTenantRequest request)
        Updates specified tenant.

        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 (TenantServiceClient tenantServiceClient = TenantServiceClient.create()) {
           UpdateTenantRequest request =
               UpdateTenantRequest.newBuilder()
                   .setTenant(Tenant.newBuilder().build())
                   .setUpdateMask(FieldMask.newBuilder().build())
                   .build();
           Tenant response = tenantServiceClient.updateTenant(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
      • updateTenantCallable

        public final com.google.api.gax.rpc.UnaryCallable<UpdateTenantRequest,​Tenant> updateTenantCallable()
        Updates specified tenant.

        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 (TenantServiceClient tenantServiceClient = TenantServiceClient.create()) {
           UpdateTenantRequest request =
               UpdateTenantRequest.newBuilder()
                   .setTenant(Tenant.newBuilder().build())
                   .setUpdateMask(FieldMask.newBuilder().build())
                   .build();
           ApiFuture<Tenant> future = tenantServiceClient.updateTenantCallable().futureCall(request);
           // Do something.
           Tenant response = future.get();
         }
         
      • deleteTenant

        public final void deleteTenant​(TenantName name)
        Deletes specified tenant.

        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 (TenantServiceClient tenantServiceClient = TenantServiceClient.create()) {
           TenantName name = TenantName.of("[PROJECT]", "[TENANT]");
           tenantServiceClient.deleteTenant(name);
         }
         
        Parameters:
        name - Required. The resource name of the tenant to be deleted.

        The format is "projects/{project_id}/tenants/{tenant_id}", for example, "projects/foo/tenants/bar".

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

        public final void deleteTenant​(String name)
        Deletes specified tenant.

        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 (TenantServiceClient tenantServiceClient = TenantServiceClient.create()) {
           String name = TenantName.of("[PROJECT]", "[TENANT]").toString();
           tenantServiceClient.deleteTenant(name);
         }
         
        Parameters:
        name - Required. The resource name of the tenant to be deleted.

        The format is "projects/{project_id}/tenants/{tenant_id}", for example, "projects/foo/tenants/bar".

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

        public final void deleteTenant​(DeleteTenantRequest request)
        Deletes specified tenant.

        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 (TenantServiceClient tenantServiceClient = TenantServiceClient.create()) {
           DeleteTenantRequest request =
               DeleteTenantRequest.newBuilder()
                   .setName(TenantName.of("[PROJECT]", "[TENANT]").toString())
                   .build();
           tenantServiceClient.deleteTenant(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
      • deleteTenantCallable

        public final com.google.api.gax.rpc.UnaryCallable<DeleteTenantRequest,​com.google.protobuf.Empty> deleteTenantCallable()
        Deletes specified tenant.

        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 (TenantServiceClient tenantServiceClient = TenantServiceClient.create()) {
           DeleteTenantRequest request =
               DeleteTenantRequest.newBuilder()
                   .setName(TenantName.of("[PROJECT]", "[TENANT]").toString())
                   .build();
           ApiFuture<Empty> future = tenantServiceClient.deleteTenantCallable().futureCall(request);
           // Do something.
           future.get();
         }
         
      • listTenants

        public final TenantServiceClient.ListTenantsPagedResponse listTenants​(ProjectName parent)
        Lists all tenants associated with the project.

        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 (TenantServiceClient tenantServiceClient = TenantServiceClient.create()) {
           ProjectName parent = ProjectName.of("[PROJECT]");
           for (Tenant element : tenantServiceClient.listTenants(parent).iterateAll()) {
             // doThingsWith(element);
           }
         }
         
        Parameters:
        parent - Required. Resource name of the project under which the tenant is created.

        The format is "projects/{project_id}", for example, "projects/foo".

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

        public final TenantServiceClient.ListTenantsPagedResponse listTenants​(String parent)
        Lists all tenants associated with the project.

        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 (TenantServiceClient tenantServiceClient = TenantServiceClient.create()) {
           String parent = ProjectName.of("[PROJECT]").toString();
           for (Tenant element : tenantServiceClient.listTenants(parent).iterateAll()) {
             // doThingsWith(element);
           }
         }
         
        Parameters:
        parent - Required. Resource name of the project under which the tenant is created.

        The format is "projects/{project_id}", for example, "projects/foo".

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

        public final TenantServiceClient.ListTenantsPagedResponse listTenants​(ListTenantsRequest request)
        Lists all tenants associated with the project.

        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 (TenantServiceClient tenantServiceClient = TenantServiceClient.create()) {
           ListTenantsRequest request =
               ListTenantsRequest.newBuilder()
                   .setParent(ProjectName.of("[PROJECT]").toString())
                   .setPageToken("pageToken873572522")
                   .setPageSize(883849137)
                   .build();
           for (Tenant element : tenantServiceClient.listTenants(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
      • listTenantsPagedCallable

        public final com.google.api.gax.rpc.UnaryCallable<ListTenantsRequest,​TenantServiceClient.ListTenantsPagedResponse> listTenantsPagedCallable()
        Lists all tenants associated with the project.

        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 (TenantServiceClient tenantServiceClient = TenantServiceClient.create()) {
           ListTenantsRequest request =
               ListTenantsRequest.newBuilder()
                   .setParent(ProjectName.of("[PROJECT]").toString())
                   .setPageToken("pageToken873572522")
                   .setPageSize(883849137)
                   .build();
           ApiFuture<Tenant> future = tenantServiceClient.listTenantsPagedCallable().futureCall(request);
           // Do something.
           for (Tenant element : future.get().iterateAll()) {
             // doThingsWith(element);
           }
         }
         
      • listTenantsCallable

        public final com.google.api.gax.rpc.UnaryCallable<ListTenantsRequest,​ListTenantsResponse> listTenantsCallable()
        Lists all tenants associated with the project.

        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 (TenantServiceClient tenantServiceClient = TenantServiceClient.create()) {
           ListTenantsRequest request =
               ListTenantsRequest.newBuilder()
                   .setParent(ProjectName.of("[PROJECT]").toString())
                   .setPageToken("pageToken873572522")
                   .setPageSize(883849137)
                   .build();
           while (true) {
             ListTenantsResponse response = tenantServiceClient.listTenantsCallable().call(request);
             for (Tenant element : response.getTenantsList()) {
               // doThingsWith(element);
             }
             String nextPageToken = response.getNextPageToken();
             if (!Strings.isNullOrEmpty(nextPageToken)) {
               request = request.toBuilder().setPageToken(nextPageToken).build();
             } else {
               break;
             }
           }
         }
         
      • 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