Class JobServiceClient

java.lang.Object
com.google.cloud.talent.v4beta1.JobServiceClient
All Implemented Interfaces:
BackgroundResource, AutoCloseable

@BetaApi @Generated("by gapic-generator-java") public class JobServiceClient extends Object implements BackgroundResource
Service Description: A service handles job management, including job CRUD, enumeration and search.

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 (JobServiceClient jobServiceClient = JobServiceClient.create()) {
   ProjectName parent = ProjectName.of("[PROJECT]");
   Job job = Job.newBuilder().build();
   Job response = jobServiceClient.createJob(parent, job);
 }
 

Note: close() needs to be called on the JobServiceClient 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

CreateJob

Creates a new job.

Typically, the job becomes searchable within 10 seconds, but it may take up to 5 minutes.

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

  • createJob(CreateJobRequest request)

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

  • createJob(ProjectName parent, Job job)

  • createJob(TenantName parent, Job job)

  • createJob(String parent, Job job)

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

  • createJobCallable()

BatchCreateJobs

Begins executing a batch create jobs operation.

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

  • batchCreateJobsAsync(BatchCreateJobsRequest request)

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

  • batchCreateJobsAsync(ProjectName parent, List<Job> jobs)

  • batchCreateJobsAsync(TenantName parent, List<Job> jobs)

  • batchCreateJobsAsync(String parent, List<Job> jobs)

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

  • batchCreateJobsOperationCallable()

  • batchCreateJobsCallable()

GetJob

