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.quadrige2.core.dao.administration.program;
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 java.io.Serializable;
30  import java.sql.Timestamp;
31  
32  /**
33   * types de privilège applicables sur un programme (responsable, consultation intégrale, saisisseur)
34   */
35  // HibernateEntity.vsl annotations merge-point
36  public abstract class ProgramPrivilege
37      implements Serializable, Comparable<ProgramPrivilege>
38  {
39      /**
40       * The serial version UID of this class. Needed for serialization.
41       */
42      private static final long serialVersionUID = 5930663967612181687L;
43  
44      // Generate 4 attributes
45      private Integer progPrivId;
46  
47      /**
48       * Identifiant du privilège (droit) sur les programmes
49       * @return this.progPrivId Integer
50       */
51      public Integer getProgPrivId()
52      {
53          return this.progPrivId;
54      }
55  
56      /**
57       * Identifiant du privilège (droit) sur les programmes
58       * @param progPrivIdIn Integer
59       */
60      public void setProgPrivId(Integer progPrivIdIn)
61      {
62          this.progPrivId = progPrivIdIn;
63      }
64  
65      private String progPrivNm;
66  
67      /**
68       * Libellé du privilège
69       * @return this.progPrivNm String
70       */
71      public String getProgPrivNm()
72      {
73          return this.progPrivNm;
74      }
75  
76      /**
77       * Libellé du privilège
78       * @param progPrivNmIn String
79       */
80      public void setProgPrivNm(String progPrivNmIn)
81      {
82          this.progPrivNm = progPrivNmIn;
83      }
84  
85      private String progPrivDc;
86  
87      /**
88       * Description du privilège
89       * @return this.progPrivDc String
90       */
91      public String getProgPrivDc()
92      {
93          return this.progPrivDc;
94      }
95  
96      /**
97       * Description du privilège
98       * @param progPrivDcIn String
99       */
100     public void setProgPrivDc(String progPrivDcIn)
101     {
102         this.progPrivDc = progPrivDcIn;
103     }
104 
105     private Timestamp updateDt;
106 
107     /**
108      * Date de modification de l'objet, mise à jour par le système
109      * @return this.updateDt Timestamp
110      */
111     public Timestamp getUpdateDt()
112     {
113         return this.updateDt;
114     }
115 
116     /**
117      * Date de modification de l'objet, mise à jour par le système
118      * @param updateDtIn Timestamp
119      */
120     public void setUpdateDt(Timestamp updateDtIn)
121     {
122         this.updateDt = updateDtIn;
123     }
124 
125     // Generate 2 associations
126     /**
127      * Returns <code>true</code> if the argument is an ProgramPrivilege instance and all identifiers for this entity
128      * equal the identifiers of the argument entity. Returns <code>false</code> otherwise.
129      */
130     @Override
131     public boolean equals(Object object)
132     {
133         if (this == object)
134         {
135             return true;
136         }
137         if (!(object instanceof ProgramPrivilege))
138         {
139             return false;
140         }
141         final ProgramPrivilege that = (ProgramPrivilege)object;
142         if (this.progPrivId == null || that.getProgPrivId() == null || !this.progPrivId.equals(that.getProgPrivId()))
143         {
144             return false;
145         }
146         return true;
147     }
148 
149     /**
150      * Returns a hash code based on this entity's identifiers.
151      */
152     @Override
153     public int hashCode()
154     {
155         int hashCode = 0;
156         hashCode = 29 * hashCode + (this.progPrivId == null ? 0 : this.progPrivId.hashCode());
157 
158         return hashCode;
159     }
160 
161     /**
162      * Constructs new instances of {@link ProgramPrivilege}.
163      */
164     public static final class Factory
165     {
166         /**
167          * Constructs a new instance of {@link ProgramPrivilege}.
168          * @return new ProgramPrivilegeImpl()
169          */
170         public static ProgramPrivilege newInstance()
171         {
172             return new ProgramPrivilegeImpl();
173         }
174 
175         /**
176          * Constructs a new instance of {@link ProgramPrivilege}, taking all required and/or
177          * read-only properties as arguments, except for identifiers.
178          * @param progPrivNm String
179          * @param updateDt Timestamp
180          * @return newInstance
181          */
182         public static ProgramPrivilege newInstance(String progPrivNm, Timestamp updateDt)
183         {
184             final ProgramPrivilege entity = new ProgramPrivilegeImpl();
185             entity.setProgPrivNm(progPrivNm);
186             entity.setUpdateDt(updateDt);
187             return entity;
188         }
189 
190         /**
191          * Constructs a new instance of {@link ProgramPrivilege}, taking all possible properties
192          * (except the identifier(s))as arguments.
193          * @param progPrivNm String
194          * @param progPrivDc String
195          * @param updateDt Timestamp
196          * @return newInstance ProgramPrivilege
197          */
198         public static ProgramPrivilege newInstance(String progPrivNm, String progPrivDc, Timestamp updateDt)
199         {
200             final ProgramPrivilege entity = new ProgramPrivilegeImpl();
201             entity.setProgPrivNm(progPrivNm);
202             entity.setProgPrivDc(progPrivDc);
203             entity.setUpdateDt(updateDt);
204             return entity;
205         }
206     }
207 
208     /**
209      * @see Comparable#compareTo
210      */
211     public int compareTo(ProgramPrivilege o)
212     {
213         int cmp = 0;
214         if (this.getProgPrivId() != null)
215         {
216             cmp = this.getProgPrivId().compareTo(o.getProgPrivId());
217         }
218         else
219         {
220             if (this.getProgPrivNm() != null)
221             {
222                 cmp = (cmp != 0 ? cmp : this.getProgPrivNm().compareTo(o.getProgPrivNm()));
223             }
224             if (this.getProgPrivDc() != null)
225             {
226                 cmp = (cmp != 0 ? cmp : this.getProgPrivDc().compareTo(o.getProgPrivDc()));
227             }
228             if (this.getUpdateDt() != null)
229             {
230                 cmp = (cmp != 0 ? cmp : this.getUpdateDt().compareTo(o.getUpdateDt()));
231             }
232         }
233         return cmp;
234     }
235 // HibernateEntity.vsl merge-point
236 // ProgramPrivilege.java merge-point
237 }