2 * Copyright (C) 2016, 2017 Roland Häder
4 * This program is free software: you can redistribute it and/or modify
5 * it under the terms of the GNU General Public License as published by
6 * the Free Software Foundation, either version 3 of the License, or
7 * (at your option) any later version.
9 * This program is distributed in the hope that it will be useful,
10 * but WITHOUT ANY WARRANTY; without even the implied warranty of
11 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12 * GNU General Public License for more details.
14 * You should have received a copy of the GNU General Public License
15 * along with this program. If not, see <http://www.gnu.org/licenses/>.
17 package org.mxchange.jjobs.model.jobposition;
19 import java.util.Date;
20 import org.mxchange.jcontactsbusiness.model.jobposition.JobPosition;
21 import org.mxchange.jjobs.model.jobposition.status.JobPositionStatus;
22 import org.mxchange.jusercore.model.user.User;
25 * A POJI for hireable job positions
27 * @author Roland Häder<roland@mxchange.org>
29 public interface HireableJobPosition extends JobPosition {
32 * Getter for job position start
34 * @return Job position start
36 Date getJobPositionStart ();
39 * Setter for job position start
41 * @param jobPositionStart Job position start
43 void setJobPositionStart (final Date jobPositionStart);
46 * Getter for job position status
48 * @return Job position status
50 JobPositionStatus getJobPositionStatus ();
53 * Setter for job position status
55 * @param jobPositionStatus Job position status
57 void setJobPositionStatus (final JobPositionStatus jobPositionStatus);
60 * Getter for when this job position was deleted by user
62 * @return When this job position was deleted by user
64 Date getJobPositionDeleted ();
67 * Setter for when this job position was deleted by user
69 * @param jobPositionDeleted When this job position was deleted by user
71 void setJobPositionDeleted (final Date jobPositionDeleted);
74 * Getter for when this job position has expired
76 * @return When this job position has expired
78 Date getJobPositionExpired ();
81 * Setter for when this job position has expired
83 * @param jobPositionExpired When this job position has expired
85 void setJobPositionExpired (final Date jobPositionExpired);
88 * Getter for when employee was hired for this job position
90 * @return When employee was hired for this job position
92 Date getJobPositionHired ();
95 * Setter for when employee was hired for this job position
97 * @param jobPositionHired When employee was hired for this job position
99 void setJobPositionHired (final Date jobPositionHired);
102 * Getter for user who added this job position
104 * @return User who added this job position
106 User getJobPositionAddedUser ();
109 * Setter for user who added this job position
111 * @param jobPositionAddedUser User who added this job position
113 void setJobPositionAddedUser (final User jobPositionAddedUser);