Completed
Pull Request — master (#79)
by
unknown
15:15
created

JobPosting::validThrough()   A

Complexity

Conditions 1
Paths 1

Size

Total Lines 4

Duplication

Lines 0
Ratio 0 %

Importance

Changes 0
Metric Value
dl 0
loc 4
rs 10
c 0
b 0
f 0
cc 1
nc 1
nop 1
1
<?php
2
3
namespace Spatie\SchemaOrg;
4
5
/**
6
 * A listing that describes a job opening in a certain organization.
7
 *
8
 * @see http://schema.org/JobPosting
9
 *
10
 * @mixin \Spatie\SchemaOrg\Intangible
11
 */
12
class JobPosting extends BaseType
13
{
14
    /**
15
     * The base salary of the job or of an employee in an EmployeeRole.
16
     *
17
     * @param MonetaryAmount|MonetaryAmount[]|PriceSpecification|PriceSpecification[]|float|float[]|int|int[] $baseSalary
18
     *
19
     * @return static
20
     *
21
     * @see http://schema.org/baseSalary
22
     */
23
    public function baseSalary($baseSalary)
24
    {
25
        return $this->setProperty('baseSalary', $baseSalary);
26
    }
27
28
    /**
29
     * Description of benefits associated with the job.
30
     *
31
     * @param string|string[] $benefits
32
     *
33
     * @return static
34
     *
35
     * @see http://schema.org/benefits
36
     */
37
    public function benefits($benefits)
38
    {
39
        return $this->setProperty('benefits', $benefits);
40
    }
41
42
    /**
43
     * Publication date for the job posting.
44
     *
45
     * @param \DateTimeInterface|\DateTimeInterface[] $datePosted
46
     *
47
     * @return static
48
     *
49
     * @see http://schema.org/datePosted
50
     */
51
    public function datePosted($datePosted)
52
    {
53
        return $this->setProperty('datePosted', $datePosted);
54
    }
55
56
    /**
57
     * Educational background needed for the position or Occupation.
58
     *
59
     * @param string|string[] $educationRequirements
60
     *
61
     * @return static
62
     *
63
     * @see http://schema.org/educationRequirements
64
     */
65
    public function educationRequirements($educationRequirements)
66
    {
67
        return $this->setProperty('educationRequirements', $educationRequirements);
68
    }
69
70
    /**
71
     * Type of employment (e.g. full-time, part-time, contract, temporary,
72
     * seasonal, internship).
73
     *
74
     * @param string|string[] $employmentType
75
     *
76
     * @return static
77
     *
78
     * @see http://schema.org/employmentType
79
     */
80
    public function employmentType($employmentType)
81
    {
82
        return $this->setProperty('employmentType', $employmentType);
83
    }
84
85
    /**
86
     * An estimated salary for a job posting or occupation, based on a variety
87
     * of variables including, but not limited to industry, job title, and
88
     * location. Estimated salaries  are often computed by outside organizations
89
     * rather than the hiring organization, who may not have committed to the
90
     * estimated value.
91
     *
92
     * @param MonetaryAmountDistribution|MonetaryAmountDistribution[] $estimatedSalary
93
     *
94
     * @return static
95
     *
96
     * @see http://schema.org/estimatedSalary
97
     */
98
    public function estimatedSalary($estimatedSalary)
99
    {
100
        return $this->setProperty('estimatedSalary', $estimatedSalary);
101
    }
102
103
    /**
104
     * Description of skills and experience needed for the position or
105
     * Occupation.
106
     *
107
     * @param string|string[] $experienceRequirements
108
     *
109
     * @return static
110
     *
111
     * @see http://schema.org/experienceRequirements
112
     */
113
    public function experienceRequirements($experienceRequirements)
114
    {
115
        return $this->setProperty('experienceRequirements', $experienceRequirements);
116
    }
117
118
    /**
119
     * Organization offering the job position.
120
     *
121
     * @param Organization|Organization[] $hiringOrganization
122
     *
123
     * @return static
124
     *
125
     * @see http://schema.org/hiringOrganization
126
     */
127
    public function hiringOrganization($hiringOrganization)
128
    {
129
        return $this->setProperty('hiringOrganization', $hiringOrganization);
130
    }
131
132
    /**
133
     * Description of bonus and commission compensation aspects of the job.
134
     *
135
     * @param string|string[] $incentiveCompensation
136
     *
137
     * @return static
138
     *
139
     * @see http://schema.org/incentiveCompensation
140
     */
141
    public function incentiveCompensation($incentiveCompensation)
142
    {
143
        return $this->setProperty('incentiveCompensation', $incentiveCompensation);
144
    }
145
146
    /**
147
     * Description of bonus and commission compensation aspects of the job.
148
     *
149
     * @param string|string[] $incentives
150
     *
151
     * @return static
152
     *
153
     * @see http://schema.org/incentives
154
     */
155
    public function incentives($incentives)
156
    {
157
        return $this->setProperty('incentives', $incentives);
158
    }
159
160
    /**
161
     * The industry associated with the job position.
162
     *
163
     * @param string|string[] $industry
164
     *
165
     * @return static
166
     *
167
     * @see http://schema.org/industry
168
     */
169
    public function industry($industry)
170
    {
171
        return $this->setProperty('industry', $industry);
172
    }
173
174
    /**
175
     * Description of benefits associated with the job.
176
     *
177
     * @param string|string[] $jobBenefits
178
     *
179
     * @return static
180
     *
181
     * @see http://schema.org/jobBenefits
182
     */
183
    public function jobBenefits($jobBenefits)
184
    {
185
        return $this->setProperty('jobBenefits', $jobBenefits);
186
    }
187
188
    /**
189
     * A (typically single) geographic location associated with the job
190
     * position.
191
     *
192
     * @param Place|Place[] $jobLocation
193
     *
194
     * @return static
195
     *
196
     * @see http://schema.org/jobLocation
197
     */
198
    public function jobLocation($jobLocation)
199
    {
200
        return $this->setProperty('jobLocation', $jobLocation);
201
    }
202
203
    /**
204
     * Category or categories describing the job. Use BLS O*NET-SOC taxonomy:
205
     * http://www.onetcenter.org/taxonomy.html. Ideally includes textual label
206
     * and formal code, with the property repeated for each applicable value.
207
     *
208
     * @param string|string[] $occupationalCategory
209
     *
210
     * @return static
211
     *
212
     * @see http://schema.org/occupationalCategory
213
     */
214
    public function occupationalCategory($occupationalCategory)
215
    {
216
        return $this->setProperty('occupationalCategory', $occupationalCategory);
217
    }
218
219
    /**
220
     * Specific qualifications required for this role or Occupation.
221
     *
222
     * @param string|string[] $qualifications
223
     *
224
     * @return static
225
     *
226
     * @see http://schema.org/qualifications
227
     */
228
    public function qualifications($qualifications)
229
    {
230
        return $this->setProperty('qualifications', $qualifications);
231
    }
232
233
    /**
234
     * The Occupation for the JobPosting.
235
     *
236
     * @param Occupation|Occupation[] $relevantOccupation
237
     *
238
     * @return static
239
     *
240
     * @see http://schema.org/relevantOccupation
241
     */
242
    public function relevantOccupation($relevantOccupation)
243
    {
244
        return $this->setProperty('relevantOccupation', $relevantOccupation);
245
    }
246
247
    /**
248
     * Responsibilities associated with this role or Occupation.
249
     *
250
     * @param string|string[] $responsibilities
251
     *
252
     * @return static
253
     *
254
     * @see http://schema.org/responsibilities
255
     */
256
    public function responsibilities($responsibilities)
257
    {
258
        return $this->setProperty('responsibilities', $responsibilities);
259
    }
260
261
    /**
262
     * The currency (coded using [ISO
263
     * 4217](http://en.wikipedia.org/wiki/ISO_4217) ) used for the main salary
264
     * information in this job posting or for this employee.
265
     *
266
     * @param string|string[] $salaryCurrency
267
     *
268
     * @return static
269
     *
270
     * @see http://schema.org/salaryCurrency
271
     */
272
    public function salaryCurrency($salaryCurrency)
273
    {
274
        return $this->setProperty('salaryCurrency', $salaryCurrency);
275
    }
276
277
    /**
278
     * Skills required to fulfill this role or in this Occupation.
279
     *
280
     * @param string|string[] $skills
281
     *
282
     * @return static
283
     *
284
     * @see http://schema.org/skills
285
     */
286
    public function skills($skills)
287
    {
288
        return $this->setProperty('skills', $skills);
289
    }
290
291
    /**
292
     * Any special commitments associated with this job posting. Valid entries
293
     * include VeteranCommit, MilitarySpouseCommit, etc.
294
     *
295
     * @param string|string[] $specialCommitments
296
     *
297
     * @return static
298
     *
299
     * @see http://schema.org/specialCommitments
300
     */
301
    public function specialCommitments($specialCommitments)
302
    {
303
        return $this->setProperty('specialCommitments', $specialCommitments);
304
    }
305
306
    /**
307
     * The title of the job.
308
     *
309
     * @param string|string[] $title
310
     *
311
     * @return static
312
     *
313
     * @see http://schema.org/title
314
     */
315
    public function title($title)
316
    {
317
        return $this->setProperty('title', $title);
318
    }
319
320
    /**
321
     * The date after when the item is not valid. For example the end of an
322
     * offer, salary period, or a period of opening hours.
323
     *
324
     * @param \DateTimeInterface|\DateTimeInterface[] $validThrough
325
     *
326
     * @return static
327
     *
328
     * @see http://schema.org/validThrough
329
     */
330
    public function validThrough($validThrough)
331
    {
332
        return $this->setProperty('validThrough', $validThrough);
333
    }
334
335
    /**
336
     * The typical working hours for this job (e.g. 1st shift, night shift,
337
     * 8am-5pm).
338
     *
339
     * @param string|string[] $workHours
340
     *
341
     * @return static
342
     *
343
     * @see http://schema.org/workHours
344
     */
345
    public function workHours($workHours)
346
    {
347
        return $this->setProperty('workHours', $workHours);
348
    }
349
350
}
351