Go to most recent revision | Blame | Last modification | View Log | RSS feed
package org.tela_botanica.client.modeles;
import java.util.LinkedHashMap;
import com.google.gwt.json.client.JSONArray;
import com.google.gwt.json.client.JSONNumber;
import com.google.gwt.json.client.JSONObject;
import com.google.gwt.json.client.JSONString;
/**
* Table de hachage composée d'informations sur les Valeurs des listes, renvoyé par un objet de type DAO
* La clé est le nom de l'entite + le nom de l'entite parente
*
* @author david delon
*
*/
public class PersonneListe extends LinkedHashMap<String, Valeur> {
/**
* Identifiant pour sérialisé l'objet...
*/
private static final long serialVersionUID = 7784635999621813450L;
private int id = 0;
/**
* Constructeur sans paramètres
*/
public PersonneListe() {
super();
}
/**
* Constructeur avec paramètre
* @param taille la taille de la table de hachage
*/
public PersonneListe(int taille) {
super(taille);
}
/**
* Constructeur pour une liste de personne
* @param dates
*/
public PersonneListe(JSONArray liste) {
super(liste.size());
this.constuireObjet(liste);
}
public PersonneListe(JSONString listeId, JSONArray listePersonnes) {
super(listePersonnes.size());
this.setId(Integer.parseInt(listeId.stringValue()));
this.constuireObjet(listePersonnes);
}
private void constuireObjet(JSONArray liste)
{
final int taillemax = liste.size();
for (int i = 0; i < taillemax; i++) {
JSONObject listeValeur = liste.get(i).isObject() ;
if (listeValeur != null) {
Valeur valeur = new Valeur(listeValeur);
this.put(valeur.getId(), valeur);
}
}
}
/**
* @param id l'identifiant à définir
*/
public void setId(int id) {
this.id = id;
}
/**
* @return l'identifiant de la liste
*/
public Integer getId() {
return id;
}
}