Subversion Repositories eFlore/Applications.coel

Compare Revisions

Ignore whitespace Rev 1801 → Rev 1802

/trunk/src/org/tela_botanica/client/modeles/collection/CollectionAStructure.java
New file
0,0 → 1,35
package org.tela_botanica.client.modeles.collection;
 
import org.tela_botanica.client.modeles.aDonnee;
 
import com.google.gwt.json.client.JSONObject;
 
public class CollectionAStructure extends aDonnee {
private static final long serialVersionUID = -8891776931124681678L;
public static final String PREFIXE = "cc";
public static String[] champsObligatoires = {"cc_id_collection","cc_nom"};
 
public CollectionAStructure(JSONObject collectionAStructure){
initialiserModele(collectionAStructure);
}
@Override
protected String getPrefixe() {
return PREFIXE;
}
 
@Override
protected String[] getChampsObligatoires() {
return champsObligatoires;
}
 
public String getNom() {
return renvoyerValeurCorrecte("nom");
}
public String getIdCollection() {
return renvoyerValeurCorrecte("id_collection");
}
}
/trunk/src/org/tela_botanica/client/modeles/collection/CollectionAStructureListe.java
New file
0,0 → 1,33
package org.tela_botanica.client.modeles.collection;
 
import org.tela_botanica.client.modeles.aDonneeListe;
 
import com.google.gwt.json.client.JSONArray;
import com.google.gwt.json.client.JSONObject;
import com.google.gwt.user.client.Window;
 
public class CollectionAStructureListe extends aDonneeListe<CollectionAStructure> {
 
private static final long serialVersionUID = -660181428725095350L;
public CollectionAStructureListe() {
super();
}
public CollectionAStructureListe(int taille) {
super(taille);
}
public CollectionAStructureListe(JSONArray collectionAStructureListe) {
super(collectionAStructureListe.size()) ;
final int taillemax = collectionAStructureListe.size();
for (int i = 0; i < taillemax; i++) {
JSONObject collectionAStructureCourante = collectionAStructureListe.get(i).isObject() ;
if (collectionAStructureCourante != null) {
CollectionAStructure collectionAStructure = new CollectionAStructure(collectionAStructureCourante);
this.put(collectionAStructure.getIdCollection(), collectionAStructure);
}
}
}
}
/trunk/src/org/tela_botanica/client/modeles/collection/CollectionAStructureAsyncDao.java
New file
0,0 → 1,78
package org.tela_botanica.client.modeles.collection;
 
import java.util.HashMap;
 
import org.tela_botanica.client.Mediateur;
import org.tela_botanica.client.RegistreId;
import org.tela_botanica.client.http.JsonRestRequestBuilder;
import org.tela_botanica.client.http.JsonRestRequestCallback;
import org.tela_botanica.client.interfaces.Rafraichissable;
import org.tela_botanica.client.modeles.Information;
import org.tela_botanica.client.synchronisation.Reponse;
import org.tela_botanica.client.util.UtilDAO;
 
import com.extjs.gxt.ui.client.Registry;
import com.google.gwt.core.client.GWT;
import com.google.gwt.http.client.URL;
import com.google.gwt.json.client.JSONArray;
import com.google.gwt.json.client.JSONObject;
import com.google.gwt.json.client.JSONValue;
 
public class CollectionAStructureAsyncDao {
private static final String SERVICE_NOM = "CoelCollection";
public static final String PAR_STRUCTURE = "ParIdStructure";
 
private Rafraichissable vueARafraichir = null;
 
public CollectionAStructureAsyncDao(Rafraichissable vueARafraichirCourrante) {
if (Mediateur.DEBUG) System.out.println("|| CollectionAStructureAsyncDao > vueARafraichir = "+vueARafraichirCourrante.getClass().toString());
vueARafraichir = vueARafraichirCourrante;
}
public void selectionner(final String structureId, final int start, final int nbElements, final Integer seqId) {
String[] parametres = {structureId};
HashMap<String, String> restrictions = new HashMap<String, String>();
if (nbElements != -1) {
restrictions.put("limit", String.valueOf(nbElements));
}
/** DEFINITION DU TUPLE DE DEPART **/
restrictions.put("start", String.valueOf(start*nbElements));
final JsonRestRequestBuilder rb = UtilDAO.construireRequete(SERVICE_NOM+'/'+PAR_STRUCTURE, parametres, restrictions);
rb.envoyerRequete(null, new JsonRestRequestCallback() {
@Override
public void surReponse(JSONValue responseValue) {
 
Information info = new Information("liste_collection_a_structure");
 
if (responseValue != null) {
final JSONArray reponse = responseValue.isArray();
// Si la réponse est un tableau, alors c'est une liste de collections qui a été retournée
if (responseValue.isArray() != null) {
// Transformation du tableau JSON réponse en CollectionAStructureListe
CollectionAStructureListe collections = new CollectionAStructureListe(reponse);
info.setDonnee(0, collections);
// et on met à jour le demandeur des données
if (seqId != null) {
if (Mediateur.DEBUG) System.out.println("<-- CollectionAStructureAsyncDao > Liste non paginée, retour au sequenceur");
Reponse reponseRequete = new Reponse(info, seqId);
vueARafraichir.rafraichir(reponseRequete);
}
else {
if (Mediateur.DEBUG) System.out.println("<-- CollectionAStructureAsyncDao > Liste non paginée, retour au sequenceur");
vueARafraichir.rafraichir(info);
}
// Si la réponse est un objet, alors c'est une unique collection qui a été retournée
} else if (responseValue.isArray() != null) {
GWT.log(rb.getUrl()+"\n\tLa réponse n'est pas un tableau JSON et vaut : "+responseValue.toString(), null);
}
}
}
});
}
}