Retrieves the specified job, whose status is OPEN or recently EXPIRED within the last 90 days.

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

  • getJob(GetJobRequest request)

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

  • getJob(JobName name)

  • getJob(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.

  • getJobCallable()

UpdateJob

Updates specified job.

Typically, updated contents become visible in search results within 10 seconds, but it may take up to 5 minutes.

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

  • updateJob(UpdateJobRequest request)

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

  • updateJob(Job job)

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

  • updateJobCallable()

BatchUpdateJobs

Begins executing a batch update jobs operation.

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

  • batchUpdateJobsAsync(BatchUpdateJobsRequest request)

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

  • batchUpdateJobsAsync(ProjectName parent, List<Job> jobs)

  • batchUpdateJobsAsync(TenantName parent, List<Job> jobs)

  • batchUpdateJobsAsync(String parent, List<Job> jobs)

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

  • batchUpdateJobsOperationCallable()

  • batchUpdateJobsCallable()

DeleteJob

Deletes the specified job.

Typically, the job becomes unsearchable within 10 seconds, but it may take up to 5 minutes.

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

  • deleteJob(DeleteJobRequest request)

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

  • deleteJob(JobName name)

  • deleteJob(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.

  • deleteJobCallable()

BatchDeleteJobs

Deletes a list of [Job][google.cloud.talent.v4beta1.Job]s by filter.

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

  • batchDeleteJobs(BatchDeleteJobsRequest request)

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

  • batchDeleteJobs(ProjectName parent, String filter)

  • batchDeleteJobs(TenantName parent, String filter)

  • batchDeleteJobs(String parent, String filter)

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

  • batchDeleteJobsCallable()

ListJobs

Lists jobs by filter.

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

  • listJobs(ListJobsRequest request)

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

  • listJobs(ProjectName parent, String filter)

  • listJobs(TenantName parent, String filter)

  • listJobs(String parent, String filter)

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

  • listJobsPagedCallable()

  • listJobsCallable()

SearchJobs

Searches for jobs using the provided [SearchJobsRequest][google.cloud.talent.v4beta1.SearchJobsRequest].

This call constrains the [visibility][google.cloud.talent.v4beta1.Job.visibility] of jobs present in the database, and only returns jobs that the caller has permission to search against.

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

  • searchJobs(SearchJobsRequest request)

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

  • searchJobsPagedCallable()

  • searchJobsCallable()

SearchJobsForAlert

Searches for jobs using the provided [SearchJobsRequest][google.cloud.talent.v4beta1.SearchJobsRequest].

This API call is intended for the use case of targeting passive job seekers (for example, job seekers who have signed up to receive email alerts about potential job opportunities), and has different algorithmic adjustments that are targeted to passive job seekers.

This call constrains the [visibility][google.cloud.talent.v4beta1.Job.visibility] of jobs present in the database, and only returns jobs the caller has permission to search against.

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

  • searchJobsForAlert(SearchJobsRequest request)

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

  • searchJobsForAlertPagedCallable()

  • searchJobsForAlertCallable()

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 JobServiceSettings 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
 JobServiceSettings jobServiceSettings =
     JobServiceSettings.newBuilder()
         .setCredentialsProvider(FixedCredentialsProvider.create(myCredentials))
         .build();
 JobServiceClient jobServiceClient = JobServiceClient.create(jobServiceSettings);
 

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
 JobServiceSettings jobServiceSettings =
     JobServiceSettings.newBuilder().setEndpoint(myEndpoint).build();
 JobServiceClient jobServiceClient = JobServiceClient.create(jobServiceSettings);
 

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
 JobServiceSettings jobServiceSettings = JobServiceSettings.newHttpJsonBuilder().build();
 JobServiceClient jobServiceClient = JobServiceClient.create(jobServiceSettings);
 

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

  • Constructor Details

    • JobServiceClient

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

      protected JobServiceClient(JobServiceStub stub)
  • Method Details

    • create

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

      public static final JobServiceClient create(JobServiceSettings settings) throws IOException
      Constructs an instance of JobServiceClient, 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 JobServiceClient create(JobServiceStub stub)
      Constructs an instance of JobServiceClient, using the given stub for making calls. This is for advanced usage - prefer using create(JobServiceSettings).
    • getSettings

      public final JobServiceSettings getSettings()
    • getStub

      public JobServiceStub 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.
    • createJob

      public final Job createJob(ProjectName parent, Job job)
      Creates a new job.

      Typically, the job becomes searchable within 10 seconds, but it may take up to 5 minutes.

      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 (JobServiceClient jobServiceClient = JobServiceClient.create()) {
         ProjectName parent = ProjectName.of("[PROJECT]");
         Job job = Job.newBuilder().build();
         Job response = jobServiceClient.createJob(parent, job);
       }
       
      Parameters:
      parent - Required. The resource name of the tenant under which the job is created.

      The format is "projects/{project_id}/tenants/{tenant_id}". For example, "projects/foo/tenant/bar". If tenant id is unspecified a default tenant is created. For example, "projects/foo".

      job - Required. The Job to be created.
      Throws:
      ApiException - if the remote call fails
    • createJob

      public final Job createJob(TenantName parent, Job job)
      Creates a new job.

      Typically, the job becomes searchable within 10 seconds, but it may take up to 5 minutes.

      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 (JobServiceClient jobServiceClient = JobServiceClient.create()) {
         TenantName parent = TenantName.of("[PROJECT]", "[TENANT]");
         Job job = Job.newBuilder().build();
         Job response = jobServiceClient.createJob(parent, job);
       }
       
      Parameters:
      parent - Required. The resource name of the tenant under which the job is created.

      The format is "projects/{project_id}/tenants/{tenant_id}". For example, "projects/foo/tenant/bar". If tenant id is unspecified a default tenant is created. For example, "projects/foo".

      job - Required. The Job to be created.
      Throws:
      ApiException - if the remote call fails
    • createJob

      public final Job createJob(String parent, Job job)
      Creates a new job.

      Typically, the job becomes searchable within 10 seconds, but it may take up to 5 minutes.

      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 (JobServiceClient jobServiceClient = JobServiceClient.create()) {
         String parent = TenantName.of("[PROJECT]", "[TENANT]").toString();
         Job job = Job.newBuilder().build();
         Job response = jobServiceClient.createJob(parent, job);
       }
       
      Parameters:
      parent - Required. The resource name of the tenant under which the job is created.

      The format is "projects/{project_id}/tenants/{tenant_id}". For example, "projects/foo/tenant/bar". If tenant id is unspecified a default tenant is created. For example, "projects/foo".

      job - Required. The Job to be created.
      Throws:
      ApiException - if the remote call fails
    • createJob

      public final Job createJob(CreateJobRequest request)
      Creates a new job.

      Typically, the job becomes searchable within 10 seconds, but it may take up to 5 minutes.

      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 (JobServiceClient jobServiceClient = JobServiceClient.create()) {
         CreateJobRequest request =
             CreateJobRequest.newBuilder()
                 .setParent(TenantName.of("[PROJECT]", "[TENANT]").toString())
                 .setJob(Job.newBuilder().build())
                 .build();
         Job response = jobServiceClient.createJob(request);
       }
       
      Parameters:
      request - The request object containing all of the parameters for the API call.
      Throws:
      ApiException - if the remote call fails
    • createJobCallable

      public final UnaryCallable<CreateJobRequest,Job> createJobCallable()
      Creates a new job.

      Typically, the job becomes searchable within 10 seconds, but it may take up to 5 minutes.

      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 (JobServiceClient jobServiceClient = JobServiceClient.create()) {
         CreateJobRequest request =
             CreateJobRequest.newBuilder()
                 .setParent(TenantName.of("[PROJECT]", "[TENANT]").toString())
                 .setJob(Job.newBuilder().build())
                 .build();
         ApiFuture<Job> future = jobServiceClient.createJobCallable().futureCall(request);
         // Do something.
         Job response = future.get();
       }
       
    • batchCreateJobsAsync

      public final OperationFuture<JobOperationResult,BatchOperationMetadata> batchCreateJobsAsync(ProjectName parent, List<Job> jobs)
      Begins executing a batch create jobs operation.

      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 (JobServiceClient jobServiceClient = JobServiceClient.create()) {
         ProjectName parent = ProjectName.of("[PROJECT]");
         List<Job> jobs = new ArrayList<>();
         JobOperationResult response = jobServiceClient.batchCreateJobsAsync(parent, jobs).get();
       }
       
      Parameters:
      parent - Required. The resource name of the tenant under which the job is created.

      The format is "projects/{project_id}/tenants/{tenant_id}". For example, "projects/foo/tenant/bar". If tenant id is unspecified, a default tenant is created. For example, "projects/foo".

      jobs - Required. The jobs to be created.
      Throws:
      ApiException - if the remote call fails
    • batchCreateJobsAsync

      public final OperationFuture<JobOperationResult,BatchOperationMetadata> batchCreateJobsAsync(TenantName parent, List<Job> jobs)
      Begins executing a batch create jobs operation.

      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 (JobServiceClient jobServiceClient = JobServiceClient.create()) {
         TenantName parent = TenantName.of("[PROJECT]", "[TENANT]");
         List<Job> jobs = new ArrayList<>();
         JobOperationResult response = jobServiceClient.batchCreateJobsAsync(parent, jobs).get();
       }
       
      Parameters:
      parent - Required. The resource name of the tenant under which the job is created.

      The format is "projects/{project_id}/tenants/{tenant_id}". For example, "projects/foo/tenant/bar". If tenant id is unspecified, a default tenant is created. For example, "projects/foo".

      jobs - Required. The jobs to be created.
      Throws:
      ApiException - if the remote call fails
    • batchCreateJobsAsync

      public final OperationFuture<JobOperationResult,BatchOperationMetadata> batchCreateJobsAsync(String parent, List<Job> jobs)
      Begins executing a batch create jobs operation.

      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 (JobServiceClient jobServiceClient = JobServiceClient.create()) {
         String parent = TenantName.of("[PROJECT]", "[TENANT]").toString();
         List<Job> jobs = new ArrayList<>();
         JobOperationResult response = jobServiceClient.batchCreateJobsAsync(parent, jobs).get();
       }
       
      Parameters:
      parent - Required. The resource name of the tenant under which the job is created.

      The format is "projects/{project_id}/tenants/{tenant_id}". For example, "projects/foo/tenant/bar". If tenant id is unspecified, a default tenant is created. For example, "projects/foo".

      jobs - Required. The jobs to be created.
      Throws:
      ApiException - if the remote call fails
    • batchCreateJobsAsync

      Begins executing a batch create jobs operation.

      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 (JobServiceClient jobServiceClient = JobServiceClient.create()) {
         BatchCreateJobsRequest request =
             BatchCreateJobsRequest.newBuilder()
                 .setParent(TenantName.of("[PROJECT]", "[TENANT]").toString())
                 .addAllJobs(new ArrayList<Job>())
                 .build();
         JobOperationResult response = jobServiceClient.batchCreateJobsAsync(request).get();
       }
       
      Parameters:
      request - The request object containing all of the parameters for the API call.
      Throws:
      ApiException - if the remote call fails
    • batchCreateJobsOperationCallable

      public final OperationCallable<BatchCreateJobsRequest,JobOperationResult,BatchOperationMetadata> batchCreateJobsOperationCallable()
      Begins executing a batch create jobs operation.

      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 (JobServiceClient jobServiceClient = JobServiceClient.create()) {
         BatchCreateJobsRequest request =
             BatchCreateJobsRequest.newBuilder()
                 .setParent(TenantName.of("[PROJECT]", "[TENANT]").toString())
                 .addAllJobs(new ArrayList<Job>())
                 .build();
         OperationFuture<JobOperationResult, BatchOperationMetadata> future =
             jobServiceClient.batchCreateJobsOperationCallable().futureCall(request);
         // Do something.
         JobOperationResult response = future.get();
       }
       
    • batchCreateJobsCallable

      public final UnaryCallable<BatchCreateJobsRequest,Operation> batchCreateJobsCallable()
      Begins executing a batch create jobs operation.

      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 (JobServiceClient jobServiceClient = JobServiceClient.create()) {
         BatchCreateJobsRequest request =
             BatchCreateJobsRequest.newBuilder()
                 .setParent(TenantName.of("[PROJECT]", "[TENANT]").toString())
                 .addAllJobs(new ArrayList<Job>())
                 .build();
         ApiFuture<Operation> future = jobServiceClient.batchCreateJobsCallable().futureCall(request);
         // Do something.
         Operation response = future.get();
       }
       
    • getJob

      public final Job getJob(JobName name)
      Retrieves the specified job, whose status is OPEN or recently EXPIRED within the last 90 days.

      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 (JobServiceClient jobServiceClient = JobServiceClient.create()) {
         JobName name = JobName.ofProjectTenantJobName("[PROJECT]", "[TENANT]", "[JOB]");
         Job response = jobServiceClient.getJob(name);
       }
       
      Parameters:
      name - Required. The resource name of the job to retrieve.

      The format is "projects/{project_id}/tenants/{tenant_id}/jobs/{job_id}". For example, "projects/foo/tenants/bar/jobs/baz".

      If tenant id is unspecified, the default tenant is used. For example, "projects/foo/jobs/bar".

      Throws:
      ApiException - if the remote call fails
    • getJob

      public final Job getJob(String name)
      Retrieves the specified job, whose status is OPEN or recently EXPIRED within the last 90 days.

      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 (JobServiceClient jobServiceClient = JobServiceClient.create()) {
         String name = JobName.ofProjectTenantJobName("[PROJECT]", "[TENANT]", "[JOB]").toString();
         Job response = jobServiceClient.getJob(name);
       }
       
      Parameters:
      name - Required. The resource name of the job to retrieve.

      The format is "projects/{project_id}/tenants/{tenant_id}/jobs/{job_id}". For example, "projects/foo/tenants/bar/jobs/baz".

      If tenant id is unspecified, the default tenant is used. For example, "projects/foo/jobs/bar".

      Throws:
      ApiException - if the remote call fails
    • getJob

      public final Job getJob(GetJobRequest request)
      Retrieves the specified job, whose status is OPEN or recently EXPIRED within the last 90 days.

      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 (JobServiceClient jobServiceClient = JobServiceClient.create()) {
         GetJobRequest request =
             GetJobRequest.newBuilder()
                 .setName(JobName.ofProjectTenantJobName("[PROJECT]", "[TENANT]", "[JOB]").toString())
                 .build();
         Job response = jobServiceClient.getJob(request);
       }
       
      Parameters:
      request - The request object containing all of the parameters for the API call.
      Throws:
      ApiException - if the remote call fails
    • getJobCallable

      public final UnaryCallable<GetJobRequest,Job> getJobCallable()
      Retrieves the specified job, whose status is OPEN or recently EXPIRED within the last 90 days.

      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 (JobServiceClient jobServiceClient = JobServiceClient.create()) {
         GetJobRequest request =
             GetJobRequest.newBuilder()
                 .setName(JobName.ofProjectTenantJobName("[PROJECT]", "[TENANT]", "[JOB]").toString())
                 .build();
         ApiFuture<Job> future = jobServiceClient.getJobCallable().futureCall(request);
         // Do something.
         Job response = future.get();
       }
       
    • updateJob

      public final Job updateJob(Job job)
      Updates specified job.

      Typically, updated contents become visible in search results within 10 seconds, but it may take up to 5 minutes.

      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 (JobServiceClient jobServiceClient = JobServiceClient.create()) {
         Job job = Job.newBuilder().build();
         Job response = jobServiceClient.updateJob(job);
       }
       
      Parameters:
      job - Required. The Job to be updated.
      Throws:
      ApiException - if the remote call fails
    • updateJob

      public final Job updateJob(UpdateJobRequest request)
      Updates specified job.

      Typically, updated contents become visible in search results within 10 seconds, but it may take up to 5 minutes.

      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 (JobServiceClient jobServiceClient = JobServiceClient.create()) {
         UpdateJobRequest request =
             UpdateJobRequest.newBuilder()
                 .setJob(Job.newBuilder().build())
                 .setUpdateMask(FieldMask.newBuilder().build())
                 .build();
         Job response = jobServiceClient.updateJob(request);
       }
       
      Parameters:
      request - The request object containing all of the parameters for the API call.
      Throws:
      ApiException - if the remote call fails
    • updateJobCallable

      public final UnaryCallable<UpdateJobRequest,Job> updateJobCallable()
      Updates specified job.

      Typically, updated contents become visible in search results within 10 seconds, but it may take up to 5 minutes.

      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 (JobServiceClient jobServiceClient = JobServiceClient.create()) {
         UpdateJobRequest request =
             UpdateJobRequest.newBuilder()
                 .setJob(Job.newBuilder().build())
                 .setUpdateMask(FieldMask.newBuilder().build())
                 .build();
         ApiFuture<Job> future = jobServiceClient.updateJobCallable().futureCall(request);
         // Do something.
         Job response = future.get();
       }
       
    • batchUpdateJobsAsync

      public final OperationFuture<JobOperationResult,BatchOperationMetadata> batchUpdateJobsAsync(ProjectName parent, List<Job> jobs)
      Begins executing a batch update jobs operation.

      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 (JobServiceClient jobServiceClient = JobServiceClient.create()) {
         ProjectName parent = ProjectName.of("[PROJECT]");
         List<Job> jobs = new ArrayList<>();
         JobOperationResult response = jobServiceClient.batchUpdateJobsAsync(parent, jobs).get();
       }
       
      Parameters:
      parent - Required. The resource name of the tenant under which the job is created.

      The format is "projects/{project_id}/tenants/{tenant_id}". For example, "projects/foo/tenant/bar". If tenant id is unspecified, a default tenant is created. For example, "projects/foo".

      jobs - Required. The jobs to be updated.
      Throws:
      ApiException - if the remote call fails
    • batchUpdateJobsAsync

      public final OperationFuture<JobOperationResult,BatchOperationMetadata> batchUpdateJobsAsync(TenantName parent, List<Job> jobs)
      Begins executing a batch update jobs operation.

      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 (JobServiceClient jobServiceClient = JobServiceClient.create()) {
         TenantName parent = TenantName.of("[PROJECT]", "[TENANT]");
         List<Job> jobs = new ArrayList<>();
         JobOperationResult response = jobServiceClient.batchUpdateJobsAsync(parent, jobs).get();
       }
       
      Parameters:
      parent - Required. The resource name of the tenant under which the job is created.

      The format is "projects/{project_id}/tenants/{tenant_id}". For example, "projects/foo/tenant/bar". If tenant id is unspecified, a default tenant is created. For example, "projects/foo".

      jobs - Required. The jobs to be updated.
      Throws:
      ApiException - if the remote call fails
    • batchUpdateJobsAsync

      public final OperationFuture<JobOperationResult,BatchOperationMetadata> batchUpdateJobsAsync(String parent, List<Job> jobs)
      Begins executing a batch update jobs operation.

      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 (JobServiceClient jobServiceClient = JobServiceClient.create()) {
         String parent = TenantName.of("[PROJECT]", "[TENANT]").toString();
         List<Job> jobs = new ArrayList<>();
         JobOperationResult response = jobServiceClient.batchUpdateJobsAsync(parent, jobs).get();
       }
       
      Parameters:
      parent - Required. The resource name of the tenant under which the job is created.

      The format is "projects/{project_id}/tenants/{tenant_id}". For example, "projects/foo/tenant/bar". If tenant id is unspecified, a default tenant is created. For example, "projects/foo".

      jobs - Required. The jobs to be updated.
      Throws:
      ApiException - if the remote call fails
    • batchUpdateJobsAsync

      Begins executing a batch update jobs operation.

      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 (JobServiceClient jobServiceClient = JobServiceClient.create()) {
         BatchUpdateJobsRequest request =
             BatchUpdateJobsRequest.newBuilder()
                 .setParent(TenantName.of("[PROJECT]", "[TENANT]").toString())
                 .addAllJobs(new ArrayList<Job>())
                 .setUpdateMask(FieldMask.newBuilder().build())
                 .build();
         JobOperationResult response = jobServiceClient.batchUpdateJobsAsync(request).get();
       }
       
      Parameters:
      request - The request object containing all of the parameters for the API call.
      Throws:
      ApiException - if the remote call fails
    • batchUpdateJobsOperationCallable

      public final OperationCallable<BatchUpdateJobsRequest,JobOperationResult,BatchOperationMetadata> batchUpdateJobsOperationCallable()
      Begins executing a batch update jobs operation.

      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 (JobServiceClient jobServiceClient = JobServiceClient.create()) {
         BatchUpdateJobsRequest request =
             BatchUpdateJobsRequest.newBuilder()
                 .setParent(TenantName.of("[PROJECT]", "[TENANT]").toString())
                 .addAllJobs(new ArrayList<Job>())
                 .setUpdateMask(FieldMask.newBuilder().build())
                 .build();
         OperationFuture<JobOperationResult, BatchOperationMetadata> future =
             jobServiceClient.batchUpdateJobsOperationCallable().futureCall(request);
         // Do something.
         JobOperationResult response = future.get();
       }
       
    • batchUpdateJobsCallable

      public final UnaryCallable<BatchUpdateJobsRequest,Operation> batchUpdateJobsCallable()
      Begins executing a batch update jobs operation.

      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 (JobServiceClient jobServiceClient = JobServiceClient.create()) {
         BatchUpdateJobsRequest request =
             BatchUpdateJobsRequest.newBuilder()
                 .setParent(TenantName.of("[PROJECT]", "[TENANT]").toString())
                 .addAllJobs(new ArrayList<Job>())
                 .setUpdateMask(FieldMask.newBuilder().build())
                 .build();
         ApiFuture<Operation> future = jobServiceClient.batchUpdateJobsCallable().futureCall(request);
         // Do something.
         Operation response = future.get();
       }
       
    • deleteJob

      public final void deleteJob(JobName name)
      Deletes the specified job.

      Typically, the job becomes unsearchable within 10 seconds, but it may take up to 5 minutes.

      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 (JobServiceClient jobServiceClient = JobServiceClient.create()) {
         JobName name = JobName.ofProjectTenantJobName("[PROJECT]", "[TENANT]", "[JOB]");
         jobServiceClient.deleteJob(name);
       }
       
      Parameters:
      name - Required. The resource name of the job to be deleted.

      The format is "projects/{project_id}/tenants/{tenant_id}/jobs/{job_id}". For example, "projects/foo/tenants/bar/jobs/baz".

      If tenant id is unspecified, the default tenant is used. For example, "projects/foo/jobs/bar".

      Throws:
      ApiException - if the remote call fails
    • deleteJob

      public final void deleteJob(String name)
      Deletes the specified job.

      Typically, the job becomes unsearchable within 10 seconds, but it may take up to 5 minutes.

      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 (JobServiceClient jobServiceClient = JobServiceClient.create()) {
         String name = JobName.ofProjectTenantJobName("[PROJECT]", "[TENANT]", "[JOB]").toString();
         jobServiceClient.deleteJob(name);
       }
       
      Parameters:
      name - Required. The resource name of the job to be deleted.

      The format is "projects/{project_id}/tenants/{tenant_id}/jobs/{job_id}". For example, "projects/foo/tenants/bar/jobs/baz".

      If tenant id is unspecified, the default tenant is used. For example, "projects/foo/jobs/bar".

      Throws:
      ApiException - if the remote call fails
    • deleteJob

      public final void deleteJob(DeleteJobRequest request)
      Deletes the specified job.

      Typically, the job becomes unsearchable within 10 seconds, but it may take up to 5 minutes.

      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 (JobServiceClient jobServiceClient = JobServiceClient.create()) {
         DeleteJobRequest request =
             DeleteJobRequest.newBuilder()
                 .setName(JobName.ofProjectTenantJobName("[PROJECT]", "[TENANT]", "[JOB]").toString())
                 .build();
         jobServiceClient.deleteJob(request);
       }
       
      Parameters:
      request - The request object containing all of the parameters for the API call.
      Throws:
      ApiException - if the remote call fails
    • deleteJobCallable

      public final UnaryCallable<DeleteJobRequest,com.google.protobuf.Empty> deleteJobCallable()
      Deletes the specified job.

      Typically, the job becomes unsearchable within 10 seconds, but it may take up to 5 minutes.

      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 (JobServiceClient jobServiceClient = JobServiceClient.create()) {
         DeleteJobRequest request =
             DeleteJobRequest.newBuilder()
                 .setName(JobName.ofProjectTenantJobName("[PROJECT]", "[TENANT]", "[JOB]").toString())
                 .build();
         ApiFuture<Empty> future = jobServiceClient.deleteJobCallable().futureCall(request);
         // Do something.
         future.get();
       }
       
    • batchDeleteJobs

      public final void batchDeleteJobs(ProjectName parent, String filter)
      Deletes a list of [Job][google.cloud.talent.v4beta1.Job]s by filter.

      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 (JobServiceClient jobServiceClient = JobServiceClient.create()) {
         ProjectName parent = ProjectName.of("[PROJECT]");
         String filter = "filter-1274492040";
         jobServiceClient.batchDeleteJobs(parent, filter);
       }
       
      Parameters:
      parent - Required. The resource name of the tenant under which the job is created.

      The format is "projects/{project_id}/tenants/{tenant_id}". For example, "projects/foo/tenant/bar". If tenant id is unspecified, a default tenant is created. For example, "projects/foo".

      filter - Required. The filter string specifies the jobs to be deleted.

      Supported operator: =, AND

      The fields eligible for filtering are:

      • `companyName` (Required)
      • `requisitionId` (Required)

      Sample Query: companyName = "projects/foo/companies/bar" AND requisitionId = "req-1"

      Throws:
      ApiException - if the remote call fails
    • batchDeleteJobs

      public final void batchDeleteJobs(TenantName parent, String filter)
      Deletes a list of [Job][google.cloud.talent.v4beta1.Job]s by filter.

      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 (JobServiceClient jobServiceClient = JobServiceClient.create()) {
         TenantName parent = TenantName.of("[PROJECT]", "[TENANT]");
         String filter = "filter-1274492040";
         jobServiceClient.batchDeleteJobs(parent, filter);
       }
       
      Parameters:
      parent - Required. The resource name of the tenant under which the job is created.

      The format is "projects/{project_id}/tenants/{tenant_id}". For example, "projects/foo/tenant/bar". If tenant id is unspecified, a default tenant is created. For example, "projects/foo".

      filter - Required. The filter string specifies the jobs to be deleted.

      Supported operator: =, AND

      The fields eligible for filtering are:

      • `companyName` (Required)
      • `requisitionId` (Required)

      Sample Query: companyName = "projects/foo/companies/bar" AND requisitionId = "req-1"

      Throws:
      ApiException - if the remote call fails
    • batchDeleteJobs

      public final void batchDeleteJobs(String parent, String filter)
      Deletes a list of [Job][google.cloud.talent.v4beta1.Job]s by filter.

      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 (JobServiceClient jobServiceClient = JobServiceClient.create()) {
         String parent = TenantName.of("[PROJECT]", "[TENANT]").toString();
         String filter = "filter-1274492040";
         jobServiceClient.batchDeleteJobs(parent, filter);
       }
       
      Parameters:
      parent - Required. The resource name of the tenant under which the job is created.

      The format is "projects/{project_id}/tenants/{tenant_id}". For example, "projects/foo/tenant/bar". If tenant id is unspecified, a default tenant is created. For example, "projects/foo".

      filter - Required. The filter string specifies the jobs to be deleted.

      Supported operator: =, AND

      The fields eligible for filtering are:

      • `companyName` (Required)
      • `requisitionId` (Required)

      Sample Query: companyName = "projects/foo/companies/bar" AND requisitionId = "req-1"

      Throws:
      ApiException - if the remote call fails
    • batchDeleteJobs

      public final void batchDeleteJobs(BatchDeleteJobsRequest request)
      Deletes a list of [Job][google.cloud.talent.v4beta1.Job]s by filter.

      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 (JobServiceClient jobServiceClient = JobServiceClient.create()) {
         BatchDeleteJobsRequest request =
             BatchDeleteJobsRequest.newBuilder()
                 .setParent(TenantName.of("[PROJECT]", "[TENANT]").toString())
                 .setFilter("filter-1274492040")
                 .build();
         jobServiceClient.batchDeleteJobs(request);
       }
       
      Parameters:
      request - The request object containing all of the parameters for the API call.
      Throws:
      ApiException - if the remote call fails
    • batchDeleteJobsCallable

      public final UnaryCallable<BatchDeleteJobsRequest,com.google.protobuf.Empty> batchDeleteJobsCallable()
      Deletes a list of [Job][google.cloud.talent.v4beta1.Job]s by filter.

      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 (JobServiceClient jobServiceClient = JobServiceClient.create()) {
         BatchDeleteJobsRequest request =
             BatchDeleteJobsRequest.newBuilder()
                 .setParent(TenantName.of("[PROJECT]", "[TENANT]").toString())
                 .setFilter("filter-1274492040")
                 .build();
         ApiFuture<Empty> future = jobServiceClient.batchDeleteJobsCallable().futureCall(request);
         // Do something.
         future.get();
       }
       
    • listJobs

      public final JobServiceClient.ListJobsPagedResponse listJobs(ProjectName parent, String filter)
      Lists jobs by filter.

      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 (JobServiceClient jobServiceClient = JobServiceClient.create()) {
         ProjectName parent = ProjectName.of("[PROJECT]");
         String filter = "filter-1274492040";
         for (Job element : jobServiceClient.listJobs(parent, filter).iterateAll()) {
           // doThingsWith(element);
         }
       }
       
      Parameters:
      parent - Required. The resource name of the tenant under which the job is created.

      The format is "projects/{project_id}/tenants/{tenant_id}". For example, "projects/foo/tenant/bar". If tenant id is unspecified, a default tenant is created. For example, "projects/foo".

      filter - Required. The filter string specifies the jobs to be enumerated.

      Supported operator: =, AND

      The fields eligible for filtering are:

      • `companyName`
      • `requisitionId`
      • `status` Available values: OPEN, EXPIRED, ALL. Defaults to OPEN if no value is specified.

      At least one of `companyName` and `requisitionId` must present or an INVALID_ARGUMENT error is thrown.

      Sample Query:

      • companyName = "projects/foo/tenants/bar/companies/baz"
      • companyName = "projects/foo/tenants/bar/companies/baz" AND requisitionId = "req-1"
      • companyName = "projects/foo/tenants/bar/companies/baz" AND status = "EXPIRED"
      • requisitionId = "req-1"
      • requisitionId = "req-1" AND status = "EXPIRED"
      Throws:
      ApiException - if the remote call fails
    • listJobs

      public final JobServiceClient.ListJobsPagedResponse listJobs(TenantName parent, String filter)
      Lists jobs by filter.

      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 (JobServiceClient jobServiceClient = JobServiceClient.create()) {
         TenantName parent = TenantName.of("[PROJECT]", "[TENANT]");
         String filter = "filter-1274492040";
         for (Job element : jobServiceClient.listJobs(parent, filter).iterateAll()) {
           // doThingsWith(element);
         }
       }
       
      Parameters:
      parent - Required. The resource name of the tenant under which the job is created.

      The format is "projects/{project_id}/tenants/{tenant_id}". For example, "projects/foo/tenant/bar". If tenant id is unspecified, a default tenant is created. For example, "projects/foo".

      filter - Required. The filter string specifies the jobs to be enumerated.

      Supported operator: =, AND

      The fields eligible for filtering are:

      • `companyName`
      • `requisitionId`
      • `status` Available values: OPEN, EXPIRED, ALL. Defaults to OPEN if no value is specified.

      At least one of `companyName` and `requisitionId` must present or an INVALID_ARGUMENT error is thrown.

      Sample Query:

      • companyName = "projects/foo/tenants/bar/companies/baz"
      • companyName = "projects/foo/tenants/bar/companies/baz" AND requisitionId = "req-1"
      • companyName = "projects/foo/tenants/bar/companies/baz" AND status = "EXPIRED"
      • requisitionId = "req-1"
      • requisitionId = "req-1" AND status = "EXPIRED"
      Throws:
      ApiException - if the remote call fails
    • listJobs

      public final JobServiceClient.ListJobsPagedResponse listJobs(String parent, String filter)
      Lists jobs by filter.

      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 (JobServiceClient jobServiceClient = JobServiceClient.create()) {
         String parent = TenantName.of("[PROJECT]", "[TENANT]").toString();
         String filter = "filter-1274492040";
         for (Job element : jobServiceClient.listJobs(parent, filter).iterateAll()) {
           // doThingsWith(element);
         }
       }
       
      Parameters:
      parent - Required. The resource name of the tenant under which the job is created.

      The format is "projects/{project_id}/tenants/{tenant_id}". For example, "projects/foo/tenant/bar". If tenant id is unspecified, a default tenant is created. For example, "projects/foo".

      filter - Required. The filter string specifies the jobs to be enumerated.

      Supported operator: =, AND

      The fields eligible for filtering are:

      • `companyName`
      • `requisitionId`
      • `status` Available values: OPEN, EXPIRED, ALL. Defaults to OPEN if no value is specified.

      At least one of `companyName` and `requisitionId` must present or an INVALID_ARGUMENT error is thrown.

      Sample Query:

      • companyName = "projects/foo/tenants/bar/companies/baz"
      • companyName = "projects/foo/tenants/bar/companies/baz" AND requisitionId = "req-1"
      • companyName = "projects/foo/tenants/bar/companies/baz" AND status = "EXPIRED"
      • requisitionId = "req-1"
      • requisitionId = "req-1" AND status = "EXPIRED"
      Throws:
      ApiException - if the remote call fails
    • listJobs

      Lists jobs by filter.

      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 (JobServiceClient jobServiceClient = JobServiceClient.create()) {
         ListJobsRequest request =
             ListJobsRequest.newBuilder()
                 .setParent(TenantName.of("[PROJECT]", "[TENANT]").toString())
                 .setFilter("filter-1274492040")
                 .setPageToken("pageToken873572522")
                 .setPageSize(883849137)
                 .setJobView(JobView.forNumber(0))
                 .build();
         for (Job element : jobServiceClient.listJobs(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
    • listJobsPagedCallable

      Lists jobs by filter.

      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 (JobServiceClient jobServiceClient = JobServiceClient.create()) {
         ListJobsRequest request =
             ListJobsRequest.newBuilder()
                 .setParent(TenantName.of("[PROJECT]", "[TENANT]").toString())
                 .setFilter("filter-1274492040")
                 .setPageToken("pageToken873572522")
                 .setPageSize(883849137)
                 .setJobView(JobView.forNumber(0))
                 .build();
         ApiFuture<Job> future = jobServiceClient.listJobsPagedCallable().futureCall(request);
         // Do something.
         for (Job element : future.get().iterateAll()) {
           // doThingsWith(element);
         }
       }
       
    • listJobsCallable

      public final UnaryCallable<ListJobsRequest,ListJobsResponse> listJobsCallable()
      Lists jobs by filter.

      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 (JobServiceClient jobServiceClient = JobServiceClient.create()) {
         ListJobsRequest request =
             ListJobsRequest.newBuilder()
                 .setParent(TenantName.of("[PROJECT]", "[TENANT]").toString())
                 .setFilter("filter-1274492040")
                 .setPageToken("pageToken873572522")
                 .setPageSize(883849137)
                 .setJobView(JobView.forNumber(0))
                 .build();
         while (true) {
           ListJobsResponse response = jobServiceClient.listJobsCallable().call(request);
           for (Job element : response.getJobsList()) {
             // doThingsWith(element);
           }
           String nextPageToken = response.getNextPageToken();
           if (!Strings.isNullOrEmpty(nextPageToken)) {
             request = request.toBuilder().setPageToken(nextPageToken).build();
           } else {
             break;
           }
         }
       }
       
    • searchJobs

      Searches for jobs using the provided [SearchJobsRequest][google.cloud.talent.v4beta1.SearchJobsRequest].

      This call constrains the [visibility][google.cloud.talent.v4beta1.Job.visibility] of jobs present in the database, and only returns jobs that the caller has permission to search against.

      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 (JobServiceClient jobServiceClient = JobServiceClient.create()) {
         SearchJobsRequest request =
             SearchJobsRequest.newBuilder()
                 .setParent(TenantName.of("[PROJECT]", "[TENANT]").toString())
                 .setRequestMetadata(RequestMetadata.newBuilder().build())
                 .setJobQuery(JobQuery.newBuilder().build())
                 .setEnableBroadening(true)
                 .setRequirePreciseResultSize(true)
                 .addAllHistogramQueries(new ArrayList<HistogramQuery>())
                 .setJobView(JobView.forNumber(0))
                 .setOffset(-1019779949)
                 .setPageSize(883849137)
                 .setPageToken("pageToken873572522")
                 .setOrderBy("orderBy-1207110587")
                 .setCustomRankingInfo(SearchJobsRequest.CustomRankingInfo.newBuilder().build())
                 .setDisableKeywordMatch(true)
                 .build();
         for (SearchJobsResponse.MatchingJob element :
             jobServiceClient.searchJobs(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
    • searchJobsPagedCallable

      Searches for jobs using the provided [SearchJobsRequest][google.cloud.talent.v4beta1.SearchJobsRequest].

      This call constrains the [visibility][google.cloud.talent.v4beta1.Job.visibility] of jobs present in the database, and only returns jobs that the caller has permission to search against.

      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 (JobServiceClient jobServiceClient = JobServiceClient.create()) {
         SearchJobsRequest request =
             SearchJobsRequest.newBuilder()
                 .setParent(TenantName.of("[PROJECT]", "[TENANT]").toString())
                 .setRequestMetadata(RequestMetadata.newBuilder().build())
                 .setJobQuery(JobQuery.newBuilder().build())
                 .setEnableBroadening(true)
                 .setRequirePreciseResultSize(true)
                 .addAllHistogramQueries(new ArrayList<HistogramQuery>())
                 .setJobView(JobView.forNumber(0))
                 .setOffset(-1019779949)
                 .setPageSize(883849137)
                 .setPageToken("pageToken873572522")
                 .setOrderBy("orderBy-1207110587")
                 .setCustomRankingInfo(SearchJobsRequest.CustomRankingInfo.newBuilder().build())
                 .setDisableKeywordMatch(true)
                 .build();
         ApiFuture<SearchJobsResponse.MatchingJob> future =
             jobServiceClient.searchJobsPagedCallable().futureCall(request);
         // Do something.
         for (SearchJobsResponse.MatchingJob element : future.get().iterateAll()) {
           // doThingsWith(element);
         }
       }
       
    • searchJobsCallable

      public final UnaryCallable<SearchJobsRequest,SearchJobsResponse> searchJobsCallable()
      Searches for jobs using the provided [SearchJobsRequest][google.cloud.talent.v4beta1.SearchJobsRequest].

      This call constrains the [visibility][google.cloud.talent.v4beta1.Job.visibility] of jobs present in the database, and only returns jobs that the caller has permission to search against.

      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 (JobServiceClient jobServiceClient = JobServiceClient.create()) {
         SearchJobsRequest request =
             SearchJobsRequest.newBuilder()
                 .setParent(TenantName.of("[PROJECT]", "[TENANT]").toString())
                 .setRequestMetadata(RequestMetadata.newBuilder().build())
                 .setJobQuery(JobQuery.newBuilder().build())
                 .setEnableBroadening(true)
                 .setRequirePreciseResultSize(true)
                 .addAllHistogramQueries(new ArrayList<HistogramQuery>())
                 .setJobView(JobView.forNumber(0))
                 .setOffset(-1019779949)
                 .setPageSize(883849137)
                 .setPageToken("pageToken873572522")
                 .setOrderBy("orderBy-1207110587")
                 .setCustomRankingInfo(SearchJobsRequest.CustomRankingInfo.newBuilder().build())
                 .setDisableKeywordMatch(true)
                 .build();
         while (true) {
           SearchJobsResponse response = jobServiceClient.searchJobsCallable().call(request);
           for (SearchJobsResponse.MatchingJob element : response.getMatchingJobsList()) {
             // doThingsWith(element);
           }
           String nextPageToken = response.getNextPageToken();
           if (!Strings.isNullOrEmpty(nextPageToken)) {
             request = request.toBuilder().setPageToken(nextPageToken).build();
           } else {
             break;
           }
         }
       }
       
    • searchJobsForAlert

      public final JobServiceClient.SearchJobsForAlertPagedResponse searchJobsForAlert(SearchJobsRequest request)
      Searches for jobs using the provided [SearchJobsRequest][google.cloud.talent.v4beta1.SearchJobsRequest].

      This API call is intended for the use case of targeting passive job seekers (for example, job seekers who have signed up to receive email alerts about potential job opportunities), and has different algorithmic adjustments that are targeted to passive job seekers.

      This call constrains the [visibility][google.cloud.talent.v4beta1.Job.visibility] of jobs present in the database, and only returns jobs the caller has permission to search against.

      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 (JobServiceClient jobServiceClient = JobServiceClient.create()) {
         SearchJobsRequest request =
             SearchJobsRequest.newBuilder()
                 .setParent(TenantName.of("[PROJECT]", "[TENANT]").toString())
                 .setRequestMetadata(RequestMetadata.newBuilder().build())
                 .setJobQuery(JobQuery.newBuilder().build())
                 .setEnableBroadening(true)
                 .setRequirePreciseResultSize(true)
                 .addAllHistogramQueries(new ArrayList<HistogramQuery>())
                 .setJobView(JobView.forNumber(0))
                 .setOffset(-1019779949)
                 .setPageSize(883849137)
                 .setPageToken("pageToken873572522")
                 .setOrderBy("orderBy-1207110587")
                 .setCustomRankingInfo(SearchJobsRequest.CustomRankingInfo.newBuilder().build())
                 .setDisableKeywordMatch(true)
                 .build();
         for (SearchJobsResponse.MatchingJob element :
             jobServiceClient.searchJobsForAlert(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
    • searchJobsForAlertPagedCallable

      public final UnaryCallable<SearchJobsRequest,JobServiceClient.SearchJobsForAlertPagedResponse> searchJobsForAlertPagedCallable()
      Searches for jobs using the provided [SearchJobsRequest][google.cloud.talent.v4beta1.SearchJobsRequest].

      This API call is intended for the use case of targeting passive job seekers (for example, job seekers who have signed up to receive email alerts about potential job opportunities), and has different algorithmic adjustments that are targeted to passive job seekers.

      This call constrains the [visibility][google.cloud.talent.v4beta1.Job.visibility] of jobs present in the database, and only returns jobs the caller has permission to search against.

      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 (JobServiceClient jobServiceClient = JobServiceClient.create()) {
         SearchJobsRequest request =
             SearchJobsRequest.newBuilder()
                 .setParent(TenantName.of("[PROJECT]", "[TENANT]").toString())
                 .setRequestMetadata(RequestMetadata.newBuilder().build())
                 .setJobQuery(JobQuery.newBuilder().build())
                 .setEnableBroadening(true)
                 .setRequirePreciseResultSize(true)
                 .addAllHistogramQueries(new ArrayList<HistogramQuery>())
                 .setJobView(JobView.forNumber(0))
                 .setOffset(-1019779949)
                 .setPageSize(883849137)
                 .setPageToken("pageToken873572522")
                 .setOrderBy("orderBy-1207110587")
                 .setCustomRankingInfo(SearchJobsRequest.CustomRankingInfo.newBuilder().build())
                 .setDisableKeywordMatch(true)
                 .build();
         ApiFuture<SearchJobsResponse.MatchingJob> future =
             jobServiceClient.searchJobsForAlertPagedCallable().futureCall(request);
         // Do something.
         for (SearchJobsResponse.MatchingJob element : future.get().iterateAll()) {
           // doThingsWith(element);
         }
       }
       
    • searchJobsForAlertCallable

      public final UnaryCallable<SearchJobsRequest,SearchJobsResponse> searchJobsForAlertCallable()
      Searches for jobs using the provided [SearchJobsRequest][google.cloud.talent.v4beta1.SearchJobsRequest].

      This API call is intended for the use case of targeting passive job seekers (for example, job seekers who have signed up to receive email alerts about potential job opportunities), and has different algorithmic adjustments that are targeted to passive job seekers.

      This call constrains the [visibility][google.cloud.talent.v4beta1.Job.visibility] of jobs present in the database, and only returns jobs the caller has permission to search against.

      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 (JobServiceClient jobServiceClient = JobServiceClient.create()) {
         SearchJobsRequest request =
             SearchJobsRequest.newBuilder()
                 .setParent(TenantName.of("[PROJECT]", "[TENANT]").toString())
                 .setRequestMetadata(RequestMetadata.newBuilder().build())
                 .setJobQuery(JobQuery.newBuilder().build())
                 .setEnableBroadening(true)
                 .setRequirePreciseResultSize(true)
                 .addAllHistogramQueries(new ArrayList<HistogramQuery>())
                 .setJobView(JobView.forNumber(0))
                 .setOffset(-1019779949)
                 .setPageSize(883849137)
                 .setPageToken("pageToken873572522")
                 .setOrderBy("orderBy-1207110587")
                 .setCustomRankingInfo(SearchJobsRequest.CustomRankingInfo.newBuilder().build())
                 .setDisableKeywordMatch(true)
                 .build();
         while (true) {
           SearchJobsResponse response = jobServiceClient.searchJobsForAlertCallable().call(request);
           for (SearchJobsResponse.MatchingJob element : response.getMatchingJobsList()) {
             // doThingsWith(element);
           }
           String nextPageToken = response.getNextPageToken();
           if (!Strings.isNullOrEmpty(nextPageToken)) {
             request = request.toBuilder().setPageToken(nextPageToken).build();
           } else {
             break;
           }
         }
       }
       
    • 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