Subversion Repositories eFlore/Applications.coel

Rev

Details | Last modification | View Log | RSS feed

Rev Author Line No. Line
741 aurelien 1
package org.tela_botanica.client.modeles;
2
 
3
import java.util.Iterator;
4
import java.util.Set;
5
 
6
import com.google.gwt.json.client.JSONObject;
7
 
8
public class PublicationAPersonne extends aDonnee {
9
 
10
	private static final long serialVersionUID = 7769105365939978129L;
748 jpm 11
 
751 jpm 12
	public static final String PREFIXE = "cpuap";
13
	public static final String ROLE_AUTEUR = "2360";
775 jpm 14
	private Personne personneLiee = null;
15
 
901 jpm 16
	public PublicationAPersonne() {}
17
 
741 aurelien 18
	public PublicationAPersonne(JSONObject pubAPersListe) {
775 jpm 19
		personneLiee = new Personne(pubAPersListe);
20
 
741 aurelien 21
		// l'objet JSON est une table de hachage
22
		Set<String> im = pubAPersListe.keySet();
23
 
24
		// Parcourt pour chaque clé
25
		for (Iterator<String> it = im.iterator(); it.hasNext();) {
26
			// Si elle est associée à une valeur, nous l'ajoutons
27
			String cle = it.next();
28
			// Suppression de l'abréviation du champ. Inutile dans le contexte d'un objet
748 jpm 29
			String cleObjet = cle.replaceFirst("^"+PREFIXE+"_", "");
30
			// Valeur vide par défaut
31
			String valeur = "";
741 aurelien 32
			if (pubAPersListe.get(cle).isString() != null) {
748 jpm 33
				valeur = pubAPersListe.get(cle).isString().stringValue();
34
				this.set(cleObjet, valeur);
741 aurelien 35
			} else {
748 jpm 36
				this.set(cleObjet, valeur);
741 aurelien 37
			}
38
		}
39
	}
40
 
748 jpm 41
	@Override
42
	protected String getPrefixe() {
43
		return PREFIXE;
44
	}
45
 
775 jpm 46
	public Personne getPersonne() {
47
		return personneLiee;
748 jpm 48
	}
775 jpm 49
	public void setPersonne(Personne personne) {
50
		personneLiee = personne;
901 jpm 51
		if (personne != null) {
52
			setIdPersonne(personne.getId());
53
		}
741 aurelien 54
	}
55
 
901 jpm 56
	// ID
57
	public String getId() {
58
		String idPublication = getIdPublication();
59
		String idPersonne = getIdPersonne();
60
		String idRole = getIdRole();
61
		if (idPublication.equals("") && idPersonne.equals("") && idRole.equals("")) {
62
			return null;
63
		} else {
64
			return (idPublication+"-"+idPersonne+"-"+idRole);
65
		}
66
	}
67
 
68
	// ID PUBLICATION
69
	public String getIdPublication() {
70
		return renvoyerValeurCorrecte("id_publication");
71
	}
72
	public void setIdPublication(String id) {
73
		set("id_publication", id);
74
	}
75
 
76
	// ID PERSONNE
77
	public String getIdPersonne() {
78
		return renvoyerValeurCorrecte("id_personne");
79
	}
80
	public void setIdPersonne(String id) {
81
		set("id_personne", id);
82
	}
83
 
84
	// ID RôLE
85
	public String getIdRole() {
86
		return renvoyerValeurCorrecte("id_role");
87
	}
88
	public void setIdRole(String id) {
89
		set("id_role", id);
90
	}
91
 
92
	// TYPE
93
	public String getType() {
94
		return renvoyerValeurCorrecte("ce_truk_type");
95
	}
96
	public void setType(String type) {
97
		set("ce_truk_type", type);
98
	}
99
	public void setFonction(String type, String valeur) {
100
		setChaineDenormaliseUnique("ce_truk_type", type, valeur);
101
	}
775 jpm 102
}