Subversion Repositories eFlore/Applications.del

Compare Revisions

Ignore whitespace Rev 777 → Rev 778

/trunk/src/org/tela_botanica/del/client/modeles/ImageServiceResultat.java
25,35 → 25,49
public ImageServiceResultat(JSONValue retourJson) {
try {
images = new ArrayList<Image>();
// TODO ajouter vérifications plus précises
double total = retourJson.isObject().get("entete").isObject().get("total").isNumber().doubleValue();
nbTotalImagesPourLaRecherche = (int) total;
 
JSONObject tableauImg = retourJson.isObject().get("resultats").isObject();
images = new ArrayList<Image>();
java.util.Iterator<String> it = tableauImg.keySet().iterator();
while (it.hasNext()) {
JSONObject imageJson = tableauImg.get(it.next()).isObject();
Image image = UtilitairesServiceResultat.parserImageJSON(imageJson);
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);
}
if (imageJson.get("observation") != null && imageJson.get("observation").isObject() != null) {
JSONObject observationJson = imageJson.get("observation").isObject();
image.setObservation(UtilitairesServiceResultat.parserObservationEtCreerPropositionDetermination(observationJson));
} 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);
}
 
if (imageJson.get("votes") != null && imageJson.get("votes").isArray() != null) {
JSONArray votes = imageJson.get("votes").isArray();
image.setVoteProtocoles(UtilitairesServiceResultat.parserVotesProtocoles(votes));
}
 
images.add(image);
}
} catch (Exception e) {
 
}
}
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;
}