pub struct JobQuery {Show 14 fields
pub query: String,
pub query_language_code: String,
pub companies: Vec<String>,
pub location_filters: Vec<LocationFilter>,
pub job_categories: Vec<i32>,
pub commute_filter: Option<CommuteFilter>,
pub company_display_names: Vec<String>,
pub compensation_filter: Option<CompensationFilter>,
pub custom_attribute_filter: String,
pub disable_spell_check: bool,
pub employment_types: Vec<i32>,
pub language_codes: Vec<String>,
pub publish_time_range: Option<TimestampRange>,
pub excluded_jobs: Vec<String>,
}
Expand description
The query required to perform a search query.
Fields§
§query: String
The query string that matches against the job title, description, and location fields.
The maximum number of allowed characters is 255.
query_language_code: String
The language code of [query][google.cloud.talent.v4beta1.JobQuery.query]. For example, “en-US”. This field helps to better interpret the query.
If a value isn’t specified, the query language code is automatically detected, which may not be accurate.
Language code should be in BCP-47 format, such as “en-US” or “sr-Latn”. For more information, see Tags for Identifying Languages.
companies: Vec<String>
This filter specifies the company entities to search against.
If a value isn’t specified, jobs are searched for against all companies.
If multiple values are specified, jobs are searched against the companies specified.
The format is “projects/{project_id}/tenants/{tenant_id}/companies/{company_id}”. For example, “projects/foo/tenants/bar/companies/baz”.
If tenant id is unspecified, the default tenant is used. For example, “projects/foo/companies/bar”.
At most 20 company filters are allowed.
location_filters: Vec<LocationFilter>
The location filter specifies geo-regions containing the jobs to search against. See [LocationFilter][google.cloud.talent.v4beta1.LocationFilter] for more information.
If a location value isn’t specified, jobs fitting the other search criteria are retrieved regardless of where they’re located.
If multiple values are specified, jobs are retrieved from any of the specified locations. If different values are specified for the [LocationFilter.distance_in_miles][google.cloud.talent.v4beta1.LocationFilter.distance_in_miles] parameter, the maximum provided distance is used for all locations.
At most 5 location filters are allowed.
job_categories: Vec<i32>
The category filter specifies the categories of jobs to search against. See [JobCategory][google.cloud.talent.v4beta1.JobCategory] for more information.
If a value isn’t specified, jobs from any category are searched against.
If multiple values are specified, jobs from any of the specified categories are searched against.
commute_filter: Option<CommuteFilter>
Allows filtering jobs by commute time with different travel methods (for example, driving or public transit).
Note: This only works when you specify a [CommuteMethod][google.cloud.talent.v4beta1.CommuteMethod]. In this case, [location_filters][google.cloud.talent.v4beta1.JobQuery.location_filters] is ignored.
Currently we don’t support sorting by commute time.
company_display_names: Vec<String>
This filter specifies the company [Company.display_name][google.cloud.talent.v4beta1.Company.display_name] of the jobs to search against. The company name must match the value exactly.
Alternatively, the value being searched for can be wrapped in different
match operators.
SUBSTRING_MATCH(\[value\])
The company name must contain a case insensitive substring match of the
value. Using this function may increase latency.
Sample Value: SUBSTRING_MATCH(google)
MULTI_WORD_TOKEN_MATCH(\[value\])
The value will be treated as a multi word token and the company name must
contain a case insensitive match of the value. Using this function may
increase latency.
Sample Value: MULTI_WORD_TOKEN_MATCH(google)
If a value isn’t specified, jobs within the search results are associated with any company.
If multiple values are specified, jobs within the search results may be associated with any of the specified companies.
At most 20 company display name filters are allowed.
compensation_filter: Option<CompensationFilter>
This search filter is applied only to [Job.compensation_info][google.cloud.talent.v4beta1.Job.compensation_info]. For example, if the filter is specified as “Hourly job with per-hour compensation > $15”, only jobs meeting these criteria are searched. If a filter isn’t defined, all open jobs are searched.
custom_attribute_filter: String
This filter specifies a structured syntax to match against the
[Job.custom_attributes][google.cloud.talent.v4beta1.Job.custom_attributes]
marked as filterable
.
The syntax for this expression is a subset of SQL syntax.
Supported operators are: =
, !=
, <
, <=
, >
, and >=
where the
left of the operator is a custom field key and the right of the operator
is a number or a quoted string. You must escape backslash (\) and
quote (") characters.
Supported functions are LOWER(\[field_name\])
to
perform a case insensitive match and EMPTY(\[field_name\])
to filter on the
existence of a key.
Boolean expressions (AND/OR/NOT) are supported up to 3 levels of nesting (for example, “((A AND B AND C) OR NOT D) AND E”), a maximum of 100 comparisons or functions are allowed in the expression. The expression must be < 10000 bytes in length.
Sample Query:
(LOWER(driving_license)="class \"a\"" OR EMPTY(driving_license)) AND driving_years > 10
disable_spell_check: bool
This flag controls the spell-check feature. If false, the service attempts to correct a misspelled query, for example, “enginee” is corrected to “engineer”.
Defaults to false: a spell check is performed.
employment_types: Vec<i32>
The employment type filter specifies the employment type of jobs to search against, such as [EmploymentType.FULL_TIME][google.cloud.talent.v4beta1.EmploymentType.FULL_TIME].
If a value isn’t specified, jobs in the search results includes any employment type.
If multiple values are specified, jobs in the search results include any of the specified employment types.
language_codes: Vec<String>
This filter specifies the locale of jobs to search against, for example, “en-US”.
If a value isn’t specified, the search results can contain jobs in any locale.
Language codes should be in BCP-47 format, such as “en-US” or “sr-Latn”. For more information, see Tags for Identifying Languages.
At most 10 language code filters are allowed.
publish_time_range: Option<TimestampRange>
Jobs published within a range specified by this filter are searched against.
excluded_jobs: Vec<String>
This filter specifies a list of job names to be excluded during search.
At most 400 excluded job names are allowed.
Implementations§
source§impl JobQuery
impl JobQuery
sourcepub fn job_categories(
&self,
) -> FilterMap<Cloned<Iter<'_, i32>>, fn(_: i32) -> Option<JobCategory>>
pub fn job_categories( &self, ) -> FilterMap<Cloned<Iter<'_, i32>>, fn(_: i32) -> Option<JobCategory>>
Returns an iterator which yields the valid enum values contained in job_categories
.
sourcepub fn push_job_categories(&mut self, value: JobCategory)
pub fn push_job_categories(&mut self, value: JobCategory)
Appends the provided enum value to job_categories
.
sourcepub fn employment_types(
&self,
) -> FilterMap<Cloned<Iter<'_, i32>>, fn(_: i32) -> Option<EmploymentType>>
pub fn employment_types( &self, ) -> FilterMap<Cloned<Iter<'_, i32>>, fn(_: i32) -> Option<EmploymentType>>
Returns an iterator which yields the valid enum values contained in employment_types
.
sourcepub fn push_employment_types(&mut self, value: EmploymentType)
pub fn push_employment_types(&mut self, value: EmploymentType)
Appends the provided enum value to employment_types
.
Trait Implementations§
source§impl Message for JobQuery
impl Message for JobQuery
source§fn encoded_len(&self) -> usize
fn encoded_len(&self) -> usize
source§fn encode(&self, buf: &mut impl BufMut) -> Result<(), EncodeError>where
Self: Sized,
fn encode(&self, buf: &mut impl BufMut) -> Result<(), EncodeError>where
Self: Sized,
source§fn encode_to_vec(&self) -> Vec<u8>where
Self: Sized,
fn encode_to_vec(&self) -> Vec<u8>where
Self: Sized,
source§fn encode_length_delimited(
&self,
buf: &mut impl BufMut,
) -> Result<(), EncodeError>where
Self: Sized,
fn encode_length_delimited(
&self,
buf: &mut impl BufMut,
) -> Result<(), EncodeError>where
Self: Sized,
source§fn encode_length_delimited_to_vec(&self) -> Vec<u8>where
Self: Sized,
fn encode_length_delimited_to_vec(&self) -> Vec<u8>where
Self: Sized,
source§fn decode(buf: impl Buf) -> Result<Self, DecodeError>where
Self: Default,
fn decode(buf: impl Buf) -> Result<Self, DecodeError>where
Self: Default,
source§fn decode_length_delimited(buf: impl Buf) -> Result<Self, DecodeError>where
Self: Default,
fn decode_length_delimited(buf: impl Buf) -> Result<Self, DecodeError>where
Self: Default,
source§fn merge(&mut self, buf: impl Buf) -> Result<(), DecodeError>where
Self: Sized,
fn merge(&mut self, buf: impl Buf) -> Result<(), DecodeError>where
Self: Sized,
self
. Read moresource§fn merge_length_delimited(&mut self, buf: impl Buf) -> Result<(), DecodeError>where
Self: Sized,
fn merge_length_delimited(&mut self, buf: impl Buf) -> Result<(), DecodeError>where
Self: Sized,
self
.source§impl PartialEq for JobQuery
impl PartialEq for JobQuery
impl StructuralPartialEq for JobQuery
Auto Trait Implementations§
impl Freeze for JobQuery
impl RefUnwindSafe for JobQuery
impl Send for JobQuery
impl Sync for JobQuery
impl Unpin for JobQuery
impl UnwindSafe for JobQuery
Blanket Implementations§
source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
source§impl<T> IntoRequest<T> for T
impl<T> IntoRequest<T> for T
source§fn into_request(self) -> Request<T>
fn into_request(self) -> Request<T>
T
in a tonic::Request