Subversion Repositories eFlore/Applications.coel

Rev

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