View Javadoc
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.quadrige3.core.dao.system.versionning;
7   
8   /*-
9    * #%L
10   * Quadrige3 Core :: Client API
11   * %%
12   * Copyright (C) 2017 - 2024 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  import java.io.Serializable;
29  import java.sql.Timestamp;
30  import java.util.Date;
31  
32  /**
33   * Historiqque des versions du système.
34   * Chaque mise à jour du schéma entraine une insertion dans cette table.
35   */
36  // HibernateEntity.vsl annotations merge-point
37  public abstract class SystemVersion
38      implements Serializable, Comparable<SystemVersion>
39  {
40      /**
41       * The serial version UID of this class. Needed for serialization.
42       */
43      private static final long serialVersionUID = -4919399964114027008L;
44  
45      // Generate 6 attributes
46      private Integer systemVersionId;
47  
48      /**
49       * 
50       * @return this.systemVersionId Integer
51       */
52      public Integer getSystemVersionId()
53      {
54          return this.systemVersionId;
55      }
56  
57      /**
58       * 
59       * @param systemVersionIdIn Integer
60       */
61      public void setSystemVersionId(Integer systemVersionIdIn)
62      {
63          this.systemVersionId = systemVersionIdIn;
64      }
65  
66      private String systemVersionLb;
67  
68      /**
69       * <html>
70       * <head>
71       * <style>
72       * p {padding:0px; margin:0px;}
73       * </style>
74       * </head>
75       * <body>
76       * <p>
77       * The version string. Version identifiers should have three or four
78       * components:
79       * </p>
80       * <p>
81       * </p>
82       * <ol>
83       * <li>
84       * Major version. A non-negative integer.
85       * </li>
86       * <li>
87       * Minor version. A non-negative integer.
88       * </li>
89       * <li>
90       * Micro version. A non-negative integer.
91       * </li>
92       * <li>
93       * Qualifier (optional). A text string compatible with regex :
94       * ([0-9]|[a-zA-Z]|_|-)+
95       * </li>
96       * </ol>
97       * <p>
98       * </p>
99       * <p>
100      * See osgi Version specification : <a
101      * href="http://www.osgi.org/javadoc/r4v42/org/osgi/framework/Version.html">http://www.osgi.org/javadoc/r4v42/org/osgi/framework/Version.html</a>
102      * </p>
103      * <p>
104      * </p>
105      * <p>
106      * Example :
107      * </p>
108      * <ul>
109      * <li>
110      * 3.4.1
111      * </li>
112      * <li>
113      * 3.4.1.20130820
114      * </li>
115      * <li>
116      * ...
117      * </li>
118      * </ul>
119      * <p>
120      * </p>
121      * </body>
122      * </html>
123      * @return this.systemVersionLb String
124      */
125     public String getSystemVersionLb()
126     {
127         return this.systemVersionLb;
128     }
129 
130     /**
131      * <html>
132      * <head>
133      * <style>
134      * p {padding:0px; margin:0px;}
135      * </style>
136      * </head>
137      * <body>
138      * <p>
139      * The version string. Version identifiers should have three or four
140      * components:
141      * </p>
142      * <p>
143      * </p>
144      * <ol>
145      * <li>
146      * Major version. A non-negative integer.
147      * </li>
148      * <li>
149      * Minor version. A non-negative integer.
150      * </li>
151      * <li>
152      * Micro version. A non-negative integer.
153      * </li>
154      * <li>
155      * Qualifier (optional). A text string compatible with regex :
156      * ([0-9]|[a-zA-Z]|_|-)+
157      * </li>
158      * </ol>
159      * <p>
160      * </p>
161      * <p>
162      * See osgi Version specification : <a
163      * href="http://www.osgi.org/javadoc/r4v42/org/osgi/framework/Version.html">http://www.osgi.org/javadoc/r4v42/org/osgi/framework/Version.html</a>
164      * </p>
165      * <p>
166      * </p>
167      * <p>
168      * Example :
169      * </p>
170      * <ul>
171      * <li>
172      * 3.4.1
173      * </li>
174      * <li>
175      * 3.4.1.20130820
176      * </li>
177      * <li>
178      * ...
179      * </li>
180      * </ul>
181      * <p>
182      * </p>
183      * </body>
184      * </html>
185      * @param systemVersionLbIn String
186      */
187     public void setSystemVersionLb(String systemVersionLbIn)
188     {
189         this.systemVersionLb = systemVersionLbIn;
190     }
191 
192     private String systemVersionDc;
193 
194     /**
195      * 
196      * @return this.systemVersionDc String
197      */
198     public String getSystemVersionDc()
199     {
200         return this.systemVersionDc;
201     }
202 
203     /**
204      * 
205      * @param systemVersionDcIn String
206      */
207     public void setSystemVersionDc(String systemVersionDcIn)
208     {
209         this.systemVersionDc = systemVersionDcIn;
210     }
211 
212     private Date systemVersionCreationDt;
213 
214     /**
215      * 
216      * @return this.systemVersionCreationDt Date
217      */
218     public Date getSystemVersionCreationDt()
219     {
220         return this.systemVersionCreationDt;
221     }
222 
223     /**
224      * 
225      * @param systemVersionCreationDtIn Date
226      */
227     public void setSystemVersionCreationDt(Date systemVersionCreationDtIn)
228     {
229         this.systemVersionCreationDt = systemVersionCreationDtIn;
230     }
231 
232     private String systemVersionCm;
233 
234     /**
235      * 
236      * @return this.systemVersionCm String
237      */
238     public String getSystemVersionCm()
239     {
240         return this.systemVersionCm;
241     }
242 
243     /**
244      * 
245      * @param systemVersionCmIn String
246      */
247     public void setSystemVersionCm(String systemVersionCmIn)
248     {
249         this.systemVersionCm = systemVersionCmIn;
250     }
251 
252     private Timestamp updateDt;
253 
254     /**
255      * 
256      * @return this.updateDt Timestamp
257      */
258     public Timestamp getUpdateDt()
259     {
260         return this.updateDt;
261     }
262 
263     /**
264      * 
265      * @param updateDtIn Timestamp
266      */
267     public void setUpdateDt(Timestamp updateDtIn)
268     {
269         this.updateDt = updateDtIn;
270     }
271 
272     // Generate 0 associations
273     /**
274      * Returns <code>true</code> if the argument is an SystemVersion instance and all identifiers for this entity
275      * equal the identifiers of the argument entity. Returns <code>false</code> otherwise.
276      */
277     @Override
278     public boolean equals(Object object)
279     {
280         if (this == object)
281         {
282             return true;
283         }
284         if (!(object instanceof SystemVersion))
285         {
286             return false;
287         }
288         final SystemVersion that = (SystemVersion)object;
289         if (this.systemVersionId == null || that.getSystemVersionId() == null || !this.systemVersionId.equals(that.getSystemVersionId()))
290         {
291             return false;
292         }
293         return true;
294     }
295 
296     /**
297      * Returns a hash code based on this entity's identifiers.
298      */
299     @Override
300     public int hashCode()
301     {
302         int hashCode = 0;
303         hashCode = 29 * hashCode + (this.systemVersionId == null ? 0 : this.systemVersionId.hashCode());
304 
305         return hashCode;
306     }
307 
308     /**
309      * Constructs new instances of {@link SystemVersion}.
310      */
311     public static final class Factory
312     {
313         /**
314          * Constructs a new instance of {@link SystemVersion}.
315          * @return new SystemVersionImpl()
316          */
317         public static SystemVersion newInstance()
318         {
319             return new SystemVersionImpl();
320         }
321 
322         /**
323          * Constructs a new instance of {@link SystemVersion}, taking all required and/or
324          * read-only properties as arguments, except for identifiers.
325          * @param systemVersionLb String
326          * @param systemVersionCreationDt Date
327          * @return newInstance
328          */
329         public static SystemVersion newInstance(String systemVersionLb, Date systemVersionCreationDt)
330         {
331             final SystemVersion entity = new SystemVersionImpl();
332             entity.setSystemVersionLb(systemVersionLb);
333             entity.setSystemVersionCreationDt(systemVersionCreationDt);
334             return entity;
335         }
336 
337         /**
338          * Constructs a new instance of {@link SystemVersion}, taking all possible properties
339          * (except the identifier(s))as arguments.
340          * @param systemVersionLb String
341          * @param systemVersionDc String
342          * @param systemVersionCreationDt Date
343          * @param systemVersionCm String
344          * @param updateDt Timestamp
345          * @return newInstance SystemVersion
346          */
347         public static SystemVersion newInstance(String systemVersionLb, String systemVersionDc, Date systemVersionCreationDt, String systemVersionCm, Timestamp updateDt)
348         {
349             final SystemVersion entity = new SystemVersionImpl();
350             entity.setSystemVersionLb(systemVersionLb);
351             entity.setSystemVersionDc(systemVersionDc);
352             entity.setSystemVersionCreationDt(systemVersionCreationDt);
353             entity.setSystemVersionCm(systemVersionCm);
354             entity.setUpdateDt(updateDt);
355             return entity;
356         }
357     }
358 
359     /**
360      * @see Comparable#compareTo
361      */
362     public int compareTo(SystemVersion o)
363     {
364         int cmp = 0;
365         if (this.getSystemVersionId() != null)
366         {
367             cmp = this.getSystemVersionId().compareTo(o.getSystemVersionId());
368         }
369         else
370         {
371             if (this.getSystemVersionLb() != null)
372             {
373                 cmp = (cmp != 0 ? cmp : this.getSystemVersionLb().compareTo(o.getSystemVersionLb()));
374             }
375             if (this.getSystemVersionDc() != null)
376             {
377                 cmp = (cmp != 0 ? cmp : this.getSystemVersionDc().compareTo(o.getSystemVersionDc()));
378             }
379             if (this.getSystemVersionCreationDt() != null)
380             {
381                 cmp = (cmp != 0 ? cmp : this.getSystemVersionCreationDt().compareTo(o.getSystemVersionCreationDt()));
382             }
383             if (this.getSystemVersionCm() != null)
384             {
385                 cmp = (cmp != 0 ? cmp : this.getSystemVersionCm().compareTo(o.getSystemVersionCm()));
386             }
387             if (this.getUpdateDt() != null)
388             {
389                 cmp = (cmp != 0 ? cmp : this.getUpdateDt().compareTo(o.getUpdateDt()));
390             }
391         }
392         return cmp;
393     }
394 // HibernateEntity.vsl merge-point
395 // SystemVersion.java merge-point
396 }