Subversion Repositories eFlore/Applications.coel

Rev

Rev 69 | Rev 118 | Go to most recent revision | Details | Compare with Previous | Last modification | View Log | RSS feed

Rev Author Line No. Line
69 jpm 1
package org.tela_botanica.client.modeles;
2
 
3
import java.util.LinkedHashMap;
4
 
5
import com.google.gwt.json.client.JSONArray;
91 jpm 6
import com.google.gwt.json.client.JSONNumber;
69 jpm 7
import com.google.gwt.json.client.JSONObject;
91 jpm 8
import com.google.gwt.json.client.JSONString;
69 jpm 9
 
10
/**
11
 * Table de hachage composée d'informations sur les Valeurs des listes, renvoyé par un objet de type DAO
12
 * La clé est le nom de l'entite + le nom de l'entite parente
13
 *
14
 * @author david delon
15
 *
16
 */
17
public class ValeurListe extends LinkedHashMap<String, Valeur> {
18
 
19
	/**
20
	 * Identifiant pour sérialisé l'objet...
21
	 */
22
	private static final long serialVersionUID = 7784635999621813450L;
23
 
91 jpm 24
	private int id = 0;
25
 
69 jpm 26
	/**
27
	 * Constructeur sans paramètres
28
	 */
29
	public ValeurListe() {
30
		super();
31
	}
32
 
33
	/**
34
	 * Constructeur avec paramètre
35
	 * @param taille la taille de la table de hachage
36
	 */
91 jpm 37
	public ValeurListe(int taille) {
69 jpm 38
		super(taille);
39
	}
40
	/**
41
	 * Constructeur pour une liste d'institutions
42
	 * @param dates
43
	 */
91 jpm 44
	public ValeurListe(JSONArray liste) {
45
		super(liste.size());
46
		this.constuireObjet(liste);
47
	}
48
 
49
	public ValeurListe(JSONString listeId, JSONArray listeValeurs) {
50
		super(listeValeurs.size());
51
		this.setId(Integer.parseInt(listeId.stringValue()));
52
		this.constuireObjet(listeValeurs);
53
	}
54
 
55
	private void constuireObjet(JSONArray liste)
69 jpm 56
	{
57
		final int taillemax = liste.size();
58
 
59
		for (int i = 0; i < taillemax; i++) {
60
			JSONObject listeValeur = liste.get(i).isObject() ;
61
 
62
			if (listeValeur != null)	{
63
				Valeur valeur = new Valeur(listeValeur);
64
				this.put(valeur.getId(), valeur);
65
			}
66
		}
67
	}
91 jpm 68
 
69
	/**
70
	 * @param id l'identifiant à définir
71
	 */
72
	public void setId(int id) {
73
		this.id = id;
74
	}
75
 
76
	/**
77
	 * @return l'identifiant de la liste
78
	 */
79
	public Integer getId() {
80
		return id;
81
	}
69 jpm 82
}