Subversion Repositories eFlore/Applications.coel

Rev

Details | Last modification | View Log | RSS feed

Rev Author Line No. Line
106 aurelien 1
package org.tela_botanica.client.modeles;
2
 
3
import java.util.Iterator;
230 aurelien 4
import java.util.Map;
106 aurelien 5
import java.util.Set;
6
 
264 jp_milcent 7
import com.google.gwt.core.client.GWT;
230 aurelien 8
import com.google.gwt.http.client.URL;
106 aurelien 9
import com.google.gwt.json.client.JSONObject;
230 aurelien 10
import com.google.gwt.user.client.Window;
106 aurelien 11
 
12
public class Publication extends aDonnee {
13
 
14
	/**
230 aurelien 15
	 * Préfixe à retirer pour construire les noms des clés
16
	 * et à rajouter lors de la transformation en requête
17
	 */
716 aurelien 18
	private static String prefixe = "cpu_";
230 aurelien 19
 
20
	/**
106 aurelien 21
	 * Constructeur vide
22
	 *
23
	 */
24
	public Publication() {
25
 
26
	}
27
 
28
	/**
29
	 * Constructeur avec un objet JSON
30
	 *
31
	 * @param image
32
	 */
33
	public Publication(JSONObject institution) {
34
		// l'objet JSON est une table de hachage
35
		Set<String> im = institution.keySet();
36
 
37
		// Parcourt pour chaque clé
38
		for (Iterator<String> it = im.iterator(); it.hasNext();) {
39
			// Si elle est associée à une valeur, nous l'ajoutons
40
			String cle = it.next();
41
			// Suppression de l'abréviation du champ. Inutile dans le contexte d'un objet
230 aurelien 42
			String cleObjet = cle.replaceFirst("^"+prefixe, "");
106 aurelien 43
			if (institution.get(cle).isString() != null) {
44
				String valeur = institution.get(cle).isString().stringValue();
45
				this.set(cleObjet, valeur);
46
			} else {
47
				// Sinon, nous ajoutons la clé avec une valeur vide
48
				String valeur = " ";
49
				this.set(cleObjet, valeur);
50
			}
51
		}
52
	}
53
 
716 aurelien 54
	public Publication(String nom_complet, String uri, String auteur, String idAuteur, String collection, String titre, String editeur,
221 aurelien 55
			String dateParution, String indicationNvt, String fascicule, String pages) {
56
		this.set("fmt_nom_complet", nom_complet);
230 aurelien 57
		this.set("ce_projet", "");
221 aurelien 58
		this.set("uri", uri);
59
		this.set("fmt_auteur", auteur);
60
		this.set("collection", collection);
716 aurelien 61
		this.set("titre", titre);
221 aurelien 62
		this.set("ce_truk_editeur", editeur);
63
		this.set("date_parution", dateParution);
64
		this.set("indication_nvt", indicationNvt);
65
		this.set("fascicule", fascicule);
66
		this.set("truk_pages", pages);
230 aurelien 67
		this.set("ce_meta", "");
716 aurelien 68
		this.set("id_auteur", idAuteur);
221 aurelien 69
	}
70
 
716 aurelien 71
	public Publication(String idPublication,String idProjet, String nom_complet, String uri, String auteur, String idAuteur, String collection, String titre, String editeur,
230 aurelien 72
			String dateParution, String indicationNvt, String fascicule, String pages) {
73
		this.set("id_publication", idPublication);
74
		this.set("ce_projet", idProjet);
75
		this.set("fmt_nom_complet", nom_complet);
76
		this.set("uri", uri);
77
		this.set("fmt_auteur", auteur);
78
		this.set("collection", collection);
716 aurelien 79
		this.set("titre", titre);
230 aurelien 80
		this.set("ce_truk_editeur", editeur);
81
		this.set("date_parution", dateParution);
82
		this.set("indication_nvt", indicationNvt);
83
		this.set("fascicule", fascicule);
84
		this.set("truk_pages", pages);
85
		this.set("ce_meta", "");
716 aurelien 86
		this.set("id_auteur", idAuteur);
230 aurelien 87
	}
88
 
106 aurelien 89
	public String getId() {
90
		return (String) renvoyerValeurCorrecte("id_publication");
91
	}
92
 
93
	public String getProjet() {
230 aurelien 94
		return (String) renvoyerValeurCorrecte("ce_projet");
106 aurelien 95
	}
96
 
97
	public String getNomComplet() {
98
		return (String) renvoyerValeurCorrecte("fmt_nom_complet");
99
	}
100
 
101
	public String getURI() {
102
		return (String) renvoyerValeurCorrecte("uri");
103
	}
104
 
105
	public String getAuteur() {
106
		return (String) renvoyerValeurCorrecte("fmt_auteur");
107
	}
108
 
109
	public String getCollection() {
110
		return (String) renvoyerValeurCorrecte("collection");
111
	}
112
 
113
	public String getTitre() {
114
		return (String) renvoyerValeurCorrecte("titre");
115
	}
116
 
117
	public String getEditeur() {
118
		return (String) renvoyerValeurCorrecte("ce_truk_editeur");
119
	}
120
 
121
	public String getDateParution() {
122
		return (String) renvoyerValeurCorrecte("date_parution");
123
	}
124
 
125
	public String getIndicationNvt() {
126
		return (String) renvoyerValeurCorrecte("indication_nvt");
127
	}
128
 
129
	public String getFascicule() {
130
		return (String) renvoyerValeurCorrecte("fascicule");
131
	}
132
 
133
	public String getPages() {
134
		return (String) renvoyerValeurCorrecte("truk_pages");
135
	}
230 aurelien 136
 
137
	public String getMeta() {
138
		return (String) renvoyerValeurCorrecte("ce_meta");
139
	}
140
 
238 aurelien 141
	public String getIdAuteur() {
716 aurelien 142
		return (String) renvoyerValeurCorrecte("id_auteur");
238 aurelien 143
	}
144
 
230 aurelien 145
	public String toReqString() {
146
		String reqString = "" ;
147
 
148
		Map<String,Object> clesValeurs = getProperties() ;
149
		for(Iterator<String> it = clesValeurs.keySet().iterator(); it.hasNext();) {
150
			String cle = it.next();
716 aurelien 151
			if(cle.equals("id_auteur")) {
152
				reqString += "&"+"cpuap_id_personne="+URL.encode((String)clesValeurs.get(cle));
153
			} else  {
718 aurelien 154
				reqString += "&"+prefixe+cle+"="+URL.encode((String)renvoyerValeurCorrecte(cle));
716 aurelien 155
			}
230 aurelien 156
		}
264 jp_milcent 157
		GWT.log(reqString, null);
230 aurelien 158
		return reqString;
159
	}
106 aurelien 160
}