001// license-header java merge-point 002// 003// Attention: Generated code! Do not modify by hand! 004// Generated by: hibernate/HibernateEntity.vsl in andromda-hibernate-cartridge. 005// 006package fr.ifremer.adagio.core.dao.administration.user; 007 008/* 009 * #%L 010 * SIH-Adagio :: Core 011 * $Id:$ 012 * $HeadURL:$ 013 * %% 014 * Copyright (C) 2012 - 2014 Ifremer 015 * %% 016 * This program is free software: you can redistribute it and/or modify 017 * it under the terms of the GNU Affero General Public License as published by 018 * the Free Software Foundation, either version 3 of the License, or 019 * (at your option) any later version. 020 * 021 * This program is distributed in the hope that it will be useful, 022 * but WITHOUT ANY WARRANTY; without even the implied warranty of 023 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 024 * GNU General Public License for more details. 025 * 026 * You should have received a copy of the GNU Affero General Public License 027 * along with this program. If not, see <http://www.gnu.org/licenses/>. 028 * #L% 029 */ 030 031import java.io.Serializable; 032import java.util.Date; 033 034/** 035 * @deprecated Use Program2person instead 036 * ATTENTION : NE PLUS UTILISER les portefeuilles dans les nouveaux développements (utiliser à la 037 * place les privilèves sur les programmes) 038 * Cette entité contient les informations indiquant qu'un portefeuille a les mêmes droit qu'un 039 * autre. Cette information est utilisée pour la saisie pour que des données saisies par un service 040 * puissent toujours être gérées lorsque le service n'existe plus et que ses agents se retrouvent 041 * dans d'autres services 042 */ 043// HibernateEntity.vsl annotations merge-point 044public abstract class ManagedDataTransfer 045 implements Serializable, Comparable<ManagedDataTransfer> 046{ 047 /** 048 * The serial version UID of this class. Needed for serialization. 049 */ 050 private static final long serialVersionUID = -8864169229099618704L; 051 052 private ManagedDataTransferPK managedDataTransferPk; 053 054 /** 055 * Get the composite primary key identifier class 056 * @return managedDataTransferPk 057 */ 058 public ManagedDataTransferPK getManagedDataTransferPk() 059 { 060 return this.managedDataTransferPk; 061 } 062 063 /** 064 * Set the composite primary key identifier class 065 * @param managedDataTransferPkIn 066 */ 067 public void setManagedDataTransferPk(ManagedDataTransferPK managedDataTransferPkIn) { 068 this.managedDataTransferPk = managedDataTransferPkIn; 069 } 070 071 // Generate 1 attributes 072 private Date transferDate; 073 074 /** 075 * Date à partir de laquelle le transfert s'applique. 076 * Cette date doit etre comparée à la date de la saisie, et non à la date de la donnée et elle 077 * meme. 078 * Exemple : 079 * - Si transfert d'un portefeuille à compté du 1 mars de l'année N. 080 * - dès le 1er mars, le nouveau propriétaire de la donnée pourra saisir sur le protefeuille, 081 * par exemple des enquete sur l'année N-1. 082 * @return this.transferDate Date 083 */ 084 public Date getTransferDate() 085 { 086 return this.transferDate; 087 } 088 089 /** 090 * Date à partir de laquelle le transfert s'applique. 091 * Cette date doit etre comparée à la date de la saisie, et non à la date de la donnée et elle 092 * meme. 093 * Exemple : 094 * - Si transfert d'un portefeuille à compté du 1 mars de l'année N. 095 * - dès le 1er mars, le nouveau propriétaire de la donnée pourra saisir sur le protefeuille, 096 * par exemple des enquete sur l'année N-1. 097 * @param transferDateIn Date 098 */ 099 public void setTransferDate(Date transferDateIn) 100 { 101 this.transferDate = transferDateIn; 102 } 103 104 // Generate 2 associations 105 private ManagedData managedData; 106 107 /** 108 * @deprecated Use Program2person instead 109 * ATTENTION : NE PLUS UTILISER les portefeuilles dans les nouveaux développements (utiliser à 110 * la place 111 * les privilèves sur les programmes) 112 * Portefeuille de navires. 113 * Il peut s'agir d'un portefeuille de différent type (enquete d'activité, marées observées en 114 * mer, 115 * campagne en mer, etc.) 116 * Gestion des droits : 117 * - Un portefeuille est géré par un seul utilisateur, qui à les droits de lecture/écriture. 118 * - Un portefeuille peut etre supervisé par une tierce personne, qui aura également les droits 119 * de 120 * lecture/écriture sur les données du portefeuille. 121 * - Un portefeuille peut avoir plusieurs utilisateurs avec des droits de consultation 122 * uniquement 123 * (lecture seule) sur ces données. 124 * @return this.managedData ManagedData 125 */ 126 public ManagedData getManagedData() 127 { 128 return this.managedData; 129 } 130 131 /** 132 * @deprecated Use Program2person instead 133 * ATTENTION : NE PLUS UTILISER les portefeuilles dans les nouveaux développements (utiliser à 134 * la place 135 * les privilèves sur les programmes) 136 * Portefeuille de navires. 137 * Il peut s'agir d'un portefeuille de différent type (enquete d'activité, marées observées en 138 * mer, 139 * campagne en mer, etc.) 140 * Gestion des droits : 141 * - Un portefeuille est géré par un seul utilisateur, qui à les droits de lecture/écriture. 142 * - Un portefeuille peut etre supervisé par une tierce personne, qui aura également les droits 143 * de 144 * lecture/écriture sur les données du portefeuille. 145 * - Un portefeuille peut avoir plusieurs utilisateurs avec des droits de consultation 146 * uniquement 147 * (lecture seule) sur ces données. 148 * @param managedDataIn ManagedData 149 */ 150 public void setManagedData(ManagedData managedDataIn) 151 { 152 this.managedData = managedDataIn; 153 } 154 155 private Person newManagerUser; 156 157 /** 158 * <html> 159 * <head> 160 * <style> 161 * p {padding:0px; margin:0px;} 162 * </style> 163 * </head> 164 * <body> 165 * <p> 166 * Personne liées aux données : utilisateur du système, ou observateurs, 167 * responsable de données, etc. 168 * </p> 169 * <p> 170 * </p> 171 * <p> 172 * Les personnes liées aux activités professionnelles de pêche sont plutôt 173 * gérer dans <i>VesselPerson</i>. 174 * </p> 175 * <p> 176 * </p> 177 * <p> 178 * Nombre de lignes : 100 179 * </p> 180 * </body> 181 * </html> 182 * @return this.newManagerUser Person 183 */ 184 public Person getNewManagerUser() 185 { 186 return this.newManagerUser; 187 } 188 189 /** 190 * <html> 191 * <head> 192 * <style> 193 * p {padding:0px; margin:0px;} 194 * </style> 195 * </head> 196 * <body> 197 * <p> 198 * Personne liées aux données : utilisateur du système, ou observateurs, 199 * responsable de données, etc. 200 * </p> 201 * <p> 202 * </p> 203 * <p> 204 * Les personnes liées aux activités professionnelles de pêche sont plutôt 205 * gérer dans <i>VesselPerson</i>. 206 * </p> 207 * <p> 208 * </p> 209 * <p> 210 * Nombre de lignes : 100 211 * </p> 212 * </body> 213 * </html> 214 * @param newManagerUserIn Person 215 */ 216 public void setNewManagerUser(Person newManagerUserIn) 217 { 218 this.newManagerUser = newManagerUserIn; 219 } 220 221 /** 222 * This entity does not have any identifiers 223 * and is not extending any other entity, 224 * so this method will only return <code>true</code> if the argument reference and <code>this</code> 225 * refer to the same object. 226 */ 227 @Override 228 public boolean equals(Object object) 229 { 230 return super.equals(object); 231 } 232 233 /** 234 * This entity does not have any identifiers 235 * and is not extending any other entity, 236 * so this method will only take the identifiers of this entity into account when calculating the hash code. 237 */ 238 @Override 239 public int hashCode() 240 { 241 return super.hashCode(); 242 } 243 244 /** 245 * Constructs new instances of {@link ManagedDataTransfer}. 246 */ 247 public static final class Factory 248 { 249 /** 250 * Constructs a new instance of {@link ManagedDataTransfer}. 251 * @return new ManagedDataTransferImpl() 252 */ 253 public static ManagedDataTransfer newInstance() 254 { 255 return new ManagedDataTransferImpl(); 256 } 257 258 259 /** 260 * Constructs a new instance of {@link ManagedDataTransfer}, taking all possible properties 261 * (except the identifier(s))as arguments. 262 * @param transferDate Date 263 * @param managedData ManagedData 264 * @param newManagerUser Person 265 * @return newInstance ManagedDataTransfer 266 */ 267 public static ManagedDataTransfer newInstance(Date transferDate, ManagedData managedData, Person newManagerUser) 268 { 269 final ManagedDataTransfer entity = new ManagedDataTransferImpl(); 270 entity.setTransferDate(transferDate); 271 entity.setManagedData(managedData); 272 entity.setNewManagerUser(newManagerUser); 273 return entity; 274 } 275 } 276 277 /** 278 * @see Comparable#compareTo 279 */ 280 public int compareTo(ManagedDataTransfer o) 281 { 282 int cmp = 0; 283 if (this.getManagedDataTransferPk() != null) 284 { 285 cmp = this.getManagedDataTransferPk().compareTo(o.getManagedDataTransferPk()); 286 } 287 if (this.getTransferDate() != null) 288 { 289 cmp = (cmp != 0 ? cmp : this.getTransferDate().compareTo(o.getTransferDate())); 290 } 291 return cmp; 292 } 293// HibernateEntity.vsl merge-point 294// ManagedDataTransfer.java merge-point 295}