Rev 928 | Rev 1367 | Go to most recent revision | Blame | Compare with Previous | Last modification | View Log | RSS feed
package org.tela_botanica.del.client.modeles;
import com.google.gwt.http.client.URL;
public class InformationsRecherche {
private String rechercheLibre;
private String departement;
private String taxon;
private String genre;
private String motClef;
private String date;
private String commune;
private String famille;
private String tag;
private String auteur;
private String idProtocoleSelectionne = null;
private ModeTri triParNbVotes = ModeTri.PAS_DE_TRI;
private ModeTri triParDate = ModeTri.PAS_DE_TRI;
public String getRechercheLibre() {
return rechercheLibre;
}
public void setRechercheLibre(String rechercheLibre) {
if (rechercheLibre != null) {
this.rechercheLibre = rechercheLibre;
}
}
public String getDepartement() {
return departement;
}
public void setDepartement(String departement) {
if (departement != null) {
this.departement = departement;
}
}
public String getTaxon() {
return taxon;
}
public void setTaxon(String taxon) {
if (taxon != null) {
this.taxon = taxon;
}
}
public String getGenre() {
return genre;
}
public void setGenre(String genre) {
if (genre != null) {
this.genre = genre;
}
}
public String getMotClef() {
return motClef;
}
public void setMotClef(String motClef) {
if (motClef != null) {
this.motClef = motClef;
}
}
public String getDate() {
return date;
}
public void setDate(String date) {
if (date != null) {
this.date = date;
}
}
public String getCommune() {
return commune;
}
public void setCommune(String commune) {
if (commune != null) {
String[] tableauCommuneDpt = commune.split(" ");
if (tableauCommuneDpt.length == 2) {
String dpt = tableauCommuneDpt[1].replaceAll("\\(", "").replaceAll("\\)", "");
setDepartement(dpt);
this.commune = tableauCommuneDpt[0];
} else {
this.commune = commune;
}
}
}
public String getFamille() {
return famille;
}
public void setFamille(String famille) {
if (famille != null) {
this.famille = famille;
}
}
public String getTag() {
return tag;
}
public void setTag(String tag) {
if (tag != null) {
this.tag = tag;
}
}
public String getAuteur() {
return auteur;
}
public void setAuteur(String auteur) {
if (auteur != null) {
this.auteur = auteur;
}
}
public ModeTri getTriParNbVotes() {
return triParNbVotes;
}
public void setTriParNbVotes(ModeTri triParNbVotes) {
this.triParNbVotes = triParNbVotes;
}
public void setIdProtocoleSelectionne(String idProtocoleSelectionne) {
this.idProtocoleSelectionne = idProtocoleSelectionne;
}
public String getIdProtocoleSelectionne() {
return idProtocoleSelectionne;
}
public ModeTri getTriParDate() {
return triParDate;
}
public void setTriParDate(ModeTri triParDate) {
this.triParDate = triParDate;
}
public String versChaineRequete() {
String chaine = "";
chaine += estNonNull(rechercheLibre) ? "&masque=" + URL.encode(rechercheLibre) : "";
chaine += estNonNull(departement) ? "&masque.departement=" + URL.encode(departement) : "";
chaine += estNonNull(taxon) ? "&masque.ns=" + URL.encode(taxon) : "";
chaine += estNonNull(genre) ? "&masque.genre=" + URL.encode(genre) : "";
chaine += estNonNull(motClef) ? "&masque.tag=" + URL.encode(motClef) : "";
chaine += estNonNull(date) ? "&masque.date=" + URL.encode(date) : "";
chaine += estNonNull(commune) ? "&masque.commune=" + URL.encode(commune) : "";
chaine += estNonNull(famille) ? "&masque.famille=" + URL.encode(famille) : "";
chaine += estNonNull(auteur) ? "&masque.auteur=" + URL.encode(auteur) : "";
//TODO: réadapter les web services pour que ceux-ci prennent en compte un tri
chaine += triParDate != ModeTri.PAS_DE_TRI ? "&tri=date_observation" : "";
chaine += triParNbVotes != ModeTri.PAS_DE_TRI ? "&tri=votes" : "";
chaine += triParDate != ModeTri.PAS_DE_TRI ? "&ordre=" + triParDate : "";
chaine += triParNbVotes != ModeTri.PAS_DE_TRI ? "&ordre=" + triParNbVotes : "";
chaine += estNonNull(idProtocoleSelectionne) ? "&protocole=" + idProtocoleSelectionne : "";
return chaine;
}
private boolean estNonNull(String critere) {
return critere != null && !critere.trim().isEmpty();
}
}