Subversion Repositories eFlore/Applications.coel

Rev

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