• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 /*
2  * Copyright 2020 Google LLC
3  *
4  * Licensed under the Apache License, Version 2.0 (the "License");
5  * you may not use this file except in compliance with the License.
6  * You may obtain a copy of the License at
7  *
8  *     https://www.apache.org/licenses/LICENSE-2.0
9  *
10  * Unless required by applicable law or agreed to in writing, software
11  * distributed under the License is distributed on an "AS IS" BASIS,
12  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13  * See the License for the specific language governing permissions and
14  * limitations under the License.
15  */
16 // Generated by the protocol buffer compiler.  DO NOT EDIT!
17 // source: google/cloud/talent/v4beta1/job.proto
18 
19 package com.google.cloud.talent.v4beta1;
20 
21 public interface JobOrBuilder
22     extends
23     // @@protoc_insertion_point(interface_extends:google.cloud.talent.v4beta1.Job)
24     com.google.protobuf.MessageOrBuilder {
25 
26   /**
27    *
28    *
29    * <pre>
30    * Required during job update.
31    * The resource name for the job. This is generated by the service when a
32    * job is created.
33    * The format is
34    * "projects/{project_id}/tenants/{tenant_id}/jobs/{job_id}". For
35    * example, "projects/foo/tenants/bar/jobs/baz".
36    * If tenant id is unspecified, the default tenant is used. For
37    * example, "projects/foo/jobs/bar".
38    * Use of this field in job queries and API calls is preferred over the use of
39    * [requisition_id][google.cloud.talent.v4beta1.Job.requisition_id] since this
40    * value is unique.
41    * </pre>
42    *
43    * <code>string name = 1;</code>
44    *
45    * @return The name.
46    */
getName()47   java.lang.String getName();
48   /**
49    *
50    *
51    * <pre>
52    * Required during job update.
53    * The resource name for the job. This is generated by the service when a
54    * job is created.
55    * The format is
56    * "projects/{project_id}/tenants/{tenant_id}/jobs/{job_id}". For
57    * example, "projects/foo/tenants/bar/jobs/baz".
58    * If tenant id is unspecified, the default tenant is used. For
59    * example, "projects/foo/jobs/bar".
60    * Use of this field in job queries and API calls is preferred over the use of
61    * [requisition_id][google.cloud.talent.v4beta1.Job.requisition_id] since this
62    * value is unique.
63    * </pre>
64    *
65    * <code>string name = 1;</code>
66    *
67    * @return The bytes for name.
68    */
getNameBytes()69   com.google.protobuf.ByteString getNameBytes();
70 
71   /**
72    *
73    *
74    * <pre>
75    * Required. The resource name of the company listing the job.
76    * The format is
77    * "projects/{project_id}/tenants/{tenant_id}/companies/{company_id}". For
78    * example, "projects/foo/tenants/bar/companies/baz".
79    * If tenant id is unspecified, the default tenant is used. For
80    * example, "projects/foo/companies/bar".
81    * </pre>
82    *
83    * <code>
84    * string company = 2 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = { ... }
85    * </code>
86    *
87    * @return The company.
88    */
getCompany()89   java.lang.String getCompany();
90   /**
91    *
92    *
93    * <pre>
94    * Required. The resource name of the company listing the job.
95    * The format is
96    * "projects/{project_id}/tenants/{tenant_id}/companies/{company_id}". For
97    * example, "projects/foo/tenants/bar/companies/baz".
98    * If tenant id is unspecified, the default tenant is used. For
99    * example, "projects/foo/companies/bar".
100    * </pre>
101    *
102    * <code>
103    * string company = 2 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = { ... }
104    * </code>
105    *
106    * @return The bytes for company.
107    */
getCompanyBytes()108   com.google.protobuf.ByteString getCompanyBytes();
109 
110   /**
111    *
112    *
113    * <pre>
114    * Required. The requisition ID, also referred to as the posting ID, is
115    * assigned by the client to identify a job. This field is intended to be used
116    * by clients for client identification and tracking of postings. A job isn't
117    * allowed to be created if there is another job with the same
118    * [company][google.cloud.talent.v4beta1.Job.name],
119    * [language_code][google.cloud.talent.v4beta1.Job.language_code] and
120    * [requisition_id][google.cloud.talent.v4beta1.Job.requisition_id].
121    * The maximum number of allowed characters is 255.
122    * </pre>
123    *
124    * <code>string requisition_id = 3 [(.google.api.field_behavior) = REQUIRED];</code>
125    *
126    * @return The requisitionId.
127    */
getRequisitionId()128   java.lang.String getRequisitionId();
129   /**
130    *
131    *
132    * <pre>
133    * Required. The requisition ID, also referred to as the posting ID, is
134    * assigned by the client to identify a job. This field is intended to be used
135    * by clients for client identification and tracking of postings. A job isn't
136    * allowed to be created if there is another job with the same
137    * [company][google.cloud.talent.v4beta1.Job.name],
138    * [language_code][google.cloud.talent.v4beta1.Job.language_code] and
139    * [requisition_id][google.cloud.talent.v4beta1.Job.requisition_id].
140    * The maximum number of allowed characters is 255.
141    * </pre>
142    *
143    * <code>string requisition_id = 3 [(.google.api.field_behavior) = REQUIRED];</code>
144    *
145    * @return The bytes for requisitionId.
146    */
getRequisitionIdBytes()147   com.google.protobuf.ByteString getRequisitionIdBytes();
148 
149   /**
150    *
151    *
152    * <pre>
153    * Required. The title of the job, such as "Software Engineer"
154    * The maximum number of allowed characters is 500.
155    * </pre>
156    *
157    * <code>string title = 4 [(.google.api.field_behavior) = REQUIRED];</code>
158    *
159    * @return The title.
160    */
getTitle()161   java.lang.String getTitle();
162   /**
163    *
164    *
165    * <pre>
166    * Required. The title of the job, such as "Software Engineer"
167    * The maximum number of allowed characters is 500.
168    * </pre>
169    *
170    * <code>string title = 4 [(.google.api.field_behavior) = REQUIRED];</code>
171    *
172    * @return The bytes for title.
173    */
getTitleBytes()174   com.google.protobuf.ByteString getTitleBytes();
175 
176   /**
177    *
178    *
179    * <pre>
180    * Required. The description of the job, which typically includes a
181    * multi-paragraph description of the company and related information.
182    * Separate fields are provided on the job object for
183    * [responsibilities][google.cloud.talent.v4beta1.Job.responsibilities],
184    * [qualifications][google.cloud.talent.v4beta1.Job.qualifications], and other
185    * job characteristics. Use of these separate job fields is recommended.
186    * This field accepts and sanitizes HTML input, and also accepts
187    * bold, italic, ordered list, and unordered list markup tags.
188    * The maximum number of allowed characters is 100,000.
189    * </pre>
190    *
191    * <code>string description = 5 [(.google.api.field_behavior) = REQUIRED];</code>
192    *
193    * @return The description.
194    */
getDescription()195   java.lang.String getDescription();
196   /**
197    *
198    *
199    * <pre>
200    * Required. The description of the job, which typically includes a
201    * multi-paragraph description of the company and related information.
202    * Separate fields are provided on the job object for
203    * [responsibilities][google.cloud.talent.v4beta1.Job.responsibilities],
204    * [qualifications][google.cloud.talent.v4beta1.Job.qualifications], and other
205    * job characteristics. Use of these separate job fields is recommended.
206    * This field accepts and sanitizes HTML input, and also accepts
207    * bold, italic, ordered list, and unordered list markup tags.
208    * The maximum number of allowed characters is 100,000.
209    * </pre>
210    *
211    * <code>string description = 5 [(.google.api.field_behavior) = REQUIRED];</code>
212    *
213    * @return The bytes for description.
214    */
getDescriptionBytes()215   com.google.protobuf.ByteString getDescriptionBytes();
216 
217   /**
218    *
219    *
220    * <pre>
221    * Strongly recommended for the best service experience.
222    * Location(s) where the employer is looking to hire for this job posting.
223    * Specifying the full street address(es) of the hiring location enables
224    * better API results, especially job searches by commute time.
225    * At most 50 locations are allowed for best search performance. If a job has
226    * more locations, it is suggested to split it into multiple jobs with unique
227    * [requisition_id][google.cloud.talent.v4beta1.Job.requisition_id]s (e.g.
228    * 'ReqA' becomes 'ReqA-1', 'ReqA-2', and so on.) as multiple jobs with the
229    * same [company][google.cloud.talent.v4beta1.Job.company],
230    * [language_code][google.cloud.talent.v4beta1.Job.language_code] and
231    * [requisition_id][google.cloud.talent.v4beta1.Job.requisition_id] are not
232    * allowed. If the original
233    * [requisition_id][google.cloud.talent.v4beta1.Job.requisition_id] must be
234    * preserved, a custom field should be used for storage. It is also suggested
235    * to group the locations that close to each other in the same job for better
236    * search experience.
237    * The maximum number of allowed characters is 500.
238    * </pre>
239    *
240    * <code>repeated string addresses = 6;</code>
241    *
242    * @return A list containing the addresses.
243    */
getAddressesList()244   java.util.List<java.lang.String> getAddressesList();
245   /**
246    *
247    *
248    * <pre>
249    * Strongly recommended for the best service experience.
250    * Location(s) where the employer is looking to hire for this job posting.
251    * Specifying the full street address(es) of the hiring location enables
252    * better API results, especially job searches by commute time.
253    * At most 50 locations are allowed for best search performance. If a job has
254    * more locations, it is suggested to split it into multiple jobs with unique
255    * [requisition_id][google.cloud.talent.v4beta1.Job.requisition_id]s (e.g.
256    * 'ReqA' becomes 'ReqA-1', 'ReqA-2', and so on.) as multiple jobs with the
257    * same [company][google.cloud.talent.v4beta1.Job.company],
258    * [language_code][google.cloud.talent.v4beta1.Job.language_code] and
259    * [requisition_id][google.cloud.talent.v4beta1.Job.requisition_id] are not
260    * allowed. If the original
261    * [requisition_id][google.cloud.talent.v4beta1.Job.requisition_id] must be
262    * preserved, a custom field should be used for storage. It is also suggested
263    * to group the locations that close to each other in the same job for better
264    * search experience.
265    * The maximum number of allowed characters is 500.
266    * </pre>
267    *
268    * <code>repeated string addresses = 6;</code>
269    *
270    * @return The count of addresses.
271    */
getAddressesCount()272   int getAddressesCount();
273   /**
274    *
275    *
276    * <pre>
277    * Strongly recommended for the best service experience.
278    * Location(s) where the employer is looking to hire for this job posting.
279    * Specifying the full street address(es) of the hiring location enables
280    * better API results, especially job searches by commute time.
281    * At most 50 locations are allowed for best search performance. If a job has
282    * more locations, it is suggested to split it into multiple jobs with unique
283    * [requisition_id][google.cloud.talent.v4beta1.Job.requisition_id]s (e.g.
284    * 'ReqA' becomes 'ReqA-1', 'ReqA-2', and so on.) as multiple jobs with the
285    * same [company][google.cloud.talent.v4beta1.Job.company],
286    * [language_code][google.cloud.talent.v4beta1.Job.language_code] and
287    * [requisition_id][google.cloud.talent.v4beta1.Job.requisition_id] are not
288    * allowed. If the original
289    * [requisition_id][google.cloud.talent.v4beta1.Job.requisition_id] must be
290    * preserved, a custom field should be used for storage. It is also suggested
291    * to group the locations that close to each other in the same job for better
292    * search experience.
293    * The maximum number of allowed characters is 500.
294    * </pre>
295    *
296    * <code>repeated string addresses = 6;</code>
297    *
298    * @param index The index of the element to return.
299    * @return The addresses at the given index.
300    */
getAddresses(int index)301   java.lang.String getAddresses(int index);
302   /**
303    *
304    *
305    * <pre>
306    * Strongly recommended for the best service experience.
307    * Location(s) where the employer is looking to hire for this job posting.
308    * Specifying the full street address(es) of the hiring location enables
309    * better API results, especially job searches by commute time.
310    * At most 50 locations are allowed for best search performance. If a job has
311    * more locations, it is suggested to split it into multiple jobs with unique
312    * [requisition_id][google.cloud.talent.v4beta1.Job.requisition_id]s (e.g.
313    * 'ReqA' becomes 'ReqA-1', 'ReqA-2', and so on.) as multiple jobs with the
314    * same [company][google.cloud.talent.v4beta1.Job.company],
315    * [language_code][google.cloud.talent.v4beta1.Job.language_code] and
316    * [requisition_id][google.cloud.talent.v4beta1.Job.requisition_id] are not
317    * allowed. If the original
318    * [requisition_id][google.cloud.talent.v4beta1.Job.requisition_id] must be
319    * preserved, a custom field should be used for storage. It is also suggested
320    * to group the locations that close to each other in the same job for better
321    * search experience.
322    * The maximum number of allowed characters is 500.
323    * </pre>
324    *
325    * <code>repeated string addresses = 6;</code>
326    *
327    * @param index The index of the value to return.
328    * @return The bytes of the addresses at the given index.
329    */
getAddressesBytes(int index)330   com.google.protobuf.ByteString getAddressesBytes(int index);
331 
332   /**
333    *
334    *
335    * <pre>
336    * Job application information.
337    * </pre>
338    *
339    * <code>.google.cloud.talent.v4beta1.Job.ApplicationInfo application_info = 7;</code>
340    *
341    * @return Whether the applicationInfo field is set.
342    */
hasApplicationInfo()343   boolean hasApplicationInfo();
344   /**
345    *
346    *
347    * <pre>
348    * Job application information.
349    * </pre>
350    *
351    * <code>.google.cloud.talent.v4beta1.Job.ApplicationInfo application_info = 7;</code>
352    *
353    * @return The applicationInfo.
354    */
getApplicationInfo()355   com.google.cloud.talent.v4beta1.Job.ApplicationInfo getApplicationInfo();
356   /**
357    *
358    *
359    * <pre>
360    * Job application information.
361    * </pre>
362    *
363    * <code>.google.cloud.talent.v4beta1.Job.ApplicationInfo application_info = 7;</code>
364    */
getApplicationInfoOrBuilder()365   com.google.cloud.talent.v4beta1.Job.ApplicationInfoOrBuilder getApplicationInfoOrBuilder();
366 
367   /**
368    *
369    *
370    * <pre>
371    * The benefits included with the job.
372    * </pre>
373    *
374    * <code>repeated .google.cloud.talent.v4beta1.JobBenefit job_benefits = 8;</code>
375    *
376    * @return A list containing the jobBenefits.
377    */
getJobBenefitsList()378   java.util.List<com.google.cloud.talent.v4beta1.JobBenefit> getJobBenefitsList();
379   /**
380    *
381    *
382    * <pre>
383    * The benefits included with the job.
384    * </pre>
385    *
386    * <code>repeated .google.cloud.talent.v4beta1.JobBenefit job_benefits = 8;</code>
387    *
388    * @return The count of jobBenefits.
389    */
getJobBenefitsCount()390   int getJobBenefitsCount();
391   /**
392    *
393    *
394    * <pre>
395    * The benefits included with the job.
396    * </pre>
397    *
398    * <code>repeated .google.cloud.talent.v4beta1.JobBenefit job_benefits = 8;</code>
399    *
400    * @param index The index of the element to return.
401    * @return The jobBenefits at the given index.
402    */
getJobBenefits(int index)403   com.google.cloud.talent.v4beta1.JobBenefit getJobBenefits(int index);
404   /**
405    *
406    *
407    * <pre>
408    * The benefits included with the job.
409    * </pre>
410    *
411    * <code>repeated .google.cloud.talent.v4beta1.JobBenefit job_benefits = 8;</code>
412    *
413    * @return A list containing the enum numeric values on the wire for jobBenefits.
414    */
getJobBenefitsValueList()415   java.util.List<java.lang.Integer> getJobBenefitsValueList();
416   /**
417    *
418    *
419    * <pre>
420    * The benefits included with the job.
421    * </pre>
422    *
423    * <code>repeated .google.cloud.talent.v4beta1.JobBenefit job_benefits = 8;</code>
424    *
425    * @param index The index of the value to return.
426    * @return The enum numeric value on the wire of jobBenefits at the given index.
427    */
getJobBenefitsValue(int index)428   int getJobBenefitsValue(int index);
429 
430   /**
431    *
432    *
433    * <pre>
434    * Job compensation information (a.k.a. "pay rate") i.e., the compensation
435    * that will paid to the employee.
436    * </pre>
437    *
438    * <code>.google.cloud.talent.v4beta1.CompensationInfo compensation_info = 9;</code>
439    *
440    * @return Whether the compensationInfo field is set.
441    */
hasCompensationInfo()442   boolean hasCompensationInfo();
443   /**
444    *
445    *
446    * <pre>
447    * Job compensation information (a.k.a. "pay rate") i.e., the compensation
448    * that will paid to the employee.
449    * </pre>
450    *
451    * <code>.google.cloud.talent.v4beta1.CompensationInfo compensation_info = 9;</code>
452    *
453    * @return The compensationInfo.
454    */
getCompensationInfo()455   com.google.cloud.talent.v4beta1.CompensationInfo getCompensationInfo();
456   /**
457    *
458    *
459    * <pre>
460    * Job compensation information (a.k.a. "pay rate") i.e., the compensation
461    * that will paid to the employee.
462    * </pre>
463    *
464    * <code>.google.cloud.talent.v4beta1.CompensationInfo compensation_info = 9;</code>
465    */
getCompensationInfoOrBuilder()466   com.google.cloud.talent.v4beta1.CompensationInfoOrBuilder getCompensationInfoOrBuilder();
467 
468   /**
469    *
470    *
471    * <pre>
472    * A map of fields to hold both filterable and non-filterable custom job
473    * attributes that are not covered by the provided structured fields.
474    * The keys of the map are strings up to 64 bytes and must match the
475    * pattern: `[a-zA-Z][a-zA-Z0-9_]*`. For example, key0LikeThis or
476    * KEY_1_LIKE_THIS.
477    * At most 100 filterable and at most 100 unfilterable keys are supported.
478    * For filterable `string_values`, across all keys at most 200 values are
479    * allowed, with each string no more than 255 characters. For unfilterable
480    * `string_values`, the maximum total size of `string_values` across all keys
481    * is 50KB.
482    * </pre>
483    *
484    * <code>map&lt;string, .google.cloud.talent.v4beta1.CustomAttribute&gt; custom_attributes = 10;
485    * </code>
486    */
getCustomAttributesCount()487   int getCustomAttributesCount();
488   /**
489    *
490    *
491    * <pre>
492    * A map of fields to hold both filterable and non-filterable custom job
493    * attributes that are not covered by the provided structured fields.
494    * The keys of the map are strings up to 64 bytes and must match the
495    * pattern: `[a-zA-Z][a-zA-Z0-9_]*`. For example, key0LikeThis or
496    * KEY_1_LIKE_THIS.
497    * At most 100 filterable and at most 100 unfilterable keys are supported.
498    * For filterable `string_values`, across all keys at most 200 values are
499    * allowed, with each string no more than 255 characters. For unfilterable
500    * `string_values`, the maximum total size of `string_values` across all keys
501    * is 50KB.
502    * </pre>
503    *
504    * <code>map&lt;string, .google.cloud.talent.v4beta1.CustomAttribute&gt; custom_attributes = 10;
505    * </code>
506    */
containsCustomAttributes(java.lang.String key)507   boolean containsCustomAttributes(java.lang.String key);
508   /** Use {@link #getCustomAttributesMap()} instead. */
509   @java.lang.Deprecated
510   java.util.Map<java.lang.String, com.google.cloud.talent.v4beta1.CustomAttribute>
getCustomAttributes()511       getCustomAttributes();
512   /**
513    *
514    *
515    * <pre>
516    * A map of fields to hold both filterable and non-filterable custom job
517    * attributes that are not covered by the provided structured fields.
518    * The keys of the map are strings up to 64 bytes and must match the
519    * pattern: `[a-zA-Z][a-zA-Z0-9_]*`. For example, key0LikeThis or
520    * KEY_1_LIKE_THIS.
521    * At most 100 filterable and at most 100 unfilterable keys are supported.
522    * For filterable `string_values`, across all keys at most 200 values are
523    * allowed, with each string no more than 255 characters. For unfilterable
524    * `string_values`, the maximum total size of `string_values` across all keys
525    * is 50KB.
526    * </pre>
527    *
528    * <code>map&lt;string, .google.cloud.talent.v4beta1.CustomAttribute&gt; custom_attributes = 10;
529    * </code>
530    */
531   java.util.Map<java.lang.String, com.google.cloud.talent.v4beta1.CustomAttribute>
getCustomAttributesMap()532       getCustomAttributesMap();
533   /**
534    *
535    *
536    * <pre>
537    * A map of fields to hold both filterable and non-filterable custom job
538    * attributes that are not covered by the provided structured fields.
539    * The keys of the map are strings up to 64 bytes and must match the
540    * pattern: `[a-zA-Z][a-zA-Z0-9_]*`. For example, key0LikeThis or
541    * KEY_1_LIKE_THIS.
542    * At most 100 filterable and at most 100 unfilterable keys are supported.
543    * For filterable `string_values`, across all keys at most 200 values are
544    * allowed, with each string no more than 255 characters. For unfilterable
545    * `string_values`, the maximum total size of `string_values` across all keys
546    * is 50KB.
547    * </pre>
548    *
549    * <code>map&lt;string, .google.cloud.talent.v4beta1.CustomAttribute&gt; custom_attributes = 10;
550    * </code>
551    */
552   /* nullable */
getCustomAttributesOrDefault( java.lang.String key, com.google.cloud.talent.v4beta1.CustomAttribute defaultValue)553   com.google.cloud.talent.v4beta1.CustomAttribute getCustomAttributesOrDefault(
554       java.lang.String key,
555       /* nullable */
556       com.google.cloud.talent.v4beta1.CustomAttribute defaultValue);
557   /**
558    *
559    *
560    * <pre>
561    * A map of fields to hold both filterable and non-filterable custom job
562    * attributes that are not covered by the provided structured fields.
563    * The keys of the map are strings up to 64 bytes and must match the
564    * pattern: `[a-zA-Z][a-zA-Z0-9_]*`. For example, key0LikeThis or
565    * KEY_1_LIKE_THIS.
566    * At most 100 filterable and at most 100 unfilterable keys are supported.
567    * For filterable `string_values`, across all keys at most 200 values are
568    * allowed, with each string no more than 255 characters. For unfilterable
569    * `string_values`, the maximum total size of `string_values` across all keys
570    * is 50KB.
571    * </pre>
572    *
573    * <code>map&lt;string, .google.cloud.talent.v4beta1.CustomAttribute&gt; custom_attributes = 10;
574    * </code>
575    */
getCustomAttributesOrThrow(java.lang.String key)576   com.google.cloud.talent.v4beta1.CustomAttribute getCustomAttributesOrThrow(java.lang.String key);
577 
578   /**
579    *
580    *
581    * <pre>
582    * The desired education degrees for the job, such as Bachelors, Masters.
583    * </pre>
584    *
585    * <code>repeated .google.cloud.talent.v4beta1.DegreeType degree_types = 11;</code>
586    *
587    * @return A list containing the degreeTypes.
588    */
getDegreeTypesList()589   java.util.List<com.google.cloud.talent.v4beta1.DegreeType> getDegreeTypesList();
590   /**
591    *
592    *
593    * <pre>
594    * The desired education degrees for the job, such as Bachelors, Masters.
595    * </pre>
596    *
597    * <code>repeated .google.cloud.talent.v4beta1.DegreeType degree_types = 11;</code>
598    *
599    * @return The count of degreeTypes.
600    */
getDegreeTypesCount()601   int getDegreeTypesCount();
602   /**
603    *
604    *
605    * <pre>
606    * The desired education degrees for the job, such as Bachelors, Masters.
607    * </pre>
608    *
609    * <code>repeated .google.cloud.talent.v4beta1.DegreeType degree_types = 11;</code>
610    *
611    * @param index The index of the element to return.
612    * @return The degreeTypes at the given index.
613    */
getDegreeTypes(int index)614   com.google.cloud.talent.v4beta1.DegreeType getDegreeTypes(int index);
615   /**
616    *
617    *
618    * <pre>
619    * The desired education degrees for the job, such as Bachelors, Masters.
620    * </pre>
621    *
622    * <code>repeated .google.cloud.talent.v4beta1.DegreeType degree_types = 11;</code>
623    *
624    * @return A list containing the enum numeric values on the wire for degreeTypes.
625    */
getDegreeTypesValueList()626   java.util.List<java.lang.Integer> getDegreeTypesValueList();
627   /**
628    *
629    *
630    * <pre>
631    * The desired education degrees for the job, such as Bachelors, Masters.
632    * </pre>
633    *
634    * <code>repeated .google.cloud.talent.v4beta1.DegreeType degree_types = 11;</code>
635    *
636    * @param index The index of the value to return.
637    * @return The enum numeric value on the wire of degreeTypes at the given index.
638    */
getDegreeTypesValue(int index)639   int getDegreeTypesValue(int index);
640 
641   /**
642    *
643    *
644    * <pre>
645    * The department or functional area within the company with the open
646    * position.
647    * The maximum number of allowed characters is 255.
648    * </pre>
649    *
650    * <code>string department = 12;</code>
651    *
652    * @return The department.
653    */
getDepartment()654   java.lang.String getDepartment();
655   /**
656    *
657    *
658    * <pre>
659    * The department or functional area within the company with the open
660    * position.
661    * The maximum number of allowed characters is 255.
662    * </pre>
663    *
664    * <code>string department = 12;</code>
665    *
666    * @return The bytes for department.
667    */
getDepartmentBytes()668   com.google.protobuf.ByteString getDepartmentBytes();
669 
670   /**
671    *
672    *
673    * <pre>
674    * The employment type(s) of a job, for example,
675    * [full time][google.cloud.talent.v4beta1.EmploymentType.FULL_TIME] or
676    * [part time][google.cloud.talent.v4beta1.EmploymentType.PART_TIME].
677    * </pre>
678    *
679    * <code>repeated .google.cloud.talent.v4beta1.EmploymentType employment_types = 13;</code>
680    *
681    * @return A list containing the employmentTypes.
682    */
getEmploymentTypesList()683   java.util.List<com.google.cloud.talent.v4beta1.EmploymentType> getEmploymentTypesList();
684   /**
685    *
686    *
687    * <pre>
688    * The employment type(s) of a job, for example,
689    * [full time][google.cloud.talent.v4beta1.EmploymentType.FULL_TIME] or
690    * [part time][google.cloud.talent.v4beta1.EmploymentType.PART_TIME].
691    * </pre>
692    *
693    * <code>repeated .google.cloud.talent.v4beta1.EmploymentType employment_types = 13;</code>
694    *
695    * @return The count of employmentTypes.
696    */
getEmploymentTypesCount()697   int getEmploymentTypesCount();
698   /**
699    *
700    *
701    * <pre>
702    * The employment type(s) of a job, for example,
703    * [full time][google.cloud.talent.v4beta1.EmploymentType.FULL_TIME] or
704    * [part time][google.cloud.talent.v4beta1.EmploymentType.PART_TIME].
705    * </pre>
706    *
707    * <code>repeated .google.cloud.talent.v4beta1.EmploymentType employment_types = 13;</code>
708    *
709    * @param index The index of the element to return.
710    * @return The employmentTypes at the given index.
711    */
getEmploymentTypes(int index)712   com.google.cloud.talent.v4beta1.EmploymentType getEmploymentTypes(int index);
713   /**
714    *
715    *
716    * <pre>
717    * The employment type(s) of a job, for example,
718    * [full time][google.cloud.talent.v4beta1.EmploymentType.FULL_TIME] or
719    * [part time][google.cloud.talent.v4beta1.EmploymentType.PART_TIME].
720    * </pre>
721    *
722    * <code>repeated .google.cloud.talent.v4beta1.EmploymentType employment_types = 13;</code>
723    *
724    * @return A list containing the enum numeric values on the wire for employmentTypes.
725    */
getEmploymentTypesValueList()726   java.util.List<java.lang.Integer> getEmploymentTypesValueList();
727   /**
728    *
729    *
730    * <pre>
731    * The employment type(s) of a job, for example,
732    * [full time][google.cloud.talent.v4beta1.EmploymentType.FULL_TIME] or
733    * [part time][google.cloud.talent.v4beta1.EmploymentType.PART_TIME].
734    * </pre>
735    *
736    * <code>repeated .google.cloud.talent.v4beta1.EmploymentType employment_types = 13;</code>
737    *
738    * @param index The index of the value to return.
739    * @return The enum numeric value on the wire of employmentTypes at the given index.
740    */
getEmploymentTypesValue(int index)741   int getEmploymentTypesValue(int index);
742 
743   /**
744    *
745    *
746    * <pre>
747    * A description of bonus, commission, and other compensation
748    * incentives associated with the job not including salary or pay.
749    * The maximum number of allowed characters is 10,000.
750    * </pre>
751    *
752    * <code>string incentives = 14;</code>
753    *
754    * @return The incentives.
755    */
getIncentives()756   java.lang.String getIncentives();
757   /**
758    *
759    *
760    * <pre>
761    * A description of bonus, commission, and other compensation
762    * incentives associated with the job not including salary or pay.
763    * The maximum number of allowed characters is 10,000.
764    * </pre>
765    *
766    * <code>string incentives = 14;</code>
767    *
768    * @return The bytes for incentives.
769    */
getIncentivesBytes()770   com.google.protobuf.ByteString getIncentivesBytes();
771 
772   /**
773    *
774    *
775    * <pre>
776    * The language of the posting. This field is distinct from
777    * any requirements for fluency that are associated with the job.
778    * Language codes must be in BCP-47 format, such as "en-US" or "sr-Latn".
779    * For more information, see
780    * [Tags for Identifying Languages](https://tools.ietf.org/html/bcp47){:
781    * class="external" target="_blank" }.
782    * If this field is unspecified and
783    * [Job.description][google.cloud.talent.v4beta1.Job.description] is present,
784    * detected language code based on
785    * [Job.description][google.cloud.talent.v4beta1.Job.description] is assigned,
786    * otherwise defaults to 'en_US'.
787    * </pre>
788    *
789    * <code>string language_code = 15;</code>
790    *
791    * @return The languageCode.
792    */
getLanguageCode()793   java.lang.String getLanguageCode();
794   /**
795    *
796    *
797    * <pre>
798    * The language of the posting. This field is distinct from
799    * any requirements for fluency that are associated with the job.
800    * Language codes must be in BCP-47 format, such as "en-US" or "sr-Latn".
801    * For more information, see
802    * [Tags for Identifying Languages](https://tools.ietf.org/html/bcp47){:
803    * class="external" target="_blank" }.
804    * If this field is unspecified and
805    * [Job.description][google.cloud.talent.v4beta1.Job.description] is present,
806    * detected language code based on
807    * [Job.description][google.cloud.talent.v4beta1.Job.description] is assigned,
808    * otherwise defaults to 'en_US'.
809    * </pre>
810    *
811    * <code>string language_code = 15;</code>
812    *
813    * @return The bytes for languageCode.
814    */
getLanguageCodeBytes()815   com.google.protobuf.ByteString getLanguageCodeBytes();
816 
817   /**
818    *
819    *
820    * <pre>
821    * The experience level associated with the job, such as "Entry Level".
822    * </pre>
823    *
824    * <code>.google.cloud.talent.v4beta1.JobLevel job_level = 16;</code>
825    *
826    * @return The enum numeric value on the wire for jobLevel.
827    */
getJobLevelValue()828   int getJobLevelValue();
829   /**
830    *
831    *
832    * <pre>
833    * The experience level associated with the job, such as "Entry Level".
834    * </pre>
835    *
836    * <code>.google.cloud.talent.v4beta1.JobLevel job_level = 16;</code>
837    *
838    * @return The jobLevel.
839    */
getJobLevel()840   com.google.cloud.talent.v4beta1.JobLevel getJobLevel();
841 
842   /**
843    *
844    *
845    * <pre>
846    * A promotion value of the job, as determined by the client.
847    * The value determines the sort order of the jobs returned when searching for
848    * jobs using the featured jobs search call, with higher promotional values
849    * being returned first and ties being resolved by relevance sort. Only the
850    * jobs with a promotionValue &gt;0 are returned in a FEATURED_JOB_SEARCH.
851    * Default value is 0, and negative values are treated as 0.
852    * </pre>
853    *
854    * <code>int32 promotion_value = 17;</code>
855    *
856    * @return The promotionValue.
857    */
getPromotionValue()858   int getPromotionValue();
859 
860   /**
861    *
862    *
863    * <pre>
864    * A description of the qualifications required to perform the
865    * job. The use of this field is recommended
866    * as an alternative to using the more general
867    * [description][google.cloud.talent.v4beta1.Job.description] field.
868    * This field accepts and sanitizes HTML input, and also accepts
869    * bold, italic, ordered list, and unordered list markup tags.
870    * The maximum number of allowed characters is 10,000.
871    * </pre>
872    *
873    * <code>string qualifications = 18;</code>
874    *
875    * @return The qualifications.
876    */
getQualifications()877   java.lang.String getQualifications();
878   /**
879    *
880    *
881    * <pre>
882    * A description of the qualifications required to perform the
883    * job. The use of this field is recommended
884    * as an alternative to using the more general
885    * [description][google.cloud.talent.v4beta1.Job.description] field.
886    * This field accepts and sanitizes HTML input, and also accepts
887    * bold, italic, ordered list, and unordered list markup tags.
888    * The maximum number of allowed characters is 10,000.
889    * </pre>
890    *
891    * <code>string qualifications = 18;</code>
892    *
893    * @return The bytes for qualifications.
894    */
getQualificationsBytes()895   com.google.protobuf.ByteString getQualificationsBytes();
896 
897   /**
898    *
899    *
900    * <pre>
901    * A description of job responsibilities. The use of this field is
902    * recommended as an alternative to using the more general
903    * [description][google.cloud.talent.v4beta1.Job.description] field.
904    * This field accepts and sanitizes HTML input, and also accepts
905    * bold, italic, ordered list, and unordered list markup tags.
906    * The maximum number of allowed characters is 10,000.
907    * </pre>
908    *
909    * <code>string responsibilities = 19;</code>
910    *
911    * @return The responsibilities.
912    */
getResponsibilities()913   java.lang.String getResponsibilities();
914   /**
915    *
916    *
917    * <pre>
918    * A description of job responsibilities. The use of this field is
919    * recommended as an alternative to using the more general
920    * [description][google.cloud.talent.v4beta1.Job.description] field.
921    * This field accepts and sanitizes HTML input, and also accepts
922    * bold, italic, ordered list, and unordered list markup tags.
923    * The maximum number of allowed characters is 10,000.
924    * </pre>
925    *
926    * <code>string responsibilities = 19;</code>
927    *
928    * @return The bytes for responsibilities.
929    */
getResponsibilitiesBytes()930   com.google.protobuf.ByteString getResponsibilitiesBytes();
931 
932   /**
933    *
934    *
935    * <pre>
936    * The job [PostingRegion][google.cloud.talent.v4beta1.PostingRegion] (for
937    * example, state, country) throughout which the job is available. If this
938    * field is set, a
939    * [LocationFilter][google.cloud.talent.v4beta1.LocationFilter] in a search
940    * query within the job region finds this job posting if an exact location
941    * match isn't specified. If this field is set to
942    * [PostingRegion.NATION][google.cloud.talent.v4beta1.PostingRegion.NATION] or
943    * [PostingRegion.ADMINISTRATIVE_AREA][google.cloud.talent.v4beta1.PostingRegion.ADMINISTRATIVE_AREA],
944    * setting job [Job.addresses][google.cloud.talent.v4beta1.Job.addresses] to
945    * the same location level as this field is strongly recommended.
946    * </pre>
947    *
948    * <code>.google.cloud.talent.v4beta1.PostingRegion posting_region = 20;</code>
949    *
950    * @return The enum numeric value on the wire for postingRegion.
951    */
getPostingRegionValue()952   int getPostingRegionValue();
953   /**
954    *
955    *
956    * <pre>
957    * The job [PostingRegion][google.cloud.talent.v4beta1.PostingRegion] (for
958    * example, state, country) throughout which the job is available. If this
959    * field is set, a
960    * [LocationFilter][google.cloud.talent.v4beta1.LocationFilter] in a search
961    * query within the job region finds this job posting if an exact location
962    * match isn't specified. If this field is set to
963    * [PostingRegion.NATION][google.cloud.talent.v4beta1.PostingRegion.NATION] or
964    * [PostingRegion.ADMINISTRATIVE_AREA][google.cloud.talent.v4beta1.PostingRegion.ADMINISTRATIVE_AREA],
965    * setting job [Job.addresses][google.cloud.talent.v4beta1.Job.addresses] to
966    * the same location level as this field is strongly recommended.
967    * </pre>
968    *
969    * <code>.google.cloud.talent.v4beta1.PostingRegion posting_region = 20;</code>
970    *
971    * @return The postingRegion.
972    */
getPostingRegion()973   com.google.cloud.talent.v4beta1.PostingRegion getPostingRegion();
974 
975   /**
976    *
977    *
978    * <pre>
979    * Deprecated. The job is only visible to the owner.
980    * The visibility of the job.
981    * Defaults to
982    * [Visibility.ACCOUNT_ONLY][google.cloud.talent.v4beta1.Visibility.ACCOUNT_ONLY]
983    * if not specified.
984    * </pre>
985    *
986    * <code>.google.cloud.talent.v4beta1.Visibility visibility = 21 [deprecated = true];</code>
987    *
988    * @deprecated google.cloud.talent.v4beta1.Job.visibility is deprecated. See
989    *     google/cloud/talent/v4beta1/job.proto;l=296
990    * @return The enum numeric value on the wire for visibility.
991    */
992   @java.lang.Deprecated
getVisibilityValue()993   int getVisibilityValue();
994   /**
995    *
996    *
997    * <pre>
998    * Deprecated. The job is only visible to the owner.
999    * The visibility of the job.
1000    * Defaults to
1001    * [Visibility.ACCOUNT_ONLY][google.cloud.talent.v4beta1.Visibility.ACCOUNT_ONLY]
1002    * if not specified.
1003    * </pre>
1004    *
1005    * <code>.google.cloud.talent.v4beta1.Visibility visibility = 21 [deprecated = true];</code>
1006    *
1007    * @deprecated google.cloud.talent.v4beta1.Job.visibility is deprecated. See
1008    *     google/cloud/talent/v4beta1/job.proto;l=296
1009    * @return The visibility.
1010    */
1011   @java.lang.Deprecated
getVisibility()1012   com.google.cloud.talent.v4beta1.Visibility getVisibility();
1013 
1014   /**
1015    *
1016    *
1017    * <pre>
1018    * The start timestamp of the job in UTC time zone. Typically this field
1019    * is used for contracting engagements. Invalid timestamps are ignored.
1020    * </pre>
1021    *
1022    * <code>.google.protobuf.Timestamp job_start_time = 22;</code>
1023    *
1024    * @return Whether the jobStartTime field is set.
1025    */
hasJobStartTime()1026   boolean hasJobStartTime();
1027   /**
1028    *
1029    *
1030    * <pre>
1031    * The start timestamp of the job in UTC time zone. Typically this field
1032    * is used for contracting engagements. Invalid timestamps are ignored.
1033    * </pre>
1034    *
1035    * <code>.google.protobuf.Timestamp job_start_time = 22;</code>
1036    *
1037    * @return The jobStartTime.
1038    */
getJobStartTime()1039   com.google.protobuf.Timestamp getJobStartTime();
1040   /**
1041    *
1042    *
1043    * <pre>
1044    * The start timestamp of the job in UTC time zone. Typically this field
1045    * is used for contracting engagements. Invalid timestamps are ignored.
1046    * </pre>
1047    *
1048    * <code>.google.protobuf.Timestamp job_start_time = 22;</code>
1049    */
getJobStartTimeOrBuilder()1050   com.google.protobuf.TimestampOrBuilder getJobStartTimeOrBuilder();
1051 
1052   /**
1053    *
1054    *
1055    * <pre>
1056    * The end timestamp of the job. Typically this field is used for contracting
1057    * engagements. Invalid timestamps are ignored.
1058    * </pre>
1059    *
1060    * <code>.google.protobuf.Timestamp job_end_time = 23;</code>
1061    *
1062    * @return Whether the jobEndTime field is set.
1063    */
hasJobEndTime()1064   boolean hasJobEndTime();
1065   /**
1066    *
1067    *
1068    * <pre>
1069    * The end timestamp of the job. Typically this field is used for contracting
1070    * engagements. Invalid timestamps are ignored.
1071    * </pre>
1072    *
1073    * <code>.google.protobuf.Timestamp job_end_time = 23;</code>
1074    *
1075    * @return The jobEndTime.
1076    */
getJobEndTime()1077   com.google.protobuf.Timestamp getJobEndTime();
1078   /**
1079    *
1080    *
1081    * <pre>
1082    * The end timestamp of the job. Typically this field is used for contracting
1083    * engagements. Invalid timestamps are ignored.
1084    * </pre>
1085    *
1086    * <code>.google.protobuf.Timestamp job_end_time = 23;</code>
1087    */
getJobEndTimeOrBuilder()1088   com.google.protobuf.TimestampOrBuilder getJobEndTimeOrBuilder();
1089 
1090   /**
1091    *
1092    *
1093    * <pre>
1094    * The timestamp this job posting was most recently published. The default
1095    * value is the time the request arrives at the server. Invalid timestamps are
1096    * ignored.
1097    * </pre>
1098    *
1099    * <code>.google.protobuf.Timestamp posting_publish_time = 24;</code>
1100    *
1101    * @return Whether the postingPublishTime field is set.
1102    */
hasPostingPublishTime()1103   boolean hasPostingPublishTime();
1104   /**
1105    *
1106    *
1107    * <pre>
1108    * The timestamp this job posting was most recently published. The default
1109    * value is the time the request arrives at the server. Invalid timestamps are
1110    * ignored.
1111    * </pre>
1112    *
1113    * <code>.google.protobuf.Timestamp posting_publish_time = 24;</code>
1114    *
1115    * @return The postingPublishTime.
1116    */
getPostingPublishTime()1117   com.google.protobuf.Timestamp getPostingPublishTime();
1118   /**
1119    *
1120    *
1121    * <pre>
1122    * The timestamp this job posting was most recently published. The default
1123    * value is the time the request arrives at the server. Invalid timestamps are
1124    * ignored.
1125    * </pre>
1126    *
1127    * <code>.google.protobuf.Timestamp posting_publish_time = 24;</code>
1128    */
getPostingPublishTimeOrBuilder()1129   com.google.protobuf.TimestampOrBuilder getPostingPublishTimeOrBuilder();
1130 
1131   /**
1132    *
1133    *
1134    * <pre>
1135    * Strongly recommended for the best service experience.
1136    * The expiration timestamp of the job. After this timestamp, the
1137    * job is marked as expired, and it no longer appears in search results. The
1138    * expired job can't be listed by the
1139    * [ListJobs][google.cloud.talent.v4beta1.JobService.ListJobs] API, but it can
1140    * be retrieved with the
1141    * [GetJob][google.cloud.talent.v4beta1.JobService.GetJob] API or updated with
1142    * the [UpdateJob][google.cloud.talent.v4beta1.JobService.UpdateJob] API or
1143    * deleted with the
1144    * [DeleteJob][google.cloud.talent.v4beta1.JobService.DeleteJob] API. An
1145    * expired job can be updated and opened again by using a future expiration
1146    * timestamp. Updating an expired job fails if there is another existing open
1147    * job with same [company][google.cloud.talent.v4beta1.Job.company],
1148    * [language_code][google.cloud.talent.v4beta1.Job.language_code] and
1149    * [requisition_id][google.cloud.talent.v4beta1.Job.requisition_id].
1150    * The expired jobs are retained in our system for 90 days. However, the
1151    * overall expired job count cannot exceed 3 times the maximum number of
1152    * open jobs over previous 7 days. If this threshold is exceeded,
1153    * expired jobs are cleaned out in order of earliest expire time.
1154    * Expired jobs are no longer accessible after they are cleaned
1155    * out.
1156    * Invalid timestamps are ignored, and treated as expire time not provided.
1157    * If the timestamp is before the instant request is made, the job
1158    * is treated as expired immediately on creation. This kind of job can
1159    * not be updated. And when creating a job with past timestamp, the
1160    * [posting_publish_time][google.cloud.talent.v4beta1.Job.posting_publish_time]
1161    * must be set before
1162    * [posting_expire_time][google.cloud.talent.v4beta1.Job.posting_expire_time].
1163    * The purpose of this feature is to allow other objects, such as
1164    * [Application][google.cloud.talent.v4beta1.Application], to refer a job that
1165    * didn't exist in the system prior to becoming expired. If you want to modify
1166    * a job that was expired on creation, delete it and create a new one.
1167    * If this value isn't provided at the time of job creation or is invalid,
1168    * the job posting expires after 30 days from the job's creation time. For
1169    * example, if the job was created on 2017/01/01 13:00AM UTC with an
1170    * unspecified expiration date, the job expires after 2017/01/31 13:00AM UTC.
1171    * If this value isn't provided on job update, it depends on the field masks
1172    * set by
1173    * [UpdateJobRequest.update_mask][google.cloud.talent.v4beta1.UpdateJobRequest.update_mask].
1174    * If the field masks include
1175    * [job_end_time][google.cloud.talent.v4beta1.Job.job_end_time], or the masks
1176    * are empty meaning that every field is updated, the job posting expires
1177    * after 30 days from the job's last update time. Otherwise the expiration
1178    * date isn't updated.
1179    * </pre>
1180    *
1181    * <code>.google.protobuf.Timestamp posting_expire_time = 25;</code>
1182    *
1183    * @return Whether the postingExpireTime field is set.
1184    */
hasPostingExpireTime()1185   boolean hasPostingExpireTime();
1186   /**
1187    *
1188    *
1189    * <pre>
1190    * Strongly recommended for the best service experience.
1191    * The expiration timestamp of the job. After this timestamp, the
1192    * job is marked as expired, and it no longer appears in search results. The
1193    * expired job can't be listed by the
1194    * [ListJobs][google.cloud.talent.v4beta1.JobService.ListJobs] API, but it can
1195    * be retrieved with the
1196    * [GetJob][google.cloud.talent.v4beta1.JobService.GetJob] API or updated with
1197    * the [UpdateJob][google.cloud.talent.v4beta1.JobService.UpdateJob] API or
1198    * deleted with the
1199    * [DeleteJob][google.cloud.talent.v4beta1.JobService.DeleteJob] API. An
1200    * expired job can be updated and opened again by using a future expiration
1201    * timestamp. Updating an expired job fails if there is another existing open
1202    * job with same [company][google.cloud.talent.v4beta1.Job.company],
1203    * [language_code][google.cloud.talent.v4beta1.Job.language_code] and
1204    * [requisition_id][google.cloud.talent.v4beta1.Job.requisition_id].
1205    * The expired jobs are retained in our system for 90 days. However, the
1206    * overall expired job count cannot exceed 3 times the maximum number of
1207    * open jobs over previous 7 days. If this threshold is exceeded,
1208    * expired jobs are cleaned out in order of earliest expire time.
1209    * Expired jobs are no longer accessible after they are cleaned
1210    * out.
1211    * Invalid timestamps are ignored, and treated as expire time not provided.
1212    * If the timestamp is before the instant request is made, the job
1213    * is treated as expired immediately on creation. This kind of job can
1214    * not be updated. And when creating a job with past timestamp, the
1215    * [posting_publish_time][google.cloud.talent.v4beta1.Job.posting_publish_time]
1216    * must be set before
1217    * [posting_expire_time][google.cloud.talent.v4beta1.Job.posting_expire_time].
1218    * The purpose of this feature is to allow other objects, such as
1219    * [Application][google.cloud.talent.v4beta1.Application], to refer a job that
1220    * didn't exist in the system prior to becoming expired. If you want to modify
1221    * a job that was expired on creation, delete it and create a new one.
1222    * If this value isn't provided at the time of job creation or is invalid,
1223    * the job posting expires after 30 days from the job's creation time. For
1224    * example, if the job was created on 2017/01/01 13:00AM UTC with an
1225    * unspecified expiration date, the job expires after 2017/01/31 13:00AM UTC.
1226    * If this value isn't provided on job update, it depends on the field masks
1227    * set by
1228    * [UpdateJobRequest.update_mask][google.cloud.talent.v4beta1.UpdateJobRequest.update_mask].
1229    * If the field masks include
1230    * [job_end_time][google.cloud.talent.v4beta1.Job.job_end_time], or the masks
1231    * are empty meaning that every field is updated, the job posting expires
1232    * after 30 days from the job's last update time. Otherwise the expiration
1233    * date isn't updated.
1234    * </pre>
1235    *
1236    * <code>.google.protobuf.Timestamp posting_expire_time = 25;</code>
1237    *
1238    * @return The postingExpireTime.
1239    */
getPostingExpireTime()1240   com.google.protobuf.Timestamp getPostingExpireTime();
1241   /**
1242    *
1243    *
1244    * <pre>
1245    * Strongly recommended for the best service experience.
1246    * The expiration timestamp of the job. After this timestamp, the
1247    * job is marked as expired, and it no longer appears in search results. The
1248    * expired job can't be listed by the
1249    * [ListJobs][google.cloud.talent.v4beta1.JobService.ListJobs] API, but it can
1250    * be retrieved with the
1251    * [GetJob][google.cloud.talent.v4beta1.JobService.GetJob] API or updated with
1252    * the [UpdateJob][google.cloud.talent.v4beta1.JobService.UpdateJob] API or
1253    * deleted with the
1254    * [DeleteJob][google.cloud.talent.v4beta1.JobService.DeleteJob] API. An
1255    * expired job can be updated and opened again by using a future expiration
1256    * timestamp. Updating an expired job fails if there is another existing open
1257    * job with same [company][google.cloud.talent.v4beta1.Job.company],
1258    * [language_code][google.cloud.talent.v4beta1.Job.language_code] and
1259    * [requisition_id][google.cloud.talent.v4beta1.Job.requisition_id].
1260    * The expired jobs are retained in our system for 90 days. However, the
1261    * overall expired job count cannot exceed 3 times the maximum number of
1262    * open jobs over previous 7 days. If this threshold is exceeded,
1263    * expired jobs are cleaned out in order of earliest expire time.
1264    * Expired jobs are no longer accessible after they are cleaned
1265    * out.
1266    * Invalid timestamps are ignored, and treated as expire time not provided.
1267    * If the timestamp is before the instant request is made, the job
1268    * is treated as expired immediately on creation. This kind of job can
1269    * not be updated. And when creating a job with past timestamp, the
1270    * [posting_publish_time][google.cloud.talent.v4beta1.Job.posting_publish_time]
1271    * must be set before
1272    * [posting_expire_time][google.cloud.talent.v4beta1.Job.posting_expire_time].
1273    * The purpose of this feature is to allow other objects, such as
1274    * [Application][google.cloud.talent.v4beta1.Application], to refer a job that
1275    * didn't exist in the system prior to becoming expired. If you want to modify
1276    * a job that was expired on creation, delete it and create a new one.
1277    * If this value isn't provided at the time of job creation or is invalid,
1278    * the job posting expires after 30 days from the job's creation time. For
1279    * example, if the job was created on 2017/01/01 13:00AM UTC with an
1280    * unspecified expiration date, the job expires after 2017/01/31 13:00AM UTC.
1281    * If this value isn't provided on job update, it depends on the field masks
1282    * set by
1283    * [UpdateJobRequest.update_mask][google.cloud.talent.v4beta1.UpdateJobRequest.update_mask].
1284    * If the field masks include
1285    * [job_end_time][google.cloud.talent.v4beta1.Job.job_end_time], or the masks
1286    * are empty meaning that every field is updated, the job posting expires
1287    * after 30 days from the job's last update time. Otherwise the expiration
1288    * date isn't updated.
1289    * </pre>
1290    *
1291    * <code>.google.protobuf.Timestamp posting_expire_time = 25;</code>
1292    */
getPostingExpireTimeOrBuilder()1293   com.google.protobuf.TimestampOrBuilder getPostingExpireTimeOrBuilder();
1294 
1295   /**
1296    *
1297    *
1298    * <pre>
1299    * Output only. The timestamp when this job posting was created.
1300    * </pre>
1301    *
1302    * <code>
1303    * .google.protobuf.Timestamp posting_create_time = 26 [(.google.api.field_behavior) = OUTPUT_ONLY];
1304    * </code>
1305    *
1306    * @return Whether the postingCreateTime field is set.
1307    */
hasPostingCreateTime()1308   boolean hasPostingCreateTime();
1309   /**
1310    *
1311    *
1312    * <pre>
1313    * Output only. The timestamp when this job posting was created.
1314    * </pre>
1315    *
1316    * <code>
1317    * .google.protobuf.Timestamp posting_create_time = 26 [(.google.api.field_behavior) = OUTPUT_ONLY];
1318    * </code>
1319    *
1320    * @return The postingCreateTime.
1321    */
getPostingCreateTime()1322   com.google.protobuf.Timestamp getPostingCreateTime();
1323   /**
1324    *
1325    *
1326    * <pre>
1327    * Output only. The timestamp when this job posting was created.
1328    * </pre>
1329    *
1330    * <code>
1331    * .google.protobuf.Timestamp posting_create_time = 26 [(.google.api.field_behavior) = OUTPUT_ONLY];
1332    * </code>
1333    */
getPostingCreateTimeOrBuilder()1334   com.google.protobuf.TimestampOrBuilder getPostingCreateTimeOrBuilder();
1335 
1336   /**
1337    *
1338    *
1339    * <pre>
1340    * Output only. The timestamp when this job posting was last updated.
1341    * </pre>
1342    *
1343    * <code>
1344    * .google.protobuf.Timestamp posting_update_time = 27 [(.google.api.field_behavior) = OUTPUT_ONLY];
1345    * </code>
1346    *
1347    * @return Whether the postingUpdateTime field is set.
1348    */
hasPostingUpdateTime()1349   boolean hasPostingUpdateTime();
1350   /**
1351    *
1352    *
1353    * <pre>
1354    * Output only. The timestamp when this job posting was last updated.
1355    * </pre>
1356    *
1357    * <code>
1358    * .google.protobuf.Timestamp posting_update_time = 27 [(.google.api.field_behavior) = OUTPUT_ONLY];
1359    * </code>
1360    *
1361    * @return The postingUpdateTime.
1362    */
getPostingUpdateTime()1363   com.google.protobuf.Timestamp getPostingUpdateTime();
1364   /**
1365    *
1366    *
1367    * <pre>
1368    * Output only. The timestamp when this job posting was last updated.
1369    * </pre>
1370    *
1371    * <code>
1372    * .google.protobuf.Timestamp posting_update_time = 27 [(.google.api.field_behavior) = OUTPUT_ONLY];
1373    * </code>
1374    */
getPostingUpdateTimeOrBuilder()1375   com.google.protobuf.TimestampOrBuilder getPostingUpdateTimeOrBuilder();
1376 
1377   /**
1378    *
1379    *
1380    * <pre>
1381    * Output only. Display name of the company listing the job.
1382    * </pre>
1383    *
1384    * <code>string company_display_name = 28 [(.google.api.field_behavior) = OUTPUT_ONLY];</code>
1385    *
1386    * @return The companyDisplayName.
1387    */
getCompanyDisplayName()1388   java.lang.String getCompanyDisplayName();
1389   /**
1390    *
1391    *
1392    * <pre>
1393    * Output only. Display name of the company listing the job.
1394    * </pre>
1395    *
1396    * <code>string company_display_name = 28 [(.google.api.field_behavior) = OUTPUT_ONLY];</code>
1397    *
1398    * @return The bytes for companyDisplayName.
1399    */
getCompanyDisplayNameBytes()1400   com.google.protobuf.ByteString getCompanyDisplayNameBytes();
1401 
1402   /**
1403    *
1404    *
1405    * <pre>
1406    * Output only. Derived details about the job posting.
1407    * </pre>
1408    *
1409    * <code>
1410    * .google.cloud.talent.v4beta1.Job.DerivedInfo derived_info = 29 [(.google.api.field_behavior) = OUTPUT_ONLY];
1411    * </code>
1412    *
1413    * @return Whether the derivedInfo field is set.
1414    */
hasDerivedInfo()1415   boolean hasDerivedInfo();
1416   /**
1417    *
1418    *
1419    * <pre>
1420    * Output only. Derived details about the job posting.
1421    * </pre>
1422    *
1423    * <code>
1424    * .google.cloud.talent.v4beta1.Job.DerivedInfo derived_info = 29 [(.google.api.field_behavior) = OUTPUT_ONLY];
1425    * </code>
1426    *
1427    * @return The derivedInfo.
1428    */
getDerivedInfo()1429   com.google.cloud.talent.v4beta1.Job.DerivedInfo getDerivedInfo();
1430   /**
1431    *
1432    *
1433    * <pre>
1434    * Output only. Derived details about the job posting.
1435    * </pre>
1436    *
1437    * <code>
1438    * .google.cloud.talent.v4beta1.Job.DerivedInfo derived_info = 29 [(.google.api.field_behavior) = OUTPUT_ONLY];
1439    * </code>
1440    */
getDerivedInfoOrBuilder()1441   com.google.cloud.talent.v4beta1.Job.DerivedInfoOrBuilder getDerivedInfoOrBuilder();
1442 
1443   /**
1444    *
1445    *
1446    * <pre>
1447    * Options for job processing.
1448    * </pre>
1449    *
1450    * <code>.google.cloud.talent.v4beta1.Job.ProcessingOptions processing_options = 30;</code>
1451    *
1452    * @return Whether the processingOptions field is set.
1453    */
hasProcessingOptions()1454   boolean hasProcessingOptions();
1455   /**
1456    *
1457    *
1458    * <pre>
1459    * Options for job processing.
1460    * </pre>
1461    *
1462    * <code>.google.cloud.talent.v4beta1.Job.ProcessingOptions processing_options = 30;</code>
1463    *
1464    * @return The processingOptions.
1465    */
getProcessingOptions()1466   com.google.cloud.talent.v4beta1.Job.ProcessingOptions getProcessingOptions();
1467   /**
1468    *
1469    *
1470    * <pre>
1471    * Options for job processing.
1472    * </pre>
1473    *
1474    * <code>.google.cloud.talent.v4beta1.Job.ProcessingOptions processing_options = 30;</code>
1475    */
getProcessingOptionsOrBuilder()1476   com.google.cloud.talent.v4beta1.Job.ProcessingOptionsOrBuilder getProcessingOptionsOrBuilder();
1477 }
1478