/trunk/src/org/tela_botanica/del/client/modeles/ObservationServiceResultat.java |
---|
1,70 → 1,13 |
package org.tela_botanica.del.client.modeles; |
import java.util.ArrayList; |
import java.util.List; |
import org.tela_botanica.del.client.cache.CacheClient; |
import org.tela_botanica.del.client.utils.UtilitairesServiceResultat; |
public class ObservationServiceResultat { |
import com.google.gwt.json.client.JSONArray; |
import com.google.gwt.json.client.JSONObject; |
import com.google.gwt.json.client.JSONValue; |
private List<Observation> observations; |
public class ObservationServiceResultat { |
private List<Observation> observations; |
private int nbTotalObservationsPourLaRecherche; |
public ObservationServiceResultat(JSONValue retourJson) { |
observations = new ArrayList<Observation>(); |
if(retourJson.isObject().get("entete") != null) { |
//TODO ajouter vérifications plus précises |
double total = retourJson.isObject().get("entete").isObject().get("total").isNumber().doubleValue(); |
nbTotalObservationsPourLaRecherche = (int) total; |
JSONObject tableauObs = retourJson.isObject().get("resultats").isObject(); |
if(tableauObs != null) { |
java.util.Iterator<String> it = tableauObs.keySet().iterator(); |
while (it.hasNext()) { |
JSONObject observationJson = tableauObs.get(it.next()).isObject(); |
Observation observation = analyserObservation(observationJson); |
observations.add(observation); |
} |
} |
} else { |
JSONObject observationJson = retourJson.isObject(); |
Observation observation = analyserObservation(observationJson); |
observations.add(observation); |
CacheClient.getInstance().setObservationCourante(observation); |
} |
} |
private Observation analyserObservation(JSONObject observationJson) { |
Observation observation = UtilitairesServiceResultat.parserObservationEtCreerPropositionDetermination(observationJson); |
JSONArray tableauImagesObs = observationJson.get("images").isArray(); |
List<Image> imagesPourObs = new ArrayList<Image>(); |
int nbImages = tableauImagesObs.size(); |
for (int j = 0; j < nbImages; j++) { |
JSONObject imageJson = tableauImagesObs.get(j).isObject(); |
Image image = UtilitairesServiceResultat.parserImageJSON(imageJson); |
if (imageJson.get("protocoles_votes") != null && imageJson.get("protocoles_votes").isObject() != null) { |
JSONObject votes = imageJson.get("protocoles_votes").isObject(); |
image.setVoteProtocoles(UtilitairesServiceResultat.parserVotesProtocoles(votes)); |
} |
image.setObservation(observation); |
imagesPourObs.add(image); |
} |
observation.setImages(imagesPourObs); |
return observation; |
} |
public List<Observation> getObservations() { |
return observations; |
} |
/trunk/src/org/tela_botanica/del/client/modeles/ProtocoleServiceResultat.java |
---|
1,39 → 1,16 |
package org.tela_botanica.del.client.modeles; |
import java.util.ArrayList; |
import java.util.List; |
import org.tela_botanica.del.client.utils.UtilitairesServiceResultat; |
import com.google.gwt.json.client.JSONObject; |
import com.google.gwt.json.client.JSONValue; |
public class ProtocoleServiceResultat { |
private List<Protocole> protocoles; |
public ProtocoleServiceResultat(List<Protocole> protocoles) { |
// constructeur utilisable plus tard quand on aura implenté un systeme de cache |
// constructeur utilisable plus tard quand on aura implenté un systeme |
// de cache |
this.protocoles = protocoles; |
} |
public ProtocoleServiceResultat(JSONValue retourJson) { |
protocoles = new ArrayList<Protocole>(); |
JSONObject tableauProto = retourJson.isObject().get("resultats").isObject(); |
if(tableauProto != null) { |
java.util.Iterator<String> it = tableauProto.keySet().iterator(); |
while (it.hasNext()) { |
JSONObject protocoleJSON = tableauProto.get(it.next()).isObject(); |
Protocole protocole = new Protocole(); |
String idProtocole = UtilitairesServiceResultat.getValeurOuVide(protocoleJSON, "protocole.id"); |
protocole.setId(Integer.parseInt(idProtocole)); |
protocole.setNom(UtilitairesServiceResultat.getValeurOuVide(protocoleJSON, "protocole.intitule")); |
protocole.setDescription(UtilitairesServiceResultat.getValeurOuVide(protocoleJSON, "protocole.descriptif")); |
protocoles.add(protocole); |
} |
} |
} |
public List<Protocole> getProtocoles() { |
return protocoles; |
} |
/trunk/src/org/tela_botanica/del/client/modeles/ImageServiceResultat.java |
---|
1,21 → 1,7 |
package org.tela_botanica.del.client.modeles; |
import java.util.ArrayList; |
import java.util.Date; |
import java.util.HashMap; |
import java.util.List; |
import java.util.Map; |
import org.tela_botanica.del.client.utils.UtilitairesServiceResultat; |
import com.google.gwt.core.client.GWT; |
import com.google.gwt.dev.js.rhino.ObjToIntMap.Iterator; |
import com.google.gwt.i18n.client.DateTimeFormat; |
import com.google.gwt.json.client.JSONArray; |
import com.google.gwt.json.client.JSONObject; |
import com.google.gwt.json.client.JSONValue; |
import com.google.gwt.user.client.Window; |
public class ImageServiceResultat { |
private List<Image> images; |
22,52 → 8,6 |
private int nbTotalImagesPourLaRecherche; |
public ImageServiceResultat(JSONValue retourJson) { |
try { |
images = new ArrayList<Image>(); |
// TODO ajouter vérifications plus précises |
if(retourJson.isObject().get("entete") != null) { |
double total = retourJson.isObject().get("entete").isObject().get("total").isNumber().doubleValue(); |
nbTotalImagesPourLaRecherche = (int) total; |
JSONObject tableauImg = retourJson.isObject().get("resultats").isObject(); |
java.util.Iterator<String> it = tableauImg.keySet().iterator(); |
while (it.hasNext()) { |
JSONObject imageJson = tableauImg.get(it.next()).isObject(); |
Image image = parserRetourImage(imageJson); |
images.add(image); |
} |
} else { |
JSONArray tableauImg = retourJson.isObject().get("images").isArray(); |
nbTotalImagesPourLaRecherche = (int) tableauImg.size(); |
for (int i = 0; i < nbTotalImagesPourLaRecherche; i++) { |
JSONObject imageJson = tableauImg.get(i).isObject(); |
Image image = parserRetourImage(imageJson); |
images.add(image); |
} |
} |
} catch (Exception e) { |
Window.alert(e.getMessage()); |
} |
} |
public Image parserRetourImage(JSONObject imageJson) { |
Image image = UtilitairesServiceResultat.parserImageJSON(imageJson); |
if (imageJson.get("observation") != null && imageJson.get("observation").isObject() != null) { |
JSONObject observationJson = imageJson.get("observation").isObject(); |
image.setObservation(UtilitairesServiceResultat.parserObservationEtCreerPropositionDetermination(observationJson)); |
} |
if (imageJson.get("protocoles_votes") != null && imageJson.get("protocoles_votes").isObject() != null) { |
JSONObject votes = imageJson.get("protocoles_votes").isObject(); |
image.setVoteProtocoles(UtilitairesServiceResultat.parserVotesProtocoles(votes)); |
} |
return image; |
} |
public List<Image> getImages() { |
return images; |
} |