]> git.mxchange.org Git - jjobs-core.git/blob - src/org/mxchange/jjobs/model/skill/Skillable.java
Don't cherry-pick:
[jjobs-core.git] / src / org / mxchange / jjobs / model / skill / Skillable.java
1 /*
2  * Copyright (C) 2016 - 2019 Free Software Foundation
3  *
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.
8  *
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.
13  *
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/>.
16  */
17 package org.mxchange.jjobs.model.skill;
18
19 import org.mxchange.jjobs.model.skill.status.SkillStatus;
20 import java.io.Serializable;
21 import java.util.Date;
22
23 /**
24  * A POJI for skills (hard and soft)
25  * <p>
26  * @author Roland Häder<roland@mxchange.org>
27  */
28 public interface Skillable extends Serializable {
29
30         /**
31          * Getter for skill id
32          * <p>
33          * @return Skill id
34          */
35         Long getSkillId ();
36
37         /**
38          * Setter for skill id
39          * <p>
40          * @param skillId Skill id
41          */
42         void setSkillId (final Long skillId);
43
44         /**
45          * Getter for skill name
46          * <p>
47          * @return Skill name
48          */
49         String getSkillName ();
50
51         /**
52          * Setter for skill name
53          * <p>
54          * @param skillName Skill name
55          */
56         void setSkillName (final String skillName);
57
58         /**
59          * Getter for skill created timestamp
60          * <p>
61          * @return Skill created timestamp
62          */
63         Date getSkillCreated ();
64
65         /**
66          * Setter for skill created timestamp
67          * <p>
68          * @param skillCreated Skill created timestamp
69          */
70         void setSkillCreated (final Date skillCreated);
71
72         /**
73          * Getter for skill updated timestamp
74          * <p>
75          * @return Skill updated timestamp
76          */
77         Date getSkillUpdated ();
78
79         /**
80          * Setter for skill updated timestamp
81          * <p>
82          * @param skillUpdated Skill updated timestamp
83          */
84         void setSkillUpdated (final Date skillUpdated);
85
86         /**
87          * Getter for skill last locked timestamp
88          * <p>
89          * @return Skill last locked timestamp
90          */
91         Date getSkillLastLocked ();
92
93         /**
94          * Setter for skill last locked timestamp
95          * <p>
96          * @param skillLastLocked Skill last locked timestamp
97          */
98         void setSkillLastLocked (final Date skillLastLocked);
99
100         /**
101          * Getter for skill status
102          * <p>
103          * @return Skill status
104          */
105         SkillStatus getSkillStatus ();
106
107         /**
108          * Getter for skill status
109          * <p>
110          * @param skillStatus Skill status
111          */
112         void setSkillStatus (final SkillStatus skillStatus);
113
114         @Override
115         boolean equals (final Object object);
116
117         @Override
118         int hashCode ();
119
120 }