![JAR search and dependency download from the Maven repository](/logo.png)
com.evasion.entity.Individual Maven / Gradle / Ivy
/*
* To change this template, choose Tools | Templates
* and open the template in the editor.
*/
package com.evasion.entity;
import java.util.Calendar;
import java.util.Date;
import java.util.GregorianCalendar;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.EnumType;
import javax.persistence.Enumerated;
import javax.persistence.Temporal;
import javax.persistence.TemporalType;
import org.apache.commons.lang.builder.EqualsBuilder;
import org.apache.commons.lang.builder.HashCodeBuilder;
/**
* Decrit une personne physique.
* @author sebglon
*/
@Entity
public class Individual extends Person {
/**
* UID de serialisation.
*/
private static final long serialVersionUID = 1L;
/**
* Titre de civilite de la personne physique.
*/
@Enumerated(EnumType.STRING)
@Column(nullable = false)
private Civilite titre;
/**
* Prenom de la personne physique.
*/
@Column(nullable = false)
private String prenom;
/**
* Date de naissance de la personne physique.
*/
@Temporal(TemporalType.DATE)
private Calendar anniversaire = new GregorianCalendar();;
/**
* Constructeur par defaut (utilise par la persistence).
*/
protected Individual() {
}
/**
* Constructeur avance.
* @param e {@link Person#email}
* @param civ {@link Individual#titre}
* @param n {@link Person#nom}
* @param p {@link Individual#prenom}
* @param date {@link Individual#anniversaire}
*/
public Individual(final String e, final Civilite civ,
final String n, final String p, final Date date) {
super(n, e);
this.titre = civ;
this.prenom = p;
this.anniversaire.setTime(date);
}
/**
* Getter de la date anniversaire.
* @return la date anniversaire.
*/
public Date getAnniversaire() {
return anniversaire.getTime();
}
/**
* Setter de la date anniversaire.
* @param date date a setter.
*/
public void setAnniversaire(Date date) {
this.anniversaire.setTime(date);
}
/**
* Getter du prenom de la personne.
* @return renvoi le prenom.
*/
public String getPrenom() {
return prenom;
}
/**
* Setter du prenom de la personne.
* @param prenom prenom de la personne.
*/
public void setPrenom(String prenom) {
this.prenom = prenom;
}
/**
* Getter du titre de civilite.
* @return titre de la personne.
*/
public Civilite getTitre() {
return titre;
}
/**
* Setter du titre de civilite.
* @param titre titre de la personne.
*/
public void setTitre(Civilite titre) {
this.titre = titre;
}
/**
* {@inheritDoc }
*/
@Override
public boolean equals(final Object obj) {
if (obj == null) {
return false;
}
if (this == obj) {
return true;
}
if (!( obj instanceof Individual )) {
return false;
}
Individual rhs = (Individual) obj;
return new EqualsBuilder().appendSuper(super.equals(rhs)).
append(this.prenom, rhs.prenom).
append(this.titre, rhs.titre).
append(this.anniversaire, rhs.anniversaire).
isEquals();
}
/**
* @{@inheritDoc }
*/
@Override
public int hashCode() {
return new HashCodeBuilder(17, 37).appendSuper(super.hashCode()).
append(this.titre).
append(this.prenom).
append(this.anniversaire).
toHashCode();
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy