google-cloud-talent 0.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +7 -0
- data/.yardopts +9 -0
- data/LICENSE +201 -0
- data/README.md +69 -0
- data/lib/google/cloud/talent.rb +456 -0
- data/lib/google/cloud/talent/v4beta1.rb +484 -0
- data/lib/google/cloud/talent/v4beta1/batch_pb.rb +21 -0
- data/lib/google/cloud/talent/v4beta1/common_pb.rb +264 -0
- data/lib/google/cloud/talent/v4beta1/company_pb.rb +39 -0
- data/lib/google/cloud/talent/v4beta1/company_service_client.rb +479 -0
- data/lib/google/cloud/talent/v4beta1/company_service_client_config.json +51 -0
- data/lib/google/cloud/talent/v4beta1/company_service_pb.rb +53 -0
- data/lib/google/cloud/talent/v4beta1/company_service_services_pb.rb +56 -0
- data/lib/google/cloud/talent/v4beta1/completion_client.rb +303 -0
- data/lib/google/cloud/talent/v4beta1/completion_client_config.json +31 -0
- data/lib/google/cloud/talent/v4beta1/completion_service_pb.rb +53 -0
- data/lib/google/cloud/talent/v4beta1/completion_service_services_pb.rb +48 -0
- data/lib/google/cloud/talent/v4beta1/credentials.rb +42 -0
- data/lib/google/cloud/talent/v4beta1/doc/google/cloud/talent/v4beta1/common.rb +890 -0
- data/lib/google/cloud/talent/v4beta1/doc/google/cloud/talent/v4beta1/company.rb +125 -0
- data/lib/google/cloud/talent/v4beta1/doc/google/cloud/talent/v4beta1/company_service.rb +130 -0
- data/lib/google/cloud/talent/v4beta1/doc/google/cloud/talent/v4beta1/completion_service.rb +153 -0
- data/lib/google/cloud/talent/v4beta1/doc/google/cloud/talent/v4beta1/event.rb +252 -0
- data/lib/google/cloud/talent/v4beta1/doc/google/cloud/talent/v4beta1/event_service.rb +34 -0
- data/lib/google/cloud/talent/v4beta1/doc/google/cloud/talent/v4beta1/filters.rb +853 -0
- data/lib/google/cloud/talent/v4beta1/doc/google/cloud/talent/v4beta1/histogram.rb +56 -0
- data/lib/google/cloud/talent/v4beta1/doc/google/cloud/talent/v4beta1/job.rb +409 -0
- data/lib/google/cloud/talent/v4beta1/doc/google/cloud/talent/v4beta1/job_service.rb +732 -0
- data/lib/google/cloud/talent/v4beta1/doc/google/cloud/talent/v4beta1/profile.rb +1125 -0
- data/lib/google/cloud/talent/v4beta1/doc/google/cloud/talent/v4beta1/profile_service.rb +392 -0
- data/lib/google/cloud/talent/v4beta1/doc/google/cloud/talent/v4beta1/resume_service.rb +98 -0
- data/lib/google/cloud/talent/v4beta1/doc/google/cloud/talent/v4beta1/tenant.rb +68 -0
- data/lib/google/cloud/talent/v4beta1/doc/google/cloud/talent/v4beta1/tenant_service.rb +119 -0
- data/lib/google/cloud/talent/v4beta1/doc/google/protobuf/duration.rb +91 -0
- data/lib/google/cloud/talent/v4beta1/doc/google/protobuf/empty.rb +29 -0
- data/lib/google/cloud/talent/v4beta1/doc/google/protobuf/field_mask.rb +230 -0
- data/lib/google/cloud/talent/v4beta1/doc/google/protobuf/timestamp.rb +109 -0
- data/lib/google/cloud/talent/v4beta1/doc/google/protobuf/wrappers.rb +34 -0
- data/lib/google/cloud/talent/v4beta1/doc/google/type/date.rb +39 -0
- data/lib/google/cloud/talent/v4beta1/doc/google/type/latlng.rb +65 -0
- data/lib/google/cloud/talent/v4beta1/doc/google/type/money.rb +36 -0
- data/lib/google/cloud/talent/v4beta1/doc/google/type/postal_address.rb +126 -0
- data/lib/google/cloud/talent/v4beta1/doc/google/type/timeofday.rb +38 -0
- data/lib/google/cloud/talent/v4beta1/event_pb.rb +75 -0
- data/lib/google/cloud/talent/v4beta1/event_service_client.rb +239 -0
- data/lib/google/cloud/talent/v4beta1/event_service_client_config.json +31 -0
- data/lib/google/cloud/talent/v4beta1/event_service_pb.rb +24 -0
- data/lib/google/cloud/talent/v4beta1/event_service_services_pb.rb +53 -0
- data/lib/google/cloud/talent/v4beta1/filters_pb.rb +182 -0
- data/lib/google/cloud/talent/v4beta1/helpers.rb +90 -0
- data/lib/google/cloud/talent/v4beta1/histogram_pb.rb +28 -0
- data/lib/google/cloud/talent/v4beta1/job_pb.rb +69 -0
- data/lib/google/cloud/talent/v4beta1/job_service_client.rb +1295 -0
- data/lib/google/cloud/talent/v4beta1/job_service_client_config.json +66 -0
- data/lib/google/cloud/talent/v4beta1/job_service_pb.rb +142 -0
- data/lib/google/cloud/talent/v4beta1/job_service_services_pb.rb +88 -0
- data/lib/google/cloud/talent/v4beta1/profile_pb.rb +249 -0
- data/lib/google/cloud/talent/v4beta1/profile_service_client.rb +757 -0
- data/lib/google/cloud/talent/v4beta1/profile_service_client_config.json +56 -0
- data/lib/google/cloud/talent/v4beta1/profile_service_pb.rb +81 -0
- data/lib/google/cloud/talent/v4beta1/profile_service_services_pb.rb +65 -0
- data/lib/google/cloud/talent/v4beta1/resume_service_client.rb +296 -0
- data/lib/google/cloud/talent/v4beta1/resume_service_client_config.json +31 -0
- data/lib/google/cloud/talent/v4beta1/resume_service_pb.rb +37 -0
- data/lib/google/cloud/talent/v4beta1/resume_service_services_pb.rb +75 -0
- data/lib/google/cloud/talent/v4beta1/tenant_pb.rb +31 -0
- data/lib/google/cloud/talent/v4beta1/tenant_service_client.rb +466 -0
- data/lib/google/cloud/talent/v4beta1/tenant_service_client_config.json +51 -0
- data/lib/google/cloud/talent/v4beta1/tenant_service_pb.rb +52 -0
- data/lib/google/cloud/talent/v4beta1/tenant_service_services_pb.rb +55 -0
- metadata +197 -0
|
@@ -0,0 +1,90 @@
|
|
|
1
|
+
# Copyright 2018 Google LLC
|
|
2
|
+
#
|
|
3
|
+
# Licensed under the Apache License, Version 2.0 (the "License");
|
|
4
|
+
# you may not use this file except in compliance with the License.
|
|
5
|
+
# You may obtain a copy of the License at
|
|
6
|
+
#
|
|
7
|
+
# https://www.apache.org/licenses/LICENSE-2.0
|
|
8
|
+
#
|
|
9
|
+
# Unless required by applicable law or agreed to in writing, software
|
|
10
|
+
# distributed under the License is distributed on an "AS IS" BASIS,
|
|
11
|
+
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
12
|
+
# See the License for the specific language governing permissions and
|
|
13
|
+
# # limitations under the License.
|
|
14
|
+
module Google
|
|
15
|
+
module Cloud
|
|
16
|
+
module Talent
|
|
17
|
+
module V4beta1
|
|
18
|
+
class CompanyServiceClient
|
|
19
|
+
# Alias for Google::Cloud::Talent::V4beta1::CompanyServiceClient.company_path.
|
|
20
|
+
# @param project [String]
|
|
21
|
+
# @param company [String]
|
|
22
|
+
# @return [String]
|
|
23
|
+
def company_path project, company
|
|
24
|
+
self.class.company_path project, company
|
|
25
|
+
end
|
|
26
|
+
|
|
27
|
+
# Alias for Google::Cloud::Talent::V4beta1::CompanyServiceClient.project_path.
|
|
28
|
+
# @param project [String]
|
|
29
|
+
# @return [String]
|
|
30
|
+
def project_path project
|
|
31
|
+
self.class.project_path project
|
|
32
|
+
end
|
|
33
|
+
end
|
|
34
|
+
|
|
35
|
+
class JobServiceClient
|
|
36
|
+
# Alias for Google::Cloud::Talent::V4beta1::JobServiceClient.job_path.
|
|
37
|
+
# @param project [String]
|
|
38
|
+
# @param jobs [String]
|
|
39
|
+
# @return [String]
|
|
40
|
+
def job_path project, jobs
|
|
41
|
+
self.class.job_path project, jobs
|
|
42
|
+
end
|
|
43
|
+
|
|
44
|
+
# Alias for Google::Cloud::Talent::V4beta1::JobServiceClient.project_path.
|
|
45
|
+
# @param project [String]
|
|
46
|
+
# @return [String]
|
|
47
|
+
def project_path project
|
|
48
|
+
self.class.project_path project
|
|
49
|
+
end
|
|
50
|
+
end
|
|
51
|
+
|
|
52
|
+
class ProfileServiceClient
|
|
53
|
+
# Alias for Google::Cloud::Talent::V4beta1::ProfileServiceClient.profile_path.
|
|
54
|
+
# @param project [String]
|
|
55
|
+
# @param tenant [String]
|
|
56
|
+
# @param profile [String]
|
|
57
|
+
# @return [String]
|
|
58
|
+
def profile_path project, tenant, profile
|
|
59
|
+
self.class.profile_path project, tenant, profile
|
|
60
|
+
end
|
|
61
|
+
|
|
62
|
+
# Alias for Google::Cloud::Talent::V4beta1::ProfileServiceClient.tenant_path.
|
|
63
|
+
# @param project [String]
|
|
64
|
+
# @param tenant [String]
|
|
65
|
+
# @return [String]
|
|
66
|
+
def tenant_path project, tenant
|
|
67
|
+
self.class.tenant_path project, tenant
|
|
68
|
+
end
|
|
69
|
+
end
|
|
70
|
+
|
|
71
|
+
class TenantServiceClient
|
|
72
|
+
# Alias for Google::Cloud::Talent::V4beta1::TenantServiceClient.project_path.
|
|
73
|
+
# @param project [String]
|
|
74
|
+
# @return [String]
|
|
75
|
+
def project_path project
|
|
76
|
+
self.class.project_path project
|
|
77
|
+
end
|
|
78
|
+
|
|
79
|
+
# Alias for Google::Cloud::Talent::V4beta1::TenantServiceClient.tenant_path.
|
|
80
|
+
# @param project [String]
|
|
81
|
+
# @param tenant [String]
|
|
82
|
+
# @return [String]
|
|
83
|
+
def tenant_path project, tenant
|
|
84
|
+
self.class.tenant_path project, tenant
|
|
85
|
+
end
|
|
86
|
+
end
|
|
87
|
+
end
|
|
88
|
+
end
|
|
89
|
+
end
|
|
90
|
+
end
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
# Generated by the protocol buffer compiler. DO NOT EDIT!
|
|
2
|
+
# source: google/cloud/talent/v4beta1/histogram.proto
|
|
3
|
+
|
|
4
|
+
|
|
5
|
+
require 'google/protobuf'
|
|
6
|
+
|
|
7
|
+
require 'google/api/annotations_pb'
|
|
8
|
+
require 'google/protobuf/wrappers_pb'
|
|
9
|
+
Google::Protobuf::DescriptorPool.generated_pool.build do
|
|
10
|
+
add_message "google.cloud.talent.v4beta1.HistogramQuery" do
|
|
11
|
+
optional :histogram_query, :string, 1
|
|
12
|
+
end
|
|
13
|
+
add_message "google.cloud.talent.v4beta1.HistogramQueryResult" do
|
|
14
|
+
optional :histogram_query, :string, 1
|
|
15
|
+
map :histogram, :string, :int64, 2
|
|
16
|
+
end
|
|
17
|
+
end
|
|
18
|
+
|
|
19
|
+
module Google
|
|
20
|
+
module Cloud
|
|
21
|
+
module Talent
|
|
22
|
+
module V4beta1
|
|
23
|
+
HistogramQuery = Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.talent.v4beta1.HistogramQuery").msgclass
|
|
24
|
+
HistogramQueryResult = Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.talent.v4beta1.HistogramQueryResult").msgclass
|
|
25
|
+
end
|
|
26
|
+
end
|
|
27
|
+
end
|
|
28
|
+
end
|
|
@@ -0,0 +1,69 @@
|
|
|
1
|
+
# Generated by the protocol buffer compiler. DO NOT EDIT!
|
|
2
|
+
# source: google/cloud/talent/v4beta1/job.proto
|
|
3
|
+
|
|
4
|
+
|
|
5
|
+
require 'google/protobuf'
|
|
6
|
+
|
|
7
|
+
require 'google/api/annotations_pb'
|
|
8
|
+
require 'google/cloud/talent/v4beta1/common_pb'
|
|
9
|
+
require 'google/protobuf/timestamp_pb'
|
|
10
|
+
Google::Protobuf::DescriptorPool.generated_pool.build do
|
|
11
|
+
add_message "google.cloud.talent.v4beta1.Job" do
|
|
12
|
+
optional :name, :string, 1
|
|
13
|
+
optional :company_name, :string, 2
|
|
14
|
+
optional :requisition_id, :string, 3
|
|
15
|
+
optional :title, :string, 4
|
|
16
|
+
optional :description, :string, 5
|
|
17
|
+
repeated :addresses, :string, 6
|
|
18
|
+
optional :application_info, :message, 7, "google.cloud.talent.v4beta1.Job.ApplicationInfo"
|
|
19
|
+
repeated :job_benefits, :enum, 8, "google.cloud.talent.v4beta1.JobBenefit"
|
|
20
|
+
optional :compensation_info, :message, 9, "google.cloud.talent.v4beta1.CompensationInfo"
|
|
21
|
+
map :custom_attributes, :string, :message, 10, "google.cloud.talent.v4beta1.CustomAttribute"
|
|
22
|
+
repeated :degree_types, :enum, 11, "google.cloud.talent.v4beta1.DegreeType"
|
|
23
|
+
optional :department, :string, 12
|
|
24
|
+
repeated :employment_types, :enum, 13, "google.cloud.talent.v4beta1.EmploymentType"
|
|
25
|
+
optional :incentives, :string, 14
|
|
26
|
+
optional :language_code, :string, 15
|
|
27
|
+
optional :job_level, :enum, 16, "google.cloud.talent.v4beta1.JobLevel"
|
|
28
|
+
optional :promotion_value, :int32, 17
|
|
29
|
+
optional :qualifications, :string, 18
|
|
30
|
+
optional :responsibilities, :string, 19
|
|
31
|
+
optional :posting_region, :enum, 20, "google.cloud.talent.v4beta1.PostingRegion"
|
|
32
|
+
optional :visibility, :enum, 21, "google.cloud.talent.v4beta1.Visibility"
|
|
33
|
+
optional :job_start_time, :message, 22, "google.protobuf.Timestamp"
|
|
34
|
+
optional :job_end_time, :message, 23, "google.protobuf.Timestamp"
|
|
35
|
+
optional :posting_publish_time, :message, 24, "google.protobuf.Timestamp"
|
|
36
|
+
optional :posting_expire_time, :message, 25, "google.protobuf.Timestamp"
|
|
37
|
+
optional :posting_create_time, :message, 26, "google.protobuf.Timestamp"
|
|
38
|
+
optional :posting_update_time, :message, 27, "google.protobuf.Timestamp"
|
|
39
|
+
optional :company_display_name, :string, 28
|
|
40
|
+
optional :derived_info, :message, 29, "google.cloud.talent.v4beta1.Job.DerivedInfo"
|
|
41
|
+
optional :processing_options, :message, 30, "google.cloud.talent.v4beta1.Job.ProcessingOptions"
|
|
42
|
+
end
|
|
43
|
+
add_message "google.cloud.talent.v4beta1.Job.ApplicationInfo" do
|
|
44
|
+
repeated :emails, :string, 1
|
|
45
|
+
optional :instruction, :string, 2
|
|
46
|
+
repeated :uris, :string, 3
|
|
47
|
+
end
|
|
48
|
+
add_message "google.cloud.talent.v4beta1.Job.DerivedInfo" do
|
|
49
|
+
repeated :locations, :message, 1, "google.cloud.talent.v4beta1.Location"
|
|
50
|
+
repeated :job_categories, :enum, 3, "google.cloud.talent.v4beta1.JobCategory"
|
|
51
|
+
end
|
|
52
|
+
add_message "google.cloud.talent.v4beta1.Job.ProcessingOptions" do
|
|
53
|
+
optional :disable_street_address_resolution, :bool, 1
|
|
54
|
+
optional :html_sanitization, :enum, 2, "google.cloud.talent.v4beta1.HtmlSanitization"
|
|
55
|
+
end
|
|
56
|
+
end
|
|
57
|
+
|
|
58
|
+
module Google
|
|
59
|
+
module Cloud
|
|
60
|
+
module Talent
|
|
61
|
+
module V4beta1
|
|
62
|
+
Job = Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.talent.v4beta1.Job").msgclass
|
|
63
|
+
Job::ApplicationInfo = Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.talent.v4beta1.Job.ApplicationInfo").msgclass
|
|
64
|
+
Job::DerivedInfo = Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.talent.v4beta1.Job.DerivedInfo").msgclass
|
|
65
|
+
Job::ProcessingOptions = Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.talent.v4beta1.Job.ProcessingOptions").msgclass
|
|
66
|
+
end
|
|
67
|
+
end
|
|
68
|
+
end
|
|
69
|
+
end
|
|
@@ -0,0 +1,1295 @@
|
|
|
1
|
+
# Copyright 2019 Google LLC
|
|
2
|
+
#
|
|
3
|
+
# Licensed under the Apache License, Version 2.0 (the "License");
|
|
4
|
+
# you may not use this file except in compliance with the License.
|
|
5
|
+
# You may obtain a copy of the License at
|
|
6
|
+
#
|
|
7
|
+
# https://www.apache.org/licenses/LICENSE-2.0
|
|
8
|
+
#
|
|
9
|
+
# Unless required by applicable law or agreed to in writing, software
|
|
10
|
+
# distributed under the License is distributed on an "AS IS" BASIS,
|
|
11
|
+
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
12
|
+
# See the License for the specific language governing permissions and
|
|
13
|
+
# limitations under the License.
|
|
14
|
+
#
|
|
15
|
+
# EDITING INSTRUCTIONS
|
|
16
|
+
# This file was generated from the file
|
|
17
|
+
# https://github.com/googleapis/googleapis/blob/master/google/cloud/talent/v4beta1/job_service.proto,
|
|
18
|
+
# and updates to that file get reflected here through a refresh process.
|
|
19
|
+
# For the short term, the refresh process will only be runnable by Google
|
|
20
|
+
# engineers.
|
|
21
|
+
|
|
22
|
+
|
|
23
|
+
require "json"
|
|
24
|
+
require "pathname"
|
|
25
|
+
|
|
26
|
+
require "google/gax"
|
|
27
|
+
|
|
28
|
+
require "google/cloud/talent/v4beta1/job_service_pb"
|
|
29
|
+
require "google/cloud/talent/v4beta1/credentials"
|
|
30
|
+
|
|
31
|
+
module Google
|
|
32
|
+
module Cloud
|
|
33
|
+
module Talent
|
|
34
|
+
module V4beta1
|
|
35
|
+
# A service handles job management, including job CRUD, enumeration and search.
|
|
36
|
+
#
|
|
37
|
+
# @!attribute [r] job_service_stub
|
|
38
|
+
# @return [Google::Cloud::Talent::V4beta1::JobService::Stub]
|
|
39
|
+
class JobServiceClient
|
|
40
|
+
# @private
|
|
41
|
+
attr_reader :job_service_stub
|
|
42
|
+
|
|
43
|
+
# The default address of the service.
|
|
44
|
+
SERVICE_ADDRESS = "jobs.googleapis.com".freeze
|
|
45
|
+
|
|
46
|
+
# The default port of the service.
|
|
47
|
+
DEFAULT_SERVICE_PORT = 443
|
|
48
|
+
|
|
49
|
+
# The default set of gRPC interceptors.
|
|
50
|
+
GRPC_INTERCEPTORS = []
|
|
51
|
+
|
|
52
|
+
DEFAULT_TIMEOUT = 30
|
|
53
|
+
|
|
54
|
+
PAGE_DESCRIPTORS = {
|
|
55
|
+
"list_jobs" => Google::Gax::PageDescriptor.new(
|
|
56
|
+
"page_token",
|
|
57
|
+
"next_page_token",
|
|
58
|
+
"jobs"),
|
|
59
|
+
"search_jobs" => Google::Gax::PageDescriptor.new(
|
|
60
|
+
"page_token",
|
|
61
|
+
"next_page_token",
|
|
62
|
+
"matching_jobs"),
|
|
63
|
+
"search_jobs_for_alert" => Google::Gax::PageDescriptor.new(
|
|
64
|
+
"page_token",
|
|
65
|
+
"next_page_token",
|
|
66
|
+
"matching_jobs")
|
|
67
|
+
}.freeze
|
|
68
|
+
|
|
69
|
+
private_constant :PAGE_DESCRIPTORS
|
|
70
|
+
|
|
71
|
+
# The scopes needed to make gRPC calls to all of the methods defined in
|
|
72
|
+
# this service.
|
|
73
|
+
ALL_SCOPES = [
|
|
74
|
+
"https://www.googleapis.com/auth/cloud-platform",
|
|
75
|
+
"https://www.googleapis.com/auth/jobs"
|
|
76
|
+
].freeze
|
|
77
|
+
|
|
78
|
+
|
|
79
|
+
PROJECT_PATH_TEMPLATE = Google::Gax::PathTemplate.new(
|
|
80
|
+
"projects/{project}"
|
|
81
|
+
)
|
|
82
|
+
|
|
83
|
+
private_constant :PROJECT_PATH_TEMPLATE
|
|
84
|
+
|
|
85
|
+
JOB_PATH_TEMPLATE = Google::Gax::PathTemplate.new(
|
|
86
|
+
"projects/{project}/jobs/{jobs}"
|
|
87
|
+
)
|
|
88
|
+
|
|
89
|
+
private_constant :JOB_PATH_TEMPLATE
|
|
90
|
+
|
|
91
|
+
# Returns a fully-qualified project resource name string.
|
|
92
|
+
# @param project [String]
|
|
93
|
+
# @return [String]
|
|
94
|
+
def self.project_path project
|
|
95
|
+
PROJECT_PATH_TEMPLATE.render(
|
|
96
|
+
:"project" => project
|
|
97
|
+
)
|
|
98
|
+
end
|
|
99
|
+
|
|
100
|
+
# Returns a fully-qualified job resource name string.
|
|
101
|
+
# @param project [String]
|
|
102
|
+
# @param jobs [String]
|
|
103
|
+
# @return [String]
|
|
104
|
+
def self.job_path project, jobs
|
|
105
|
+
JOB_PATH_TEMPLATE.render(
|
|
106
|
+
:"project" => project,
|
|
107
|
+
:"jobs" => jobs
|
|
108
|
+
)
|
|
109
|
+
end
|
|
110
|
+
|
|
111
|
+
# @param credentials [Google::Auth::Credentials, String, Hash, GRPC::Core::Channel, GRPC::Core::ChannelCredentials, Proc]
|
|
112
|
+
# Provides the means for authenticating requests made by the client. This parameter can
|
|
113
|
+
# be many types.
|
|
114
|
+
# A `Google::Auth::Credentials` uses a the properties of its represented keyfile for
|
|
115
|
+
# authenticating requests made by this client.
|
|
116
|
+
# A `String` will be treated as the path to the keyfile to be used for the construction of
|
|
117
|
+
# credentials for this client.
|
|
118
|
+
# A `Hash` will be treated as the contents of a keyfile to be used for the construction of
|
|
119
|
+
# credentials for this client.
|
|
120
|
+
# A `GRPC::Core::Channel` will be used to make calls through.
|
|
121
|
+
# A `GRPC::Core::ChannelCredentials` for the setting up the RPC client. The channel credentials
|
|
122
|
+
# should already be composed with a `GRPC::Core::CallCredentials` object.
|
|
123
|
+
# A `Proc` will be used as an updater_proc for the Grpc channel. The proc transforms the
|
|
124
|
+
# metadata for requests, generally, to give OAuth credentials.
|
|
125
|
+
# @param scopes [Array<String>]
|
|
126
|
+
# The OAuth scopes for this service. This parameter is ignored if
|
|
127
|
+
# an updater_proc is supplied.
|
|
128
|
+
# @param client_config [Hash]
|
|
129
|
+
# A Hash for call options for each method. See
|
|
130
|
+
# Google::Gax#construct_settings for the structure of
|
|
131
|
+
# this data. Falls back to the default config if not specified
|
|
132
|
+
# or the specified config is missing data points.
|
|
133
|
+
# @param timeout [Numeric]
|
|
134
|
+
# The default timeout, in seconds, for calls made through this client.
|
|
135
|
+
# @param metadata [Hash]
|
|
136
|
+
# Default metadata to be sent with each request. This can be overridden on a per call basis.
|
|
137
|
+
# @param exception_transformer [Proc]
|
|
138
|
+
# An optional proc that intercepts any exceptions raised during an API call to inject
|
|
139
|
+
# custom error handling.
|
|
140
|
+
def initialize \
|
|
141
|
+
credentials: nil,
|
|
142
|
+
scopes: ALL_SCOPES,
|
|
143
|
+
client_config: {},
|
|
144
|
+
timeout: DEFAULT_TIMEOUT,
|
|
145
|
+
metadata: nil,
|
|
146
|
+
exception_transformer: nil,
|
|
147
|
+
lib_name: nil,
|
|
148
|
+
lib_version: ""
|
|
149
|
+
# These require statements are intentionally placed here to initialize
|
|
150
|
+
# the gRPC module only when it's required.
|
|
151
|
+
# See https://github.com/googleapis/toolkit/issues/446
|
|
152
|
+
require "google/gax/grpc"
|
|
153
|
+
require "google/cloud/talent/v4beta1/job_service_services_pb"
|
|
154
|
+
|
|
155
|
+
credentials ||= Google::Cloud::Talent::V4beta1::Credentials.default
|
|
156
|
+
|
|
157
|
+
if credentials.is_a?(String) || credentials.is_a?(Hash)
|
|
158
|
+
updater_proc = Google::Cloud::Talent::V4beta1::Credentials.new(credentials).updater_proc
|
|
159
|
+
end
|
|
160
|
+
if credentials.is_a?(GRPC::Core::Channel)
|
|
161
|
+
channel = credentials
|
|
162
|
+
end
|
|
163
|
+
if credentials.is_a?(GRPC::Core::ChannelCredentials)
|
|
164
|
+
chan_creds = credentials
|
|
165
|
+
end
|
|
166
|
+
if credentials.is_a?(Proc)
|
|
167
|
+
updater_proc = credentials
|
|
168
|
+
end
|
|
169
|
+
if credentials.is_a?(Google::Auth::Credentials)
|
|
170
|
+
updater_proc = credentials.updater_proc
|
|
171
|
+
end
|
|
172
|
+
|
|
173
|
+
package_version = Gem.loaded_specs['google-cloud-talent'].version.version
|
|
174
|
+
|
|
175
|
+
google_api_client = "gl-ruby/#{RUBY_VERSION}"
|
|
176
|
+
google_api_client << " #{lib_name}/#{lib_version}" if lib_name
|
|
177
|
+
google_api_client << " gapic/#{package_version} gax/#{Google::Gax::VERSION}"
|
|
178
|
+
google_api_client << " grpc/#{GRPC::VERSION}"
|
|
179
|
+
google_api_client.freeze
|
|
180
|
+
|
|
181
|
+
headers = { :"x-goog-api-client" => google_api_client }
|
|
182
|
+
headers.merge!(metadata) unless metadata.nil?
|
|
183
|
+
client_config_file = Pathname.new(__dir__).join(
|
|
184
|
+
"job_service_client_config.json"
|
|
185
|
+
)
|
|
186
|
+
defaults = client_config_file.open do |f|
|
|
187
|
+
Google::Gax.construct_settings(
|
|
188
|
+
"google.cloud.talent.v4beta1.JobService",
|
|
189
|
+
JSON.parse(f.read),
|
|
190
|
+
client_config,
|
|
191
|
+
Google::Gax::Grpc::STATUS_CODE_NAMES,
|
|
192
|
+
timeout,
|
|
193
|
+
page_descriptors: PAGE_DESCRIPTORS,
|
|
194
|
+
errors: Google::Gax::Grpc::API_ERRORS,
|
|
195
|
+
metadata: headers
|
|
196
|
+
)
|
|
197
|
+
end
|
|
198
|
+
|
|
199
|
+
# Allow overriding the service path/port in subclasses.
|
|
200
|
+
service_path = self.class::SERVICE_ADDRESS
|
|
201
|
+
port = self.class::DEFAULT_SERVICE_PORT
|
|
202
|
+
interceptors = self.class::GRPC_INTERCEPTORS
|
|
203
|
+
@job_service_stub = Google::Gax::Grpc.create_stub(
|
|
204
|
+
service_path,
|
|
205
|
+
port,
|
|
206
|
+
chan_creds: chan_creds,
|
|
207
|
+
channel: channel,
|
|
208
|
+
updater_proc: updater_proc,
|
|
209
|
+
scopes: scopes,
|
|
210
|
+
interceptors: interceptors,
|
|
211
|
+
&Google::Cloud::Talent::V4beta1::JobService::Stub.method(:new)
|
|
212
|
+
)
|
|
213
|
+
|
|
214
|
+
@create_job = Google::Gax.create_api_call(
|
|
215
|
+
@job_service_stub.method(:create_job),
|
|
216
|
+
defaults["create_job"],
|
|
217
|
+
exception_transformer: exception_transformer
|
|
218
|
+
)
|
|
219
|
+
@get_job = Google::Gax.create_api_call(
|
|
220
|
+
@job_service_stub.method(:get_job),
|
|
221
|
+
defaults["get_job"],
|
|
222
|
+
exception_transformer: exception_transformer
|
|
223
|
+
)
|
|
224
|
+
@update_job = Google::Gax.create_api_call(
|
|
225
|
+
@job_service_stub.method(:update_job),
|
|
226
|
+
defaults["update_job"],
|
|
227
|
+
exception_transformer: exception_transformer
|
|
228
|
+
)
|
|
229
|
+
@delete_job = Google::Gax.create_api_call(
|
|
230
|
+
@job_service_stub.method(:delete_job),
|
|
231
|
+
defaults["delete_job"],
|
|
232
|
+
exception_transformer: exception_transformer
|
|
233
|
+
)
|
|
234
|
+
@list_jobs = Google::Gax.create_api_call(
|
|
235
|
+
@job_service_stub.method(:list_jobs),
|
|
236
|
+
defaults["list_jobs"],
|
|
237
|
+
exception_transformer: exception_transformer
|
|
238
|
+
)
|
|
239
|
+
@batch_delete_jobs = Google::Gax.create_api_call(
|
|
240
|
+
@job_service_stub.method(:batch_delete_jobs),
|
|
241
|
+
defaults["batch_delete_jobs"],
|
|
242
|
+
exception_transformer: exception_transformer
|
|
243
|
+
)
|
|
244
|
+
@search_jobs = Google::Gax.create_api_call(
|
|
245
|
+
@job_service_stub.method(:search_jobs),
|
|
246
|
+
defaults["search_jobs"],
|
|
247
|
+
exception_transformer: exception_transformer
|
|
248
|
+
)
|
|
249
|
+
@search_jobs_for_alert = Google::Gax.create_api_call(
|
|
250
|
+
@job_service_stub.method(:search_jobs_for_alert),
|
|
251
|
+
defaults["search_jobs_for_alert"],
|
|
252
|
+
exception_transformer: exception_transformer
|
|
253
|
+
)
|
|
254
|
+
end
|
|
255
|
+
|
|
256
|
+
# Service calls
|
|
257
|
+
|
|
258
|
+
# Creates a new job.
|
|
259
|
+
#
|
|
260
|
+
# Typically, the job becomes searchable within 10 seconds, but it may take
|
|
261
|
+
# up to 5 minutes.
|
|
262
|
+
#
|
|
263
|
+
# @param parent [String]
|
|
264
|
+
# Required.
|
|
265
|
+
#
|
|
266
|
+
# The resource name of the project under which the job is created.
|
|
267
|
+
#
|
|
268
|
+
# The format is "projects/{project_id}", for example,
|
|
269
|
+
# "projects/api-test-project".
|
|
270
|
+
# @param job [Google::Cloud::Talent::V4beta1::Job | Hash]
|
|
271
|
+
# Required.
|
|
272
|
+
#
|
|
273
|
+
# The Job to be created.
|
|
274
|
+
# A hash of the same form as `Google::Cloud::Talent::V4beta1::Job`
|
|
275
|
+
# can also be provided.
|
|
276
|
+
# @param options [Google::Gax::CallOptions]
|
|
277
|
+
# Overrides the default settings for this call, e.g, timeout,
|
|
278
|
+
# retries, etc.
|
|
279
|
+
# @yield [result, operation] Access the result along with the RPC operation
|
|
280
|
+
# @yieldparam result [Google::Cloud::Talent::V4beta1::Job]
|
|
281
|
+
# @yieldparam operation [GRPC::ActiveCall::Operation]
|
|
282
|
+
# @return [Google::Cloud::Talent::V4beta1::Job]
|
|
283
|
+
# @raise [Google::Gax::GaxError] if the RPC is aborted.
|
|
284
|
+
# @example
|
|
285
|
+
# require "google/cloud/talent"
|
|
286
|
+
#
|
|
287
|
+
# job_service_client = Google::Cloud::Talent::JobService.new(version: :v4beta1)
|
|
288
|
+
# formatted_parent = Google::Cloud::Talent::V4beta1::JobServiceClient.project_path("[PROJECT]")
|
|
289
|
+
#
|
|
290
|
+
# # TODO: Initialize `job`:
|
|
291
|
+
# job = {}
|
|
292
|
+
# response = job_service_client.create_job(formatted_parent, job)
|
|
293
|
+
|
|
294
|
+
def create_job \
|
|
295
|
+
parent,
|
|
296
|
+
job,
|
|
297
|
+
options: nil,
|
|
298
|
+
&block
|
|
299
|
+
req = {
|
|
300
|
+
parent: parent,
|
|
301
|
+
job: job
|
|
302
|
+
}.delete_if { |_, v| v.nil? }
|
|
303
|
+
req = Google::Gax::to_proto(req, Google::Cloud::Talent::V4beta1::CreateJobRequest)
|
|
304
|
+
@create_job.call(req, options, &block)
|
|
305
|
+
end
|
|
306
|
+
|
|
307
|
+
# Retrieves the specified job, whose status is OPEN or recently EXPIRED
|
|
308
|
+
# within the last 90 days.
|
|
309
|
+
#
|
|
310
|
+
# @param name [String]
|
|
311
|
+
# Required.
|
|
312
|
+
#
|
|
313
|
+
# The resource name of the job to retrieve.
|
|
314
|
+
#
|
|
315
|
+
# The format is "projects/{project_id}/jobs/{job_id}",
|
|
316
|
+
# for example, "projects/api-test-project/jobs/1234".
|
|
317
|
+
# @param options [Google::Gax::CallOptions]
|
|
318
|
+
# Overrides the default settings for this call, e.g, timeout,
|
|
319
|
+
# retries, etc.
|
|
320
|
+
# @yield [result, operation] Access the result along with the RPC operation
|
|
321
|
+
# @yieldparam result [Google::Cloud::Talent::V4beta1::Job]
|
|
322
|
+
# @yieldparam operation [GRPC::ActiveCall::Operation]
|
|
323
|
+
# @return [Google::Cloud::Talent::V4beta1::Job]
|
|
324
|
+
# @raise [Google::Gax::GaxError] if the RPC is aborted.
|
|
325
|
+
# @example
|
|
326
|
+
# require "google/cloud/talent"
|
|
327
|
+
#
|
|
328
|
+
# job_service_client = Google::Cloud::Talent::JobService.new(version: :v4beta1)
|
|
329
|
+
# formatted_name = Google::Cloud::Talent::V4beta1::JobServiceClient.job_path("[PROJECT]", "[JOBS]")
|
|
330
|
+
# response = job_service_client.get_job(formatted_name)
|
|
331
|
+
|
|
332
|
+
def get_job \
|
|
333
|
+
name,
|
|
334
|
+
options: nil,
|
|
335
|
+
&block
|
|
336
|
+
req = {
|
|
337
|
+
name: name
|
|
338
|
+
}.delete_if { |_, v| v.nil? }
|
|
339
|
+
req = Google::Gax::to_proto(req, Google::Cloud::Talent::V4beta1::GetJobRequest)
|
|
340
|
+
@get_job.call(req, options, &block)
|
|
341
|
+
end
|
|
342
|
+
|
|
343
|
+
# Updates specified job.
|
|
344
|
+
#
|
|
345
|
+
# Typically, updated contents become visible in search results within 10
|
|
346
|
+
# seconds, but it may take up to 5 minutes.
|
|
347
|
+
#
|
|
348
|
+
# @param job [Google::Cloud::Talent::V4beta1::Job | Hash]
|
|
349
|
+
# Required.
|
|
350
|
+
#
|
|
351
|
+
# The Job to be updated.
|
|
352
|
+
# A hash of the same form as `Google::Cloud::Talent::V4beta1::Job`
|
|
353
|
+
# can also be provided.
|
|
354
|
+
# @param update_mask [Google::Protobuf::FieldMask | Hash]
|
|
355
|
+
# Optional but strongly recommended to be provided for the best service
|
|
356
|
+
# experience.
|
|
357
|
+
#
|
|
358
|
+
# If {Google::Cloud::Talent::V4beta1::UpdateJobRequest#update_mask update_mask}
|
|
359
|
+
# is provided, only the specified fields in
|
|
360
|
+
# {Google::Cloud::Talent::V4beta1::UpdateJobRequest#job job} are updated.
|
|
361
|
+
# Otherwise all the fields are updated.
|
|
362
|
+
#
|
|
363
|
+
# A field mask to restrict the fields that are updated. Only
|
|
364
|
+
# top level fields of {Google::Cloud::Talent::V4beta1::Job Job} are supported.
|
|
365
|
+
# A hash of the same form as `Google::Protobuf::FieldMask`
|
|
366
|
+
# can also be provided.
|
|
367
|
+
# @param options [Google::Gax::CallOptions]
|
|
368
|
+
# Overrides the default settings for this call, e.g, timeout,
|
|
369
|
+
# retries, etc.
|
|
370
|
+
# @yield [result, operation] Access the result along with the RPC operation
|
|
371
|
+
# @yieldparam result [Google::Cloud::Talent::V4beta1::Job]
|
|
372
|
+
# @yieldparam operation [GRPC::ActiveCall::Operation]
|
|
373
|
+
# @return [Google::Cloud::Talent::V4beta1::Job]
|
|
374
|
+
# @raise [Google::Gax::GaxError] if the RPC is aborted.
|
|
375
|
+
# @example
|
|
376
|
+
# require "google/cloud/talent"
|
|
377
|
+
#
|
|
378
|
+
# job_service_client = Google::Cloud::Talent::JobService.new(version: :v4beta1)
|
|
379
|
+
#
|
|
380
|
+
# # TODO: Initialize `job`:
|
|
381
|
+
# job = {}
|
|
382
|
+
# response = job_service_client.update_job(job)
|
|
383
|
+
|
|
384
|
+
def update_job \
|
|
385
|
+
job,
|
|
386
|
+
update_mask: nil,
|
|
387
|
+
options: nil,
|
|
388
|
+
&block
|
|
389
|
+
req = {
|
|
390
|
+
job: job,
|
|
391
|
+
update_mask: update_mask
|
|
392
|
+
}.delete_if { |_, v| v.nil? }
|
|
393
|
+
req = Google::Gax::to_proto(req, Google::Cloud::Talent::V4beta1::UpdateJobRequest)
|
|
394
|
+
@update_job.call(req, options, &block)
|
|
395
|
+
end
|
|
396
|
+
|
|
397
|
+
# Deletes the specified job.
|
|
398
|
+
#
|
|
399
|
+
# Typically, the job becomes unsearchable within 10 seconds, but it may take
|
|
400
|
+
# up to 5 minutes.
|
|
401
|
+
#
|
|
402
|
+
# @param name [String]
|
|
403
|
+
# Required.
|
|
404
|
+
#
|
|
405
|
+
# The resource name of the job to be deleted.
|
|
406
|
+
#
|
|
407
|
+
# The format is "projects/{project_id}/jobs/{job_id}",
|
|
408
|
+
# for example, "projects/api-test-project/jobs/1234".
|
|
409
|
+
# @param options [Google::Gax::CallOptions]
|
|
410
|
+
# Overrides the default settings for this call, e.g, timeout,
|
|
411
|
+
# retries, etc.
|
|
412
|
+
# @yield [result, operation] Access the result along with the RPC operation
|
|
413
|
+
# @yieldparam result []
|
|
414
|
+
# @yieldparam operation [GRPC::ActiveCall::Operation]
|
|
415
|
+
# @raise [Google::Gax::GaxError] if the RPC is aborted.
|
|
416
|
+
# @example
|
|
417
|
+
# require "google/cloud/talent"
|
|
418
|
+
#
|
|
419
|
+
# job_service_client = Google::Cloud::Talent::JobService.new(version: :v4beta1)
|
|
420
|
+
# formatted_name = Google::Cloud::Talent::V4beta1::JobServiceClient.job_path("[PROJECT]", "[JOBS]")
|
|
421
|
+
# job_service_client.delete_job(formatted_name)
|
|
422
|
+
|
|
423
|
+
def delete_job \
|
|
424
|
+
name,
|
|
425
|
+
options: nil,
|
|
426
|
+
&block
|
|
427
|
+
req = {
|
|
428
|
+
name: name
|
|
429
|
+
}.delete_if { |_, v| v.nil? }
|
|
430
|
+
req = Google::Gax::to_proto(req, Google::Cloud::Talent::V4beta1::DeleteJobRequest)
|
|
431
|
+
@delete_job.call(req, options, &block)
|
|
432
|
+
nil
|
|
433
|
+
end
|
|
434
|
+
|
|
435
|
+
# Lists jobs by filter.
|
|
436
|
+
#
|
|
437
|
+
# @param parent [String]
|
|
438
|
+
# Required.
|
|
439
|
+
#
|
|
440
|
+
# The resource name of the project under which the job is created.
|
|
441
|
+
#
|
|
442
|
+
# The format is "projects/{project_id}", for example,
|
|
443
|
+
# "projects/api-test-project".
|
|
444
|
+
# @param filter [String]
|
|
445
|
+
# Required.
|
|
446
|
+
#
|
|
447
|
+
# The filter string specifies the jobs to be enumerated.
|
|
448
|
+
#
|
|
449
|
+
# Supported operator: =, AND
|
|
450
|
+
#
|
|
451
|
+
# The fields eligible for filtering are:
|
|
452
|
+
#
|
|
453
|
+
# * `companyName` (Required)
|
|
454
|
+
# * `requisitionId` (Optional)
|
|
455
|
+
# * `status` (Optional) Available values: OPEN, EXPIRED, ALL. Defaults to
|
|
456
|
+
# OPEN if no value is specified.
|
|
457
|
+
#
|
|
458
|
+
# Sample Query:
|
|
459
|
+
#
|
|
460
|
+
# * companyName = "projects/api-test-project/companies/123"
|
|
461
|
+
# * companyName = "projects/api-test-project/companies/123" AND requisitionId
|
|
462
|
+
# = "req-1"
|
|
463
|
+
# * companyName = "projects/api-test-project/companies/123" AND status =
|
|
464
|
+
# "EXPIRED"
|
|
465
|
+
# @param page_size [Integer]
|
|
466
|
+
# The maximum number of resources contained in the underlying API
|
|
467
|
+
# response. If page streaming is performed per-resource, this
|
|
468
|
+
# parameter does not affect the return value. If page streaming is
|
|
469
|
+
# performed per-page, this determines the maximum number of
|
|
470
|
+
# resources in a page.
|
|
471
|
+
# @param job_view [Google::Cloud::Talent::V4beta1::JobView]
|
|
472
|
+
# Optional.
|
|
473
|
+
#
|
|
474
|
+
# The desired job attributes returned for jobs in the
|
|
475
|
+
# search response. Defaults to
|
|
476
|
+
# {Google::Cloud::Talent::V4beta1::JobView::JOB_VIEW_FULL JobView::JOB_VIEW_FULL}
|
|
477
|
+
# if no value is specified.
|
|
478
|
+
# @param options [Google::Gax::CallOptions]
|
|
479
|
+
# Overrides the default settings for this call, e.g, timeout,
|
|
480
|
+
# retries, etc.
|
|
481
|
+
# @yield [result, operation] Access the result along with the RPC operation
|
|
482
|
+
# @yieldparam result [Google::Gax::PagedEnumerable<Google::Cloud::Talent::V4beta1::Job>]
|
|
483
|
+
# @yieldparam operation [GRPC::ActiveCall::Operation]
|
|
484
|
+
# @return [Google::Gax::PagedEnumerable<Google::Cloud::Talent::V4beta1::Job>]
|
|
485
|
+
# An enumerable of Google::Cloud::Talent::V4beta1::Job instances.
|
|
486
|
+
# See Google::Gax::PagedEnumerable documentation for other
|
|
487
|
+
# operations such as per-page iteration or access to the response
|
|
488
|
+
# object.
|
|
489
|
+
# @raise [Google::Gax::GaxError] if the RPC is aborted.
|
|
490
|
+
# @example
|
|
491
|
+
# require "google/cloud/talent"
|
|
492
|
+
#
|
|
493
|
+
# job_service_client = Google::Cloud::Talent::JobService.new(version: :v4beta1)
|
|
494
|
+
# formatted_parent = Google::Cloud::Talent::V4beta1::JobServiceClient.project_path("[PROJECT]")
|
|
495
|
+
#
|
|
496
|
+
# # TODO: Initialize `filter`:
|
|
497
|
+
# filter = ''
|
|
498
|
+
#
|
|
499
|
+
# # Iterate over all results.
|
|
500
|
+
# job_service_client.list_jobs(formatted_parent, filter).each do |element|
|
|
501
|
+
# # Process element.
|
|
502
|
+
# end
|
|
503
|
+
#
|
|
504
|
+
# # Or iterate over results one page at a time.
|
|
505
|
+
# job_service_client.list_jobs(formatted_parent, filter).each_page do |page|
|
|
506
|
+
# # Process each page at a time.
|
|
507
|
+
# page.each do |element|
|
|
508
|
+
# # Process element.
|
|
509
|
+
# end
|
|
510
|
+
# end
|
|
511
|
+
|
|
512
|
+
def list_jobs \
|
|
513
|
+
parent,
|
|
514
|
+
filter,
|
|
515
|
+
page_size: nil,
|
|
516
|
+
job_view: nil,
|
|
517
|
+
options: nil,
|
|
518
|
+
&block
|
|
519
|
+
req = {
|
|
520
|
+
parent: parent,
|
|
521
|
+
filter: filter,
|
|
522
|
+
page_size: page_size,
|
|
523
|
+
job_view: job_view
|
|
524
|
+
}.delete_if { |_, v| v.nil? }
|
|
525
|
+
req = Google::Gax::to_proto(req, Google::Cloud::Talent::V4beta1::ListJobsRequest)
|
|
526
|
+
@list_jobs.call(req, options, &block)
|
|
527
|
+
end
|
|
528
|
+
|
|
529
|
+
# Deletes a list of {Google::Cloud::Talent::V4beta1::Job Job}s by filter.
|
|
530
|
+
#
|
|
531
|
+
# @param parent [String]
|
|
532
|
+
# Required.
|
|
533
|
+
#
|
|
534
|
+
# The resource name of the project under which the job is created.
|
|
535
|
+
#
|
|
536
|
+
# The format is "projects/{project_id}", for example,
|
|
537
|
+
# "projects/api-test-project".
|
|
538
|
+
# @param filter [String]
|
|
539
|
+
# Required.
|
|
540
|
+
#
|
|
541
|
+
# The filter string specifies the jobs to be deleted.
|
|
542
|
+
#
|
|
543
|
+
# Supported operator: =, AND
|
|
544
|
+
#
|
|
545
|
+
# The fields eligible for filtering are:
|
|
546
|
+
#
|
|
547
|
+
# * `companyName` (Required)
|
|
548
|
+
# * `requisitionId` (Required)
|
|
549
|
+
#
|
|
550
|
+
# Sample Query: companyName = "projects/api-test-project/companies/123" AND
|
|
551
|
+
# requisitionId = "req-1"
|
|
552
|
+
# @param options [Google::Gax::CallOptions]
|
|
553
|
+
# Overrides the default settings for this call, e.g, timeout,
|
|
554
|
+
# retries, etc.
|
|
555
|
+
# @yield [result, operation] Access the result along with the RPC operation
|
|
556
|
+
# @yieldparam result []
|
|
557
|
+
# @yieldparam operation [GRPC::ActiveCall::Operation]
|
|
558
|
+
# @raise [Google::Gax::GaxError] if the RPC is aborted.
|
|
559
|
+
# @example
|
|
560
|
+
# require "google/cloud/talent"
|
|
561
|
+
#
|
|
562
|
+
# job_service_client = Google::Cloud::Talent::JobService.new(version: :v4beta1)
|
|
563
|
+
# formatted_parent = Google::Cloud::Talent::V4beta1::JobServiceClient.project_path("[PROJECT]")
|
|
564
|
+
#
|
|
565
|
+
# # TODO: Initialize `filter`:
|
|
566
|
+
# filter = ''
|
|
567
|
+
# job_service_client.batch_delete_jobs(formatted_parent, filter)
|
|
568
|
+
|
|
569
|
+
def batch_delete_jobs \
|
|
570
|
+
parent,
|
|
571
|
+
filter,
|
|
572
|
+
options: nil,
|
|
573
|
+
&block
|
|
574
|
+
req = {
|
|
575
|
+
parent: parent,
|
|
576
|
+
filter: filter
|
|
577
|
+
}.delete_if { |_, v| v.nil? }
|
|
578
|
+
req = Google::Gax::to_proto(req, Google::Cloud::Talent::V4beta1::BatchDeleteJobsRequest)
|
|
579
|
+
@batch_delete_jobs.call(req, options, &block)
|
|
580
|
+
nil
|
|
581
|
+
end
|
|
582
|
+
|
|
583
|
+
# Searches for jobs using the provided
|
|
584
|
+
# {Google::Cloud::Talent::V4beta1::SearchJobsRequest SearchJobsRequest}.
|
|
585
|
+
#
|
|
586
|
+
# This call constrains the
|
|
587
|
+
# {Google::Cloud::Talent::V4beta1::Job#visibility visibility} of jobs present in
|
|
588
|
+
# the database, and only returns jobs that the caller has permission to
|
|
589
|
+
# search against.
|
|
590
|
+
#
|
|
591
|
+
# @param parent [String]
|
|
592
|
+
# Required.
|
|
593
|
+
#
|
|
594
|
+
# The resource name of the project to search within.
|
|
595
|
+
#
|
|
596
|
+
# The format is "projects/{project_id}", for example,
|
|
597
|
+
# "projects/api-test-project".
|
|
598
|
+
# @param request_metadata [Google::Cloud::Talent::V4beta1::RequestMetadata | Hash]
|
|
599
|
+
# Required.
|
|
600
|
+
#
|
|
601
|
+
# The meta information collected about the job searcher, used to improve the
|
|
602
|
+
# search quality of the service.. The identifiers, (such as `user_id`) are
|
|
603
|
+
# provided by users, and must be unique and consistent.
|
|
604
|
+
# A hash of the same form as `Google::Cloud::Talent::V4beta1::RequestMetadata`
|
|
605
|
+
# can also be provided.
|
|
606
|
+
# @param search_mode [Google::Cloud::Talent::V4beta1::SearchJobsRequest::SearchMode]
|
|
607
|
+
# Optional.
|
|
608
|
+
#
|
|
609
|
+
# Mode of a search.
|
|
610
|
+
#
|
|
611
|
+
# Defaults to
|
|
612
|
+
# {Google::Cloud::Talent::V4beta1::SearchJobsRequest::SearchMode::JOB_SEARCH SearchMode::JOB_SEARCH}.
|
|
613
|
+
# @param job_query [Google::Cloud::Talent::V4beta1::JobQuery | Hash]
|
|
614
|
+
# Optional.
|
|
615
|
+
#
|
|
616
|
+
# Query used to search against jobs, such as keyword, location filters, etc.
|
|
617
|
+
# A hash of the same form as `Google::Cloud::Talent::V4beta1::JobQuery`
|
|
618
|
+
# can also be provided.
|
|
619
|
+
# @param enable_broadening [true, false]
|
|
620
|
+
# Optional.
|
|
621
|
+
#
|
|
622
|
+
# Controls whether to broaden the search when it produces sparse results.
|
|
623
|
+
# Broadened queries append results to the end of the matching results
|
|
624
|
+
# list.
|
|
625
|
+
#
|
|
626
|
+
# Defaults to false.
|
|
627
|
+
# @param require_precise_result_size [true, false]
|
|
628
|
+
# Optional.
|
|
629
|
+
#
|
|
630
|
+
# Controls if the search job request requires the return of a precise
|
|
631
|
+
# count of the first 300 results. Setting this to `true` ensures
|
|
632
|
+
# consistency in the number of results per page. Best practice is to set this
|
|
633
|
+
# value to true if a client allows users to jump directly to a
|
|
634
|
+
# non-sequential search results page.
|
|
635
|
+
#
|
|
636
|
+
# Enabling this flag may adversely impact performance.
|
|
637
|
+
#
|
|
638
|
+
# Defaults to false.
|
|
639
|
+
# @param histogram_queries [Array<Google::Cloud::Talent::V4beta1::HistogramQuery | Hash>]
|
|
640
|
+
# Optional.
|
|
641
|
+
#
|
|
642
|
+
# An expression specifies a histogram request against matching jobs.
|
|
643
|
+
#
|
|
644
|
+
# Expression syntax is an aggregation function call with histogram facets and
|
|
645
|
+
# other options.
|
|
646
|
+
#
|
|
647
|
+
# Available aggregation function calls are:
|
|
648
|
+
# * `count(string_histogram_facet)`: Count the number of matching entities,
|
|
649
|
+
# for each distinct attribute value.
|
|
650
|
+
# * `count(numeric_histogram_facet, list of buckets)`: Count the number of
|
|
651
|
+
# matching entities within each bucket.
|
|
652
|
+
#
|
|
653
|
+
# Data types:
|
|
654
|
+
#
|
|
655
|
+
# * Histogram facet: facet names with format [a-zA-Z][a-zA-Z0-9_]+.
|
|
656
|
+
# * String: string like "any string with backslash escape for quote(\")."
|
|
657
|
+
# * Number: whole number and floating point number like 10, -1 and -0.01.
|
|
658
|
+
# * List: list of elements with comma(,) separator surrounded by square
|
|
659
|
+
# brackets, for example, [1, 2, 3] and ["one", "two", "three"].
|
|
660
|
+
#
|
|
661
|
+
# Built-in constants:
|
|
662
|
+
#
|
|
663
|
+
# * MIN (minimum number similar to java Double.MIN_VALUE)
|
|
664
|
+
# * MAX (maximum number similar to java Double.MAX_VALUE)
|
|
665
|
+
#
|
|
666
|
+
# Built-in functions:
|
|
667
|
+
#
|
|
668
|
+
# * bucket(start, end[, label]): bucket built-in function creates a bucket
|
|
669
|
+
# with range of [start, end). Note that the end is exclusive, for example,
|
|
670
|
+
# bucket(1, MAX, "positive number") or bucket(1, 10).
|
|
671
|
+
#
|
|
672
|
+
# Job histogram facets:
|
|
673
|
+
#
|
|
674
|
+
# * company_id: histogram by {Job#distributor_company_id}.
|
|
675
|
+
# * company_display_name: histogram by
|
|
676
|
+
# {Google::Cloud::Talent::V4beta1::Job#company_display_name Job#company_display_name}.
|
|
677
|
+
# * employment_type: histogram by
|
|
678
|
+
# {Google::Cloud::Talent::V4beta1::Job#employment_types Job#employment_types},
|
|
679
|
+
# for example, "FULL_TIME", "PART_TIME".
|
|
680
|
+
# * company_size: histogram by
|
|
681
|
+
# {Google::Cloud::Talent::V4beta1::CompanySize CompanySize}, for example,
|
|
682
|
+
# "SMALL", "MEDIUM", "BIG".
|
|
683
|
+
# * publish_time_in_month: histogram by the {Job#publish_time} in months.
|
|
684
|
+
# Must specify list of numeric buckets in spec.
|
|
685
|
+
# * publish_time_in_year: histogram by the {Job#publish_time} in years.
|
|
686
|
+
# Must specify list of numeric buckets in spec.
|
|
687
|
+
# * degree_type: histogram by the {Job#degree_type}, for example,
|
|
688
|
+
# "Bachelors", "Masters".
|
|
689
|
+
# * job_level: histogram by the
|
|
690
|
+
# {Google::Cloud::Talent::V4beta1::Job#job_level Job#job_level}, for example,
|
|
691
|
+
# "Entry Level".
|
|
692
|
+
# * country: histogram by the country code of jobs, for example, "US", "FR".
|
|
693
|
+
# * admin1: histogram by the admin1 code of jobs, which is a global
|
|
694
|
+
# placeholder referring to the state, province, or the particular term a
|
|
695
|
+
# country uses to define the geographic structure below the country level,
|
|
696
|
+
# for example, "CA", "IL".
|
|
697
|
+
# * city: histogram by a combination of the "city name, admin1 code". For
|
|
698
|
+
# example, "Mountain View, CA", "New York, NY".
|
|
699
|
+
# * admin1_country: histogram by a combination of the "admin1 code, country",
|
|
700
|
+
# for example, "CA, US", "IL, US".
|
|
701
|
+
# * city_coordinate: histogram by the city center's GPS coordinates (latitude
|
|
702
|
+
# and longitude), for example, 37.4038522,-122.0987765. Since the coordinates
|
|
703
|
+
# of a city center can change, customers may need to refresh them
|
|
704
|
+
# periodically.
|
|
705
|
+
# * locale: histogram by the
|
|
706
|
+
# {Google::Cloud::Talent::V4beta1::Job#language_code Job#language_code}, for
|
|
707
|
+
# example, "en-US", "fr-FR".
|
|
708
|
+
# * language: histogram by the language subtag of the
|
|
709
|
+
# {Google::Cloud::Talent::V4beta1::Job#language_code Job#language_code}, for
|
|
710
|
+
# example, "en", "fr".
|
|
711
|
+
# * category: histogram by the
|
|
712
|
+
# {Google::Cloud::Talent::V4beta1::JobCategory JobCategory}, for example,
|
|
713
|
+
# "COMPUTER_AND_IT", "HEALTHCARE".
|
|
714
|
+
# * base_compensation_unit: histogram by the {CompensationUnit} of base
|
|
715
|
+
# salary, for example, "WEEKLY", "MONTHLY".
|
|
716
|
+
# * base_compensation: histogram by the base salary. Must specify list of
|
|
717
|
+
# numeric buckets to group results by.
|
|
718
|
+
# * annualized_base_compensation: histogram by the base annualized salary.
|
|
719
|
+
# Must specify list of numeric buckets to group results by.
|
|
720
|
+
# * annualized_total_compensation: histogram by the total annualized salary.
|
|
721
|
+
# Must specify list of numeric buckets to group results by.
|
|
722
|
+
# * string_custom_attribute: histogram by string
|
|
723
|
+
# {Google::Cloud::Talent::V4beta1::Job#custom_attributes Job#custom_attributes}.
|
|
724
|
+
# Values can be accessed via square bracket notations like
|
|
725
|
+
# string_custom_attribute["key1"].
|
|
726
|
+
# * numeric_custom_attribute: histogram by numeric
|
|
727
|
+
# {Google::Cloud::Talent::V4beta1::Job#custom_attributes Job#custom_attributes}.
|
|
728
|
+
# Values can be accessed via square bracket notations like
|
|
729
|
+
# numeric_custom_attribute["key1"]. Must specify list of numeric buckets to
|
|
730
|
+
# group results by.
|
|
731
|
+
#
|
|
732
|
+
# Example expressions:
|
|
733
|
+
# * count(admin1)
|
|
734
|
+
# * count(base_compensation, [bucket(1000, 10000), bucket(10000, 100000),
|
|
735
|
+
# bucket(100000, MAX)])
|
|
736
|
+
# * count(string_custom_attribute["some-string-custom-attribute"])
|
|
737
|
+
# * count(numeric_custom_attribute["some-numeric-custom-attribute"],
|
|
738
|
+
# [bucket(MIN, 0, "negative"), bucket(0, MAX, "non-negative"])
|
|
739
|
+
# A hash of the same form as `Google::Cloud::Talent::V4beta1::HistogramQuery`
|
|
740
|
+
# can also be provided.
|
|
741
|
+
# @param job_view [Google::Cloud::Talent::V4beta1::JobView]
|
|
742
|
+
# Optional.
|
|
743
|
+
#
|
|
744
|
+
# The desired job attributes returned for jobs in the
|
|
745
|
+
# search response. Defaults to {JobView::SMALL} if no value is specified.
|
|
746
|
+
# @param offset [Integer]
|
|
747
|
+
# Optional.
|
|
748
|
+
#
|
|
749
|
+
# An integer that specifies the current offset (that is, starting result
|
|
750
|
+
# location, amongst the jobs deemed by the API as relevant) in search
|
|
751
|
+
# results. This field is only considered if
|
|
752
|
+
# {Google::Cloud::Talent::V4beta1::SearchJobsRequest#page_token page_token} is
|
|
753
|
+
# unset.
|
|
754
|
+
#
|
|
755
|
+
# For example, 0 means to return results starting from the first matching
|
|
756
|
+
# job, and 10 means to return from the 11th job. This can be used for
|
|
757
|
+
# pagination, (for example, pageSize = 10 and offset = 10 means to return
|
|
758
|
+
# from the second page).
|
|
759
|
+
# @param page_size [Integer]
|
|
760
|
+
# The maximum number of resources contained in the underlying API
|
|
761
|
+
# response. If page streaming is performed per-resource, this
|
|
762
|
+
# parameter does not affect the return value. If page streaming is
|
|
763
|
+
# performed per-page, this determines the maximum number of
|
|
764
|
+
# resources in a page.
|
|
765
|
+
# @param order_by [String]
|
|
766
|
+
# Optional.
|
|
767
|
+
#
|
|
768
|
+
# The criteria determining how search results are sorted. Default is
|
|
769
|
+
# "relevance desc".
|
|
770
|
+
#
|
|
771
|
+
# Supported options are:
|
|
772
|
+
#
|
|
773
|
+
# * "relevance desc": By relevance descending, as determined by the API
|
|
774
|
+
# algorithms. Relevance thresholding of query results is only available
|
|
775
|
+
# with this ordering.
|
|
776
|
+
# * "posting`_`publish`_`time desc": By
|
|
777
|
+
# {Google::Cloud::Talent::V4beta1::Job#posting_publish_time Job#posting_publish_time}
|
|
778
|
+
# descending.
|
|
779
|
+
# * "posting`_`update`_`time desc": By
|
|
780
|
+
# {Google::Cloud::Talent::V4beta1::Job#posting_update_time Job#posting_update_time}
|
|
781
|
+
# descending.
|
|
782
|
+
# * "title": By {Google::Cloud::Talent::V4beta1::Job#title Job#title} ascending.
|
|
783
|
+
# * "title desc": By {Google::Cloud::Talent::V4beta1::Job#title Job#title}
|
|
784
|
+
# descending.
|
|
785
|
+
# * "annualized`_`base`_`compensation": By job's
|
|
786
|
+
# {Google::Cloud::Talent::V4beta1::CompensationInfo#annualized_base_compensation_range CompensationInfo#annualized_base_compensation_range}
|
|
787
|
+
# ascending. Jobs whose annualized base compensation is unspecified are put
|
|
788
|
+
# at the end of search results.
|
|
789
|
+
# * "annualized`_`base`_`compensation desc": By job's
|
|
790
|
+
# {Google::Cloud::Talent::V4beta1::CompensationInfo#annualized_base_compensation_range CompensationInfo#annualized_base_compensation_range}
|
|
791
|
+
# descending. Jobs whose annualized base compensation is unspecified are put
|
|
792
|
+
# at the end of search results.
|
|
793
|
+
# * "annualized`_`total`_`compensation": By job's
|
|
794
|
+
# {Google::Cloud::Talent::V4beta1::CompensationInfo#annualized_total_compensation_range CompensationInfo#annualized_total_compensation_range}
|
|
795
|
+
# ascending. Jobs whose annualized base compensation is unspecified are put
|
|
796
|
+
# at the end of search results.
|
|
797
|
+
# * "annualized`_`total`_`compensation desc": By job's
|
|
798
|
+
# {Google::Cloud::Talent::V4beta1::CompensationInfo#annualized_total_compensation_range CompensationInfo#annualized_total_compensation_range}
|
|
799
|
+
# descending. Jobs whose annualized base compensation is unspecified are put
|
|
800
|
+
# at the end of search results.
|
|
801
|
+
# * "custom`_`ranking desc": By the relevance score adjusted to the
|
|
802
|
+
# {SearchJobsRequest#custom_ranking_info#ranking_expression} with weight
|
|
803
|
+
# factor assigned by
|
|
804
|
+
# {SearchJobsRequest#custom_ranking_info#importance_level} in descending
|
|
805
|
+
# order.
|
|
806
|
+
# * "location`_`distance": By the distance between the location on jobs and
|
|
807
|
+
# locations specified in the
|
|
808
|
+
# {SearchJobsRequest#job_query#location_filters}.
|
|
809
|
+
# When this order is selected, the
|
|
810
|
+
# {SearchJobsRequest#job_query#location_filters} must not be empty. When
|
|
811
|
+
# a job has multiple locations, the location closest to one of the locations
|
|
812
|
+
# specified in the location filter will be used to calculate location
|
|
813
|
+
# distance. Distance is calculated by the distance between two lat/long
|
|
814
|
+
# coordinates, with a precision of 10e-4 degrees (11.3 meters).
|
|
815
|
+
# Jobs that don't have locations specified will be ranked below jobs having
|
|
816
|
+
# locations.
|
|
817
|
+
# Diversification strategy is still applied unless explicitly disabled in
|
|
818
|
+
# {Google::Cloud::Talent::V4beta1::SearchJobsRequest#diversification_level SearchJobsRequest#diversification_level}.
|
|
819
|
+
# @param diversification_level [Google::Cloud::Talent::V4beta1::SearchJobsRequest::DiversificationLevel]
|
|
820
|
+
# Optional.
|
|
821
|
+
#
|
|
822
|
+
# Controls whether highly similar jobs are returned next to each other in
|
|
823
|
+
# the search results. Jobs are identified as highly similar based on
|
|
824
|
+
# their titles, job categories, and locations. Highly similar results are
|
|
825
|
+
# clustered so that only one representative job of the cluster is
|
|
826
|
+
# displayed to the job seeker higher up in the results, with the other jobs
|
|
827
|
+
# being displayed lower down in the results.
|
|
828
|
+
#
|
|
829
|
+
# Defaults to
|
|
830
|
+
# {Google::Cloud::Talent::V4beta1::SearchJobsRequest::DiversificationLevel::SIMPLE DiversificationLevel::SIMPLE}
|
|
831
|
+
# if no value is specified.
|
|
832
|
+
# @param custom_ranking_info [Google::Cloud::Talent::V4beta1::SearchJobsRequest::CustomRankingInfo | Hash]
|
|
833
|
+
# Optional.
|
|
834
|
+
#
|
|
835
|
+
# Controls over how job documents get ranked on top of existing relevance
|
|
836
|
+
# score (determined by API algorithm).
|
|
837
|
+
# A hash of the same form as `Google::Cloud::Talent::V4beta1::SearchJobsRequest::CustomRankingInfo`
|
|
838
|
+
# can also be provided.
|
|
839
|
+
# @param disable_keyword_match [true, false]
|
|
840
|
+
# Optional.
|
|
841
|
+
#
|
|
842
|
+
# Controls whether to disable exact keyword match on {Job#job_title},
|
|
843
|
+
# {Google::Cloud::Talent::V4beta1::Job#description Job#description},
|
|
844
|
+
# {Google::Cloud::Talent::V4beta1::Job#company_display_name Job#company_display_name},
|
|
845
|
+
# [Job.locations][0],
|
|
846
|
+
# {Google::Cloud::Talent::V4beta1::Job#qualifications Job#qualifications}. When
|
|
847
|
+
# disable keyword match is turned off, a keyword match returns jobs that do
|
|
848
|
+
# not match given category filters when there are matching keywords. For
|
|
849
|
+
# example, for the query "program manager," a result is returned even if the
|
|
850
|
+
# job posting has the title "software developer," which doesn't fall into
|
|
851
|
+
# "program manager" ontology, but does have "program manager" appearing in
|
|
852
|
+
# its description.
|
|
853
|
+
#
|
|
854
|
+
# For queries like "cloud" that don't contain title or
|
|
855
|
+
# location specific ontology, jobs with "cloud" keyword matches are returned
|
|
856
|
+
# regardless of this flag's value.
|
|
857
|
+
#
|
|
858
|
+
# Please use {Company#keyword_searchable_custom_fields} or
|
|
859
|
+
# {Company#keyword_searchable_custom_attributes} if company specific
|
|
860
|
+
# globally matched custom field/attribute string values is needed. Enabling
|
|
861
|
+
# keyword match improves recall of subsequent search requests.
|
|
862
|
+
#
|
|
863
|
+
# Defaults to false.
|
|
864
|
+
# @param options [Google::Gax::CallOptions]
|
|
865
|
+
# Overrides the default settings for this call, e.g, timeout,
|
|
866
|
+
# retries, etc.
|
|
867
|
+
# @yield [result, operation] Access the result along with the RPC operation
|
|
868
|
+
# @yieldparam result [Google::Gax::PagedEnumerable<Google::Cloud::Talent::V4beta1::SearchJobsResponse::MatchingJob>]
|
|
869
|
+
# @yieldparam operation [GRPC::ActiveCall::Operation]
|
|
870
|
+
# @return [Google::Gax::PagedEnumerable<Google::Cloud::Talent::V4beta1::SearchJobsResponse::MatchingJob>]
|
|
871
|
+
# An enumerable of Google::Cloud::Talent::V4beta1::SearchJobsResponse::MatchingJob instances.
|
|
872
|
+
# See Google::Gax::PagedEnumerable documentation for other
|
|
873
|
+
# operations such as per-page iteration or access to the response
|
|
874
|
+
# object.
|
|
875
|
+
# @raise [Google::Gax::GaxError] if the RPC is aborted.
|
|
876
|
+
# @example
|
|
877
|
+
# require "google/cloud/talent"
|
|
878
|
+
#
|
|
879
|
+
# job_service_client = Google::Cloud::Talent::JobService.new(version: :v4beta1)
|
|
880
|
+
# formatted_parent = Google::Cloud::Talent::V4beta1::JobServiceClient.project_path("[PROJECT]")
|
|
881
|
+
#
|
|
882
|
+
# # TODO: Initialize `request_metadata`:
|
|
883
|
+
# request_metadata = {}
|
|
884
|
+
#
|
|
885
|
+
# # Iterate over all results.
|
|
886
|
+
# job_service_client.search_jobs(formatted_parent, request_metadata).each do |element|
|
|
887
|
+
# # Process element.
|
|
888
|
+
# end
|
|
889
|
+
#
|
|
890
|
+
# # Or iterate over results one page at a time.
|
|
891
|
+
# job_service_client.search_jobs(formatted_parent, request_metadata).each_page do |page|
|
|
892
|
+
# # Process each page at a time.
|
|
893
|
+
# page.each do |element|
|
|
894
|
+
# # Process element.
|
|
895
|
+
# end
|
|
896
|
+
# end
|
|
897
|
+
|
|
898
|
+
def search_jobs \
|
|
899
|
+
parent,
|
|
900
|
+
request_metadata,
|
|
901
|
+
search_mode: nil,
|
|
902
|
+
job_query: nil,
|
|
903
|
+
enable_broadening: nil,
|
|
904
|
+
require_precise_result_size: nil,
|
|
905
|
+
histogram_queries: nil,
|
|
906
|
+
job_view: nil,
|
|
907
|
+
offset: nil,
|
|
908
|
+
page_size: nil,
|
|
909
|
+
order_by: nil,
|
|
910
|
+
diversification_level: nil,
|
|
911
|
+
custom_ranking_info: nil,
|
|
912
|
+
disable_keyword_match: nil,
|
|
913
|
+
options: nil,
|
|
914
|
+
&block
|
|
915
|
+
req = {
|
|
916
|
+
parent: parent,
|
|
917
|
+
request_metadata: request_metadata,
|
|
918
|
+
search_mode: search_mode,
|
|
919
|
+
job_query: job_query,
|
|
920
|
+
enable_broadening: enable_broadening,
|
|
921
|
+
require_precise_result_size: require_precise_result_size,
|
|
922
|
+
histogram_queries: histogram_queries,
|
|
923
|
+
job_view: job_view,
|
|
924
|
+
offset: offset,
|
|
925
|
+
page_size: page_size,
|
|
926
|
+
order_by: order_by,
|
|
927
|
+
diversification_level: diversification_level,
|
|
928
|
+
custom_ranking_info: custom_ranking_info,
|
|
929
|
+
disable_keyword_match: disable_keyword_match
|
|
930
|
+
}.delete_if { |_, v| v.nil? }
|
|
931
|
+
req = Google::Gax::to_proto(req, Google::Cloud::Talent::V4beta1::SearchJobsRequest)
|
|
932
|
+
@search_jobs.call(req, options, &block)
|
|
933
|
+
end
|
|
934
|
+
|
|
935
|
+
# Searches for jobs using the provided
|
|
936
|
+
# {Google::Cloud::Talent::V4beta1::SearchJobsRequest SearchJobsRequest}.
|
|
937
|
+
#
|
|
938
|
+
# This API call is intended for the use case of targeting passive job
|
|
939
|
+
# seekers (for example, job seekers who have signed up to receive email
|
|
940
|
+
# alerts about potential job opportunities), and has different algorithmic
|
|
941
|
+
# adjustments that are targeted to passive job seekers.
|
|
942
|
+
#
|
|
943
|
+
# This call constrains the
|
|
944
|
+
# {Google::Cloud::Talent::V4beta1::Job#visibility visibility} of jobs present in
|
|
945
|
+
# the database, and only returns jobs the caller has permission to search
|
|
946
|
+
# against.
|
|
947
|
+
#
|
|
948
|
+
# @param parent [String]
|
|
949
|
+
# Required.
|
|
950
|
+
#
|
|
951
|
+
# The resource name of the project to search within.
|
|
952
|
+
#
|
|
953
|
+
# The format is "projects/{project_id}", for example,
|
|
954
|
+
# "projects/api-test-project".
|
|
955
|
+
# @param request_metadata [Google::Cloud::Talent::V4beta1::RequestMetadata | Hash]
|
|
956
|
+
# Required.
|
|
957
|
+
#
|
|
958
|
+
# The meta information collected about the job searcher, used to improve the
|
|
959
|
+
# search quality of the service.. The identifiers, (such as `user_id`) are
|
|
960
|
+
# provided by users, and must be unique and consistent.
|
|
961
|
+
# A hash of the same form as `Google::Cloud::Talent::V4beta1::RequestMetadata`
|
|
962
|
+
# can also be provided.
|
|
963
|
+
# @param search_mode [Google::Cloud::Talent::V4beta1::SearchJobsRequest::SearchMode]
|
|
964
|
+
# Optional.
|
|
965
|
+
#
|
|
966
|
+
# Mode of a search.
|
|
967
|
+
#
|
|
968
|
+
# Defaults to
|
|
969
|
+
# {Google::Cloud::Talent::V4beta1::SearchJobsRequest::SearchMode::JOB_SEARCH SearchMode::JOB_SEARCH}.
|
|
970
|
+
# @param job_query [Google::Cloud::Talent::V4beta1::JobQuery | Hash]
|
|
971
|
+
# Optional.
|
|
972
|
+
#
|
|
973
|
+
# Query used to search against jobs, such as keyword, location filters, etc.
|
|
974
|
+
# A hash of the same form as `Google::Cloud::Talent::V4beta1::JobQuery`
|
|
975
|
+
# can also be provided.
|
|
976
|
+
# @param enable_broadening [true, false]
|
|
977
|
+
# Optional.
|
|
978
|
+
#
|
|
979
|
+
# Controls whether to broaden the search when it produces sparse results.
|
|
980
|
+
# Broadened queries append results to the end of the matching results
|
|
981
|
+
# list.
|
|
982
|
+
#
|
|
983
|
+
# Defaults to false.
|
|
984
|
+
# @param require_precise_result_size [true, false]
|
|
985
|
+
# Optional.
|
|
986
|
+
#
|
|
987
|
+
# Controls if the search job request requires the return of a precise
|
|
988
|
+
# count of the first 300 results. Setting this to `true` ensures
|
|
989
|
+
# consistency in the number of results per page. Best practice is to set this
|
|
990
|
+
# value to true if a client allows users to jump directly to a
|
|
991
|
+
# non-sequential search results page.
|
|
992
|
+
#
|
|
993
|
+
# Enabling this flag may adversely impact performance.
|
|
994
|
+
#
|
|
995
|
+
# Defaults to false.
|
|
996
|
+
# @param histogram_queries [Array<Google::Cloud::Talent::V4beta1::HistogramQuery | Hash>]
|
|
997
|
+
# Optional.
|
|
998
|
+
#
|
|
999
|
+
# An expression specifies a histogram request against matching jobs.
|
|
1000
|
+
#
|
|
1001
|
+
# Expression syntax is an aggregation function call with histogram facets and
|
|
1002
|
+
# other options.
|
|
1003
|
+
#
|
|
1004
|
+
# Available aggregation function calls are:
|
|
1005
|
+
# * `count(string_histogram_facet)`: Count the number of matching entities,
|
|
1006
|
+
# for each distinct attribute value.
|
|
1007
|
+
# * `count(numeric_histogram_facet, list of buckets)`: Count the number of
|
|
1008
|
+
# matching entities within each bucket.
|
|
1009
|
+
#
|
|
1010
|
+
# Data types:
|
|
1011
|
+
#
|
|
1012
|
+
# * Histogram facet: facet names with format [a-zA-Z][a-zA-Z0-9_]+.
|
|
1013
|
+
# * String: string like "any string with backslash escape for quote(\")."
|
|
1014
|
+
# * Number: whole number and floating point number like 10, -1 and -0.01.
|
|
1015
|
+
# * List: list of elements with comma(,) separator surrounded by square
|
|
1016
|
+
# brackets, for example, [1, 2, 3] and ["one", "two", "three"].
|
|
1017
|
+
#
|
|
1018
|
+
# Built-in constants:
|
|
1019
|
+
#
|
|
1020
|
+
# * MIN (minimum number similar to java Double.MIN_VALUE)
|
|
1021
|
+
# * MAX (maximum number similar to java Double.MAX_VALUE)
|
|
1022
|
+
#
|
|
1023
|
+
# Built-in functions:
|
|
1024
|
+
#
|
|
1025
|
+
# * bucket(start, end[, label]): bucket built-in function creates a bucket
|
|
1026
|
+
# with range of [start, end). Note that the end is exclusive, for example,
|
|
1027
|
+
# bucket(1, MAX, "positive number") or bucket(1, 10).
|
|
1028
|
+
#
|
|
1029
|
+
# Job histogram facets:
|
|
1030
|
+
#
|
|
1031
|
+
# * company_id: histogram by {Job#distributor_company_id}.
|
|
1032
|
+
# * company_display_name: histogram by
|
|
1033
|
+
# {Google::Cloud::Talent::V4beta1::Job#company_display_name Job#company_display_name}.
|
|
1034
|
+
# * employment_type: histogram by
|
|
1035
|
+
# {Google::Cloud::Talent::V4beta1::Job#employment_types Job#employment_types},
|
|
1036
|
+
# for example, "FULL_TIME", "PART_TIME".
|
|
1037
|
+
# * company_size: histogram by
|
|
1038
|
+
# {Google::Cloud::Talent::V4beta1::CompanySize CompanySize}, for example,
|
|
1039
|
+
# "SMALL", "MEDIUM", "BIG".
|
|
1040
|
+
# * publish_time_in_month: histogram by the {Job#publish_time} in months.
|
|
1041
|
+
# Must specify list of numeric buckets in spec.
|
|
1042
|
+
# * publish_time_in_year: histogram by the {Job#publish_time} in years.
|
|
1043
|
+
# Must specify list of numeric buckets in spec.
|
|
1044
|
+
# * degree_type: histogram by the {Job#degree_type}, for example,
|
|
1045
|
+
# "Bachelors", "Masters".
|
|
1046
|
+
# * job_level: histogram by the
|
|
1047
|
+
# {Google::Cloud::Talent::V4beta1::Job#job_level Job#job_level}, for example,
|
|
1048
|
+
# "Entry Level".
|
|
1049
|
+
# * country: histogram by the country code of jobs, for example, "US", "FR".
|
|
1050
|
+
# * admin1: histogram by the admin1 code of jobs, which is a global
|
|
1051
|
+
# placeholder referring to the state, province, or the particular term a
|
|
1052
|
+
# country uses to define the geographic structure below the country level,
|
|
1053
|
+
# for example, "CA", "IL".
|
|
1054
|
+
# * city: histogram by a combination of the "city name, admin1 code". For
|
|
1055
|
+
# example, "Mountain View, CA", "New York, NY".
|
|
1056
|
+
# * admin1_country: histogram by a combination of the "admin1 code, country",
|
|
1057
|
+
# for example, "CA, US", "IL, US".
|
|
1058
|
+
# * city_coordinate: histogram by the city center's GPS coordinates (latitude
|
|
1059
|
+
# and longitude), for example, 37.4038522,-122.0987765. Since the coordinates
|
|
1060
|
+
# of a city center can change, customers may need to refresh them
|
|
1061
|
+
# periodically.
|
|
1062
|
+
# * locale: histogram by the
|
|
1063
|
+
# {Google::Cloud::Talent::V4beta1::Job#language_code Job#language_code}, for
|
|
1064
|
+
# example, "en-US", "fr-FR".
|
|
1065
|
+
# * language: histogram by the language subtag of the
|
|
1066
|
+
# {Google::Cloud::Talent::V4beta1::Job#language_code Job#language_code}, for
|
|
1067
|
+
# example, "en", "fr".
|
|
1068
|
+
# * category: histogram by the
|
|
1069
|
+
# {Google::Cloud::Talent::V4beta1::JobCategory JobCategory}, for example,
|
|
1070
|
+
# "COMPUTER_AND_IT", "HEALTHCARE".
|
|
1071
|
+
# * base_compensation_unit: histogram by the {CompensationUnit} of base
|
|
1072
|
+
# salary, for example, "WEEKLY", "MONTHLY".
|
|
1073
|
+
# * base_compensation: histogram by the base salary. Must specify list of
|
|
1074
|
+
# numeric buckets to group results by.
|
|
1075
|
+
# * annualized_base_compensation: histogram by the base annualized salary.
|
|
1076
|
+
# Must specify list of numeric buckets to group results by.
|
|
1077
|
+
# * annualized_total_compensation: histogram by the total annualized salary.
|
|
1078
|
+
# Must specify list of numeric buckets to group results by.
|
|
1079
|
+
# * string_custom_attribute: histogram by string
|
|
1080
|
+
# {Google::Cloud::Talent::V4beta1::Job#custom_attributes Job#custom_attributes}.
|
|
1081
|
+
# Values can be accessed via square bracket notations like
|
|
1082
|
+
# string_custom_attribute["key1"].
|
|
1083
|
+
# * numeric_custom_attribute: histogram by numeric
|
|
1084
|
+
# {Google::Cloud::Talent::V4beta1::Job#custom_attributes Job#custom_attributes}.
|
|
1085
|
+
# Values can be accessed via square bracket notations like
|
|
1086
|
+
# numeric_custom_attribute["key1"]. Must specify list of numeric buckets to
|
|
1087
|
+
# group results by.
|
|
1088
|
+
#
|
|
1089
|
+
# Example expressions:
|
|
1090
|
+
# * count(admin1)
|
|
1091
|
+
# * count(base_compensation, [bucket(1000, 10000), bucket(10000, 100000),
|
|
1092
|
+
# bucket(100000, MAX)])
|
|
1093
|
+
# * count(string_custom_attribute["some-string-custom-attribute"])
|
|
1094
|
+
# * count(numeric_custom_attribute["some-numeric-custom-attribute"],
|
|
1095
|
+
# [bucket(MIN, 0, "negative"), bucket(0, MAX, "non-negative"])
|
|
1096
|
+
# A hash of the same form as `Google::Cloud::Talent::V4beta1::HistogramQuery`
|
|
1097
|
+
# can also be provided.
|
|
1098
|
+
# @param job_view [Google::Cloud::Talent::V4beta1::JobView]
|
|
1099
|
+
# Optional.
|
|
1100
|
+
#
|
|
1101
|
+
# The desired job attributes returned for jobs in the
|
|
1102
|
+
# search response. Defaults to {JobView::SMALL} if no value is specified.
|
|
1103
|
+
# @param offset [Integer]
|
|
1104
|
+
# Optional.
|
|
1105
|
+
#
|
|
1106
|
+
# An integer that specifies the current offset (that is, starting result
|
|
1107
|
+
# location, amongst the jobs deemed by the API as relevant) in search
|
|
1108
|
+
# results. This field is only considered if
|
|
1109
|
+
# {Google::Cloud::Talent::V4beta1::SearchJobsRequest#page_token page_token} is
|
|
1110
|
+
# unset.
|
|
1111
|
+
#
|
|
1112
|
+
# For example, 0 means to return results starting from the first matching
|
|
1113
|
+
# job, and 10 means to return from the 11th job. This can be used for
|
|
1114
|
+
# pagination, (for example, pageSize = 10 and offset = 10 means to return
|
|
1115
|
+
# from the second page).
|
|
1116
|
+
# @param page_size [Integer]
|
|
1117
|
+
# The maximum number of resources contained in the underlying API
|
|
1118
|
+
# response. If page streaming is performed per-resource, this
|
|
1119
|
+
# parameter does not affect the return value. If page streaming is
|
|
1120
|
+
# performed per-page, this determines the maximum number of
|
|
1121
|
+
# resources in a page.
|
|
1122
|
+
# @param order_by [String]
|
|
1123
|
+
# Optional.
|
|
1124
|
+
#
|
|
1125
|
+
# The criteria determining how search results are sorted. Default is
|
|
1126
|
+
# "relevance desc".
|
|
1127
|
+
#
|
|
1128
|
+
# Supported options are:
|
|
1129
|
+
#
|
|
1130
|
+
# * "relevance desc": By relevance descending, as determined by the API
|
|
1131
|
+
# algorithms. Relevance thresholding of query results is only available
|
|
1132
|
+
# with this ordering.
|
|
1133
|
+
# * "posting`_`publish`_`time desc": By
|
|
1134
|
+
# {Google::Cloud::Talent::V4beta1::Job#posting_publish_time Job#posting_publish_time}
|
|
1135
|
+
# descending.
|
|
1136
|
+
# * "posting`_`update`_`time desc": By
|
|
1137
|
+
# {Google::Cloud::Talent::V4beta1::Job#posting_update_time Job#posting_update_time}
|
|
1138
|
+
# descending.
|
|
1139
|
+
# * "title": By {Google::Cloud::Talent::V4beta1::Job#title Job#title} ascending.
|
|
1140
|
+
# * "title desc": By {Google::Cloud::Talent::V4beta1::Job#title Job#title}
|
|
1141
|
+
# descending.
|
|
1142
|
+
# * "annualized`_`base`_`compensation": By job's
|
|
1143
|
+
# {Google::Cloud::Talent::V4beta1::CompensationInfo#annualized_base_compensation_range CompensationInfo#annualized_base_compensation_range}
|
|
1144
|
+
# ascending. Jobs whose annualized base compensation is unspecified are put
|
|
1145
|
+
# at the end of search results.
|
|
1146
|
+
# * "annualized`_`base`_`compensation desc": By job's
|
|
1147
|
+
# {Google::Cloud::Talent::V4beta1::CompensationInfo#annualized_base_compensation_range CompensationInfo#annualized_base_compensation_range}
|
|
1148
|
+
# descending. Jobs whose annualized base compensation is unspecified are put
|
|
1149
|
+
# at the end of search results.
|
|
1150
|
+
# * "annualized`_`total`_`compensation": By job's
|
|
1151
|
+
# {Google::Cloud::Talent::V4beta1::CompensationInfo#annualized_total_compensation_range CompensationInfo#annualized_total_compensation_range}
|
|
1152
|
+
# ascending. Jobs whose annualized base compensation is unspecified are put
|
|
1153
|
+
# at the end of search results.
|
|
1154
|
+
# * "annualized`_`total`_`compensation desc": By job's
|
|
1155
|
+
# {Google::Cloud::Talent::V4beta1::CompensationInfo#annualized_total_compensation_range CompensationInfo#annualized_total_compensation_range}
|
|
1156
|
+
# descending. Jobs whose annualized base compensation is unspecified are put
|
|
1157
|
+
# at the end of search results.
|
|
1158
|
+
# * "custom`_`ranking desc": By the relevance score adjusted to the
|
|
1159
|
+
# {SearchJobsRequest#custom_ranking_info#ranking_expression} with weight
|
|
1160
|
+
# factor assigned by
|
|
1161
|
+
# {SearchJobsRequest#custom_ranking_info#importance_level} in descending
|
|
1162
|
+
# order.
|
|
1163
|
+
# * "location`_`distance": By the distance between the location on jobs and
|
|
1164
|
+
# locations specified in the
|
|
1165
|
+
# {SearchJobsRequest#job_query#location_filters}.
|
|
1166
|
+
# When this order is selected, the
|
|
1167
|
+
# {SearchJobsRequest#job_query#location_filters} must not be empty. When
|
|
1168
|
+
# a job has multiple locations, the location closest to one of the locations
|
|
1169
|
+
# specified in the location filter will be used to calculate location
|
|
1170
|
+
# distance. Distance is calculated by the distance between two lat/long
|
|
1171
|
+
# coordinates, with a precision of 10e-4 degrees (11.3 meters).
|
|
1172
|
+
# Jobs that don't have locations specified will be ranked below jobs having
|
|
1173
|
+
# locations.
|
|
1174
|
+
# Diversification strategy is still applied unless explicitly disabled in
|
|
1175
|
+
# {Google::Cloud::Talent::V4beta1::SearchJobsRequest#diversification_level SearchJobsRequest#diversification_level}.
|
|
1176
|
+
# @param diversification_level [Google::Cloud::Talent::V4beta1::SearchJobsRequest::DiversificationLevel]
|
|
1177
|
+
# Optional.
|
|
1178
|
+
#
|
|
1179
|
+
# Controls whether highly similar jobs are returned next to each other in
|
|
1180
|
+
# the search results. Jobs are identified as highly similar based on
|
|
1181
|
+
# their titles, job categories, and locations. Highly similar results are
|
|
1182
|
+
# clustered so that only one representative job of the cluster is
|
|
1183
|
+
# displayed to the job seeker higher up in the results, with the other jobs
|
|
1184
|
+
# being displayed lower down in the results.
|
|
1185
|
+
#
|
|
1186
|
+
# Defaults to
|
|
1187
|
+
# {Google::Cloud::Talent::V4beta1::SearchJobsRequest::DiversificationLevel::SIMPLE DiversificationLevel::SIMPLE}
|
|
1188
|
+
# if no value is specified.
|
|
1189
|
+
# @param custom_ranking_info [Google::Cloud::Talent::V4beta1::SearchJobsRequest::CustomRankingInfo | Hash]
|
|
1190
|
+
# Optional.
|
|
1191
|
+
#
|
|
1192
|
+
# Controls over how job documents get ranked on top of existing relevance
|
|
1193
|
+
# score (determined by API algorithm).
|
|
1194
|
+
# A hash of the same form as `Google::Cloud::Talent::V4beta1::SearchJobsRequest::CustomRankingInfo`
|
|
1195
|
+
# can also be provided.
|
|
1196
|
+
# @param disable_keyword_match [true, false]
|
|
1197
|
+
# Optional.
|
|
1198
|
+
#
|
|
1199
|
+
# Controls whether to disable exact keyword match on {Job#job_title},
|
|
1200
|
+
# {Google::Cloud::Talent::V4beta1::Job#description Job#description},
|
|
1201
|
+
# {Google::Cloud::Talent::V4beta1::Job#company_display_name Job#company_display_name},
|
|
1202
|
+
# [Job.locations][0],
|
|
1203
|
+
# {Google::Cloud::Talent::V4beta1::Job#qualifications Job#qualifications}. When
|
|
1204
|
+
# disable keyword match is turned off, a keyword match returns jobs that do
|
|
1205
|
+
# not match given category filters when there are matching keywords. For
|
|
1206
|
+
# example, for the query "program manager," a result is returned even if the
|
|
1207
|
+
# job posting has the title "software developer," which doesn't fall into
|
|
1208
|
+
# "program manager" ontology, but does have "program manager" appearing in
|
|
1209
|
+
# its description.
|
|
1210
|
+
#
|
|
1211
|
+
# For queries like "cloud" that don't contain title or
|
|
1212
|
+
# location specific ontology, jobs with "cloud" keyword matches are returned
|
|
1213
|
+
# regardless of this flag's value.
|
|
1214
|
+
#
|
|
1215
|
+
# Please use {Company#keyword_searchable_custom_fields} or
|
|
1216
|
+
# {Company#keyword_searchable_custom_attributes} if company specific
|
|
1217
|
+
# globally matched custom field/attribute string values is needed. Enabling
|
|
1218
|
+
# keyword match improves recall of subsequent search requests.
|
|
1219
|
+
#
|
|
1220
|
+
# Defaults to false.
|
|
1221
|
+
# @param options [Google::Gax::CallOptions]
|
|
1222
|
+
# Overrides the default settings for this call, e.g, timeout,
|
|
1223
|
+
# retries, etc.
|
|
1224
|
+
# @yield [result, operation] Access the result along with the RPC operation
|
|
1225
|
+
# @yieldparam result [Google::Gax::PagedEnumerable<Google::Cloud::Talent::V4beta1::SearchJobsResponse::MatchingJob>]
|
|
1226
|
+
# @yieldparam operation [GRPC::ActiveCall::Operation]
|
|
1227
|
+
# @return [Google::Gax::PagedEnumerable<Google::Cloud::Talent::V4beta1::SearchJobsResponse::MatchingJob>]
|
|
1228
|
+
# An enumerable of Google::Cloud::Talent::V4beta1::SearchJobsResponse::MatchingJob instances.
|
|
1229
|
+
# See Google::Gax::PagedEnumerable documentation for other
|
|
1230
|
+
# operations such as per-page iteration or access to the response
|
|
1231
|
+
# object.
|
|
1232
|
+
# @raise [Google::Gax::GaxError] if the RPC is aborted.
|
|
1233
|
+
# @example
|
|
1234
|
+
# require "google/cloud/talent"
|
|
1235
|
+
#
|
|
1236
|
+
# job_service_client = Google::Cloud::Talent::JobService.new(version: :v4beta1)
|
|
1237
|
+
# formatted_parent = Google::Cloud::Talent::V4beta1::JobServiceClient.project_path("[PROJECT]")
|
|
1238
|
+
#
|
|
1239
|
+
# # TODO: Initialize `request_metadata`:
|
|
1240
|
+
# request_metadata = {}
|
|
1241
|
+
#
|
|
1242
|
+
# # Iterate over all results.
|
|
1243
|
+
# job_service_client.search_jobs_for_alert(formatted_parent, request_metadata).each do |element|
|
|
1244
|
+
# # Process element.
|
|
1245
|
+
# end
|
|
1246
|
+
#
|
|
1247
|
+
# # Or iterate over results one page at a time.
|
|
1248
|
+
# job_service_client.search_jobs_for_alert(formatted_parent, request_metadata).each_page do |page|
|
|
1249
|
+
# # Process each page at a time.
|
|
1250
|
+
# page.each do |element|
|
|
1251
|
+
# # Process element.
|
|
1252
|
+
# end
|
|
1253
|
+
# end
|
|
1254
|
+
|
|
1255
|
+
def search_jobs_for_alert \
|
|
1256
|
+
parent,
|
|
1257
|
+
request_metadata,
|
|
1258
|
+
search_mode: nil,
|
|
1259
|
+
job_query: nil,
|
|
1260
|
+
enable_broadening: nil,
|
|
1261
|
+
require_precise_result_size: nil,
|
|
1262
|
+
histogram_queries: nil,
|
|
1263
|
+
job_view: nil,
|
|
1264
|
+
offset: nil,
|
|
1265
|
+
page_size: nil,
|
|
1266
|
+
order_by: nil,
|
|
1267
|
+
diversification_level: nil,
|
|
1268
|
+
custom_ranking_info: nil,
|
|
1269
|
+
disable_keyword_match: nil,
|
|
1270
|
+
options: nil,
|
|
1271
|
+
&block
|
|
1272
|
+
req = {
|
|
1273
|
+
parent: parent,
|
|
1274
|
+
request_metadata: request_metadata,
|
|
1275
|
+
search_mode: search_mode,
|
|
1276
|
+
job_query: job_query,
|
|
1277
|
+
enable_broadening: enable_broadening,
|
|
1278
|
+
require_precise_result_size: require_precise_result_size,
|
|
1279
|
+
histogram_queries: histogram_queries,
|
|
1280
|
+
job_view: job_view,
|
|
1281
|
+
offset: offset,
|
|
1282
|
+
page_size: page_size,
|
|
1283
|
+
order_by: order_by,
|
|
1284
|
+
diversification_level: diversification_level,
|
|
1285
|
+
custom_ranking_info: custom_ranking_info,
|
|
1286
|
+
disable_keyword_match: disable_keyword_match
|
|
1287
|
+
}.delete_if { |_, v| v.nil? }
|
|
1288
|
+
req = Google::Gax::to_proto(req, Google::Cloud::Talent::V4beta1::SearchJobsRequest)
|
|
1289
|
+
@search_jobs_for_alert.call(req, options, &block)
|
|
1290
|
+
end
|
|
1291
|
+
end
|
|
1292
|
+
end
|
|
1293
|
+
end
|
|
1294
|
+
end
|
|
1295
|
+
end
|