Rev 901 | Rev 1004 | Go to most recent revision | Blame | Compare with Previous | Last modification | View Log | RSS feed
package org.tela_botanica.client.modeles.publication;
import java.util.Iterator;
import java.util.Set;
import org.tela_botanica.client.modeles.aDonnee;
import org.tela_botanica.client.modeles.personne.Personne;
import com.google.gwt.json.client.JSONObject;
public class PublicationAPersonne extends aDonnee {
private static final long serialVersionUID = 7769105365939978129L;
public static final String PREFIXE = "cpuap";
public static final String ROLE_AUTEUR = "2360";
private Personne personneLiee = null;
public PublicationAPersonne() {}
public PublicationAPersonne(JSONObject pubAPersListe) {
personneLiee = new Personne(pubAPersListe);
// l'objet JSON est une table de hachage
Set<String> im = pubAPersListe.keySet();
// Parcourt pour chaque clé
for (Iterator<String> it = im.iterator(); it.hasNext();) {
// Si elle est associée à une valeur, nous l'ajoutons
String cle = it.next();
// Suppression de l'abréviation du champ. Inutile dans le contexte d'un objet
String cleObjet = cle.replaceFirst("^"+PREFIXE+"_", "");
// Valeur vide par défaut
String valeur = "";
if (pubAPersListe.get(cle).isString() != null) {
valeur = pubAPersListe.get(cle).isString().stringValue();
this.set(cleObjet, valeur);
} else {
this.set(cleObjet, valeur);
}
}
}
@Override
protected String getPrefixe() {
return PREFIXE;
}
public Personne getPersonne() {
return personneLiee;
}
public void setPersonne(Personne personne) {
personneLiee = personne;
if (personne != null) {
setIdPersonne(personne.getId());
}
}
// ID
public String getId() {
String idPublication = getIdPublication();
String idPersonne = getIdPersonne();
String idRole = getIdRole();
if (idPublication.equals("") && idPersonne.equals("") && idRole.equals("")) {
return null;
} else {
return (idPublication+"-"+idPersonne+"-"+idRole);
}
}
// ID PUBLICATION
public String getIdPublication() {
return renvoyerValeurCorrecte("id_publication");
}
public void setIdPublication(String id) {
set("id_publication", id);
}
// ID PERSONNE
public String getIdPersonne() {
return renvoyerValeurCorrecte("id_personne");
}
public void setIdPersonne(String id) {
set("id_personne", id);
}
// ID RôLE
public String getIdRole() {
return renvoyerValeurCorrecte("id_role");
}
public void setIdRole(String id) {
set("id_role", id);
}
// TYPE
public String getType() {
return renvoyerValeurCorrecte("ce_truk_type");
}
public void setType(String type) {
set("ce_truk_type", type);
}
public void setFonction(String type, String valeur) {
setChaineDenormaliseUnique("ce_truk_type", type, valeur);
}
}