/*
* To change this template, choose Tools | Templates
* and open the template in the editor.
*/
package Metier;
import java.util.Comparator;
public class Livre {
String auteur;
String titre;
String position;
String volume;
int exemplaire;
String annee;
String prix;
Categorie catégorie;
String origine;
String id;
int etatDeTri = 1;
public int getEtatDeTri() {
return etatDeTri;
}
public void setEtatDeTri(int etatDeTri) {
this.etatDeTri = etatDeTri;
}
@Override
public String toString() {
return "Livre{" + "auteur=" + auteur + ", titre=" + titre + ", position=" + position + ", volume=" + volume + ", exemplaire=" + exemplaire + ", ann\u00e9e=" + annee + ", prix=" + prix + ", cat\u00e9gorie=" + catégorie + ", origine=" + origine + ", id=" + id + '}';
}
public String getOrigine() {
return origine;
}
public void setOrigine(String origine) {
this.origine = origine;
}
public String getId() {
return id;
}
public void setId(String id) {
this.id = id;
}
public int getExemplaire() {
return exemplaire;
}
public void setExemplaire(int exemplaire) {
this.exemplaire = exemplaire;
}
public String getAuteur() {
return auteur;
}
public void setAuteur(String auteur) {
this.auteur = auteur;
}
public String getTitre() {
return titre;
}
public void setTitre(String titre) {
this.titre = titre;
}
public String getPosition() {
return position;
}
public void setPosition(String position) {
this.position = position;
}
public String getVolume() {
return volume;
}
public void setVolume(String volume) {
this.volume = volume;
}
public String getAnnee() {
return annee;
}
public void setAnnee(String annee) {
this.annee = annee;
}
public String getPrix() {
return prix;
}
public void setPrix(String prix) {
this.prix = prix;
}
public Categorie getCatégorie() {
return catégorie;
}
public void setCatégorie(Categorie catégorie) {
this.catégorie = catégorie;
}
public Livre(String auteur, String titre, String position, String volume, int exemplaire, String année, String prix, String origine) {
this.auteur = auteur;
this.titre = titre;
this.position = position;
this.volume = volume;
this.exemplaire = exemplaire;
this.annee = année;
this.prix = prix;
this.origine = origine;
this.id = fabriqueID(auteur, titre, volume, année, origine);
}
public String fabriqueID(String auteur, String titre, String volume, String année, String origine) {
String s = "";
if (!"".equals(auteur)) {
s += auteur.substring(0, 3);
}
if (!"".equals(titre)) {
s += titre.substring(0, 3);
}
if (!"".equals(volume)) {
s += volume;
}
if (!"".equals(année)) {
s += année;
}
if (!"".equals(origine)) {
s += origine.substring(0, 3);
}
return s;
}
public static final Comparator<Livre> ORIGINE_COMPARATOR = new Comparator<Livre>() {
@Override
public int compare(Livre arg0, Livre arg1) {
if (arg0.getOrigine().equals(arg1.getOrigine())) {
return arg0.titre.compareToIgnoreCase(arg1.titre) * arg0.getEtatDeTri();
} else {
return arg0.origine.compareToIgnoreCase(arg1.origine) * arg0.getEtatDeTri();
}
}
};
public static final Comparator<Livre> TITRE_COMPARATOR = new Comparator<Livre>() {
@Override
public int compare(Livre arg0, Livre arg1) {
if (arg0.getTitre().equals(arg1.getTitre())) {
return arg0.auteur.compareToIgnoreCase(arg1.auteur) * arg0.getEtatDeTri();
} else {
return arg0.titre.compareToIgnoreCase(arg1.titre) * arg0.getEtatDeTri();
}
}
};
public static final Comparator CATEGORIE_COMPARATOR = new Comparator<Livre>() {
@Override
public int compare(Livre arg0, Livre arg1) {
if (arg0.getCatégorie().getNomCategorie().equals(arg1.getCatégorie().getNomCategorie())) {
return arg0.titre.compareToIgnoreCase(arg1.titre) * arg0.getEtatDeTri();
} else {
return arg0.catégorie.getNomCategorie().compareToIgnoreCase(arg1.catégorie.getNomCategorie()) * arg0.getEtatDeTri();
}
}
};
public static final Comparator AUTEUR_COMPARATOR = new Comparator<Livre>() {
@Override
public int compare(Livre arg0, Livre arg1) {
if (arg0.getAuteur().equals(arg1.getAuteur())) {
return arg0.titre.compareToIgnoreCase(arg1.titre) * arg0.getEtatDeTri();
} else {
return arg0.auteur.compareToIgnoreCase(arg1.auteur) * arg0.getEtatDeTri();
}
}
};
}