1 // license-header java merge-point
2 //
3 // Attention: Generated code! Do not modify by hand!
4 // Generated by: hibernate/HibernateEntity.vsl in andromda-hibernate-cartridge.
5 //
6 package fr.ifremer.quadrige2.core.dao.system.extraction;
7
8 /*-
9 * #%L
10 * Quadrige2 Core :: Server API
11 * %%
12 * Copyright (C) 2017 Ifremer
13 * %%
14 * This program is free software: you can redistribute it and/or modify
15 * it under the terms of the GNU Affero General Public License as published by
16 * the Free Software Foundation, either version 3 of the License, or
17 * (at your option) any later version.
18 *
19 * This program is distributed in the hope that it will be useful,
20 * but WITHOUT ANY WARRANTY; without even the implied warranty of
21 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
22 * GNU General Public License for more details.
23 *
24 * You should have received a copy of the GNU Affero General Public License
25 * along with this program. If not, see <http://www.gnu.org/licenses/>.
26 * #L%
27 */
28
29 import fr.ifremer.quadrige2.core.dao.referential.ObjectType;
30 import java.io.Serializable;
31 import java.sql.Timestamp;
32
33 /**
34 * Liste des champs devant être affichés lors de l'extraction d'un objet.
35 */
36 // HibernateEntity.vsl annotations merge-point
37 public abstract class ExtractField
38 implements Serializable, Comparable<ExtractField>
39 {
40 /**
41 * The serial version UID of this class. Needed for serialization.
42 */
43 private static final long serialVersionUID = -659377647185387321L;
44
45 // Generate 5 attributes
46 private Integer extractFieldId;
47
48 /**
49 * Identifiant primaire de extract_field
50 * @return this.extractFieldId Integer
51 */
52 public Integer getExtractFieldId()
53 {
54 return this.extractFieldId;
55 }
56
57 /**
58 * Identifiant primaire de extract_field
59 * @param extractFieldIdIn Integer
60 */
61 public void setExtractFieldId(Integer extractFieldIdIn)
62 {
63 this.extractFieldId = extractFieldIdIn;
64 }
65
66 private String extractFieldNm;
67
68 /**
69 * Nom du champ à afficher
70 * @return this.extractFieldNm String
71 */
72 public String getExtractFieldNm()
73 {
74 return this.extractFieldNm;
75 }
76
77 /**
78 * Nom du champ à afficher
79 * @param extractFieldNmIn String
80 */
81 public void setExtractFieldNm(String extractFieldNmIn)
82 {
83 this.extractFieldNm = extractFieldNmIn;
84 }
85
86 private Double extractFieldRank;
87
88 /**
89 * Rang du champ pour l'affichage et lors des tri
90 * @return this.extractFieldRank Double
91 */
92 public Double getExtractFieldRank()
93 {
94 return this.extractFieldRank;
95 }
96
97 /**
98 * Rang du champ pour l'affichage et lors des tri
99 * @param extractFieldRankIn Double
100 */
101 public void setExtractFieldRank(Double extractFieldRankIn)
102 {
103 this.extractFieldRank = extractFieldRankIn;
104 }
105
106 private String extractFieldSortType;
107
108 /**
109 * Type de tri utilisé pour le champ, ASC ou DESC ou NULL
110 * @return this.extractFieldSortType String
111 */
112 public String getExtractFieldSortType()
113 {
114 return this.extractFieldSortType;
115 }
116
117 /**
118 * Type de tri utilisé pour le champ, ASC ou DESC ou NULL
119 * @param extractFieldSortTypeIn String
120 */
121 public void setExtractFieldSortType(String extractFieldSortTypeIn)
122 {
123 this.extractFieldSortType = extractFieldSortTypeIn;
124 }
125
126 private Timestamp updateDt;
127
128 /**
129 * Date de modification de l'objet, mise à jour par le système
130 * @return this.updateDt Timestamp
131 */
132 public Timestamp getUpdateDt()
133 {
134 return this.updateDt;
135 }
136
137 /**
138 * Date de modification de l'objet, mise à jour par le système
139 * @param updateDtIn Timestamp
140 */
141 public void setUpdateDt(Timestamp updateDtIn)
142 {
143 this.updateDt = updateDtIn;
144 }
145
146 // Generate 2 associations
147 private ObjectType objectType;
148
149 /**
150 * Liste des types d'objets qui peuvent être associés à la photo ou à un résultat. Cette liste
151 * ne peut
152 * pas être modifiée par l'utilisateur.
153 * @return this.objectType ObjectType
154 */
155 public ObjectType getObjectType()
156 {
157 return this.objectType;
158 }
159
160 /**
161 * Liste des types d'objets qui peuvent être associés à la photo ou à un résultat. Cette liste
162 * ne peut
163 * pas être modifiée par l'utilisateur.
164 * @param objectTypeIn ObjectType
165 */
166 public void setObjectType(ObjectType objectTypeIn)
167 {
168 this.objectType = objectTypeIn;
169 }
170
171 private ExtractFilter extractFilter;
172
173 /**
174 * Définit les éléments supplémentaires au filtre et nécessaires à l'extraction.
175 * @return this.extractFilter ExtractFilter
176 */
177 public ExtractFilter getExtractFilter()
178 {
179 return this.extractFilter;
180 }
181
182 /**
183 * Définit les éléments supplémentaires au filtre et nécessaires à l'extraction.
184 * @param extractFilterIn ExtractFilter
185 */
186 public void setExtractFilter(ExtractFilter extractFilterIn)
187 {
188 this.extractFilter = extractFilterIn;
189 }
190
191 /**
192 * Returns <code>true</code> if the argument is an ExtractField instance and all identifiers for this entity
193 * equal the identifiers of the argument entity. Returns <code>false</code> otherwise.
194 */
195 @Override
196 public boolean equals(Object object)
197 {
198 if (this == object)
199 {
200 return true;
201 }
202 if (!(object instanceof ExtractField))
203 {
204 return false;
205 }
206 final ExtractField that = (ExtractField)object;
207 if (this.extractFieldId == null || that.getExtractFieldId() == null || !this.extractFieldId.equals(that.getExtractFieldId()))
208 {
209 return false;
210 }
211 return true;
212 }
213
214 /**
215 * Returns a hash code based on this entity's identifiers.
216 */
217 @Override
218 public int hashCode()
219 {
220 int hashCode = 0;
221 hashCode = 29 * hashCode + (this.extractFieldId == null ? 0 : this.extractFieldId.hashCode());
222
223 return hashCode;
224 }
225
226 /**
227 * Constructs new instances of {@link ExtractField}.
228 */
229 public static final class Factory
230 {
231 /**
232 * Constructs a new instance of {@link ExtractField}.
233 * @return new ExtractFieldImpl()
234 */
235 public static ExtractField newInstance()
236 {
237 return new ExtractFieldImpl();
238 }
239
240 /**
241 * Constructs a new instance of {@link ExtractField}, taking all required and/or
242 * read-only properties as arguments, except for identifiers.
243 * @param extractFieldNm String
244 * @param extractFieldRank Double
245 * @param updateDt Timestamp
246 * @param objectType ObjectType
247 * @param extractFilter ExtractFilter
248 * @return newInstance
249 */
250 public static ExtractField newInstance(String extractFieldNm, Double extractFieldRank, Timestamp updateDt, ObjectType objectType, ExtractFilter extractFilter)
251 {
252 final ExtractField entity = new ExtractFieldImpl();
253 entity.setExtractFieldNm(extractFieldNm);
254 entity.setExtractFieldRank(extractFieldRank);
255 entity.setUpdateDt(updateDt);
256 entity.setObjectType(objectType);
257 entity.setExtractFilter(extractFilter);
258 return entity;
259 }
260
261 /**
262 * Constructs a new instance of {@link ExtractField}, taking all possible properties
263 * (except the identifier(s))as arguments.
264 * @param extractFieldNm String
265 * @param extractFieldRank Double
266 * @param extractFieldSortType String
267 * @param updateDt Timestamp
268 * @param objectType ObjectType
269 * @param extractFilter ExtractFilter
270 * @return newInstance ExtractField
271 */
272 public static ExtractField newInstance(String extractFieldNm, Double extractFieldRank, String extractFieldSortType, Timestamp updateDt, ObjectType objectType, ExtractFilter extractFilter)
273 {
274 final ExtractField entity = new ExtractFieldImpl();
275 entity.setExtractFieldNm(extractFieldNm);
276 entity.setExtractFieldRank(extractFieldRank);
277 entity.setExtractFieldSortType(extractFieldSortType);
278 entity.setUpdateDt(updateDt);
279 entity.setObjectType(objectType);
280 entity.setExtractFilter(extractFilter);
281 return entity;
282 }
283 }
284
285 /**
286 * @see Comparable#compareTo
287 */
288 public int compareTo(ExtractField o)
289 {
290 int cmp = 0;
291 if (this.getExtractFieldId() != null)
292 {
293 cmp = this.getExtractFieldId().compareTo(o.getExtractFieldId());
294 }
295 else
296 {
297 if (this.getExtractFieldNm() != null)
298 {
299 cmp = (cmp != 0 ? cmp : this.getExtractFieldNm().compareTo(o.getExtractFieldNm()));
300 }
301 if (this.getExtractFieldRank() != null)
302 {
303 cmp = (cmp != 0 ? cmp : this.getExtractFieldRank().compareTo(o.getExtractFieldRank()));
304 }
305 if (this.getExtractFieldSortType() != null)
306 {
307 cmp = (cmp != 0 ? cmp : this.getExtractFieldSortType().compareTo(o.getExtractFieldSortType()));
308 }
309 if (this.getUpdateDt() != null)
310 {
311 cmp = (cmp != 0 ? cmp : this.getUpdateDt().compareTo(o.getUpdateDt()));
312 }
313 }
314 return cmp;
315 }
316 // HibernateEntity.vsl merge-point
317 // ExtractField.java merge-point
318 }