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; |
} |