Rev 1918 | Blame | Last modification | View Log | RSS feed
package org.tela_botanica.client.modeles.dao;import org.tela_botanica.client.interfaces.Rafraichissable;import org.tela_botanica.client.modeles.objets.Configuration;import org.tela_botanica.client.observation.ObservationModele;import com.google.gwt.core.client.Callback;import com.google.gwt.http.client.Request;import org.tela_botanica.client.util.RequestBuilderWithCredentials;import com.google.gwt.http.client.RequestCallback;import com.google.gwt.http.client.RequestException;import com.google.gwt.http.client.Response;import com.google.gwt.http.client.URL;import com.google.gwt.json.client.JSONArray;import com.google.gwt.json.client.JSONParser;import com.google.gwt.json.client.JSONString;import com.google.gwt.json.client.JSONValue;/*** DAO d'accès a une observation** @author aurelien**/public class ImageInformationRepartitionAsynchroneDAO {/*** Le modele associé au DAO*/private ObservationModele observationModele = null;public ImageInformationRepartitionAsynchroneDAO(ObservationModele obs) {observationModele = obs;}/*** Recherche Image repartition associee a un nom* @param r* @param identifiant* @param numeroNomenclaturalSaisiObservation*/public void obtenirURLImage(final Rafraichissable r, String referentielTaxo, String numeroNomenclaturalSaisiObservation) {String referentielDefaut = Configuration.getReferentielsDispos().get(0).getCode();referentielTaxo = (referentielTaxo != null && !referentielTaxo.isEmpty()) ? referentielTaxo : referentielDefaut;// on envoie le get asynchroneRequestBuilderWithCredentials rb = new RequestBuilderWithCredentials(RequestBuilderWithCredentials.GET,Configuration.getServiceBaseUrl()+"/NameMap/"+referentielTaxo+"/"+numeroNomenclaturalSaisiObservation) ;try {rb.sendRequest(null, new RequestCallback() {@Overridepublic void onError(Request request, Throwable exception) {// TODO Auto-generated method stub}@Overridepublic void onResponseReceived(Request request,Response response) {JSONValue responseValue = JSONParser.parse(response.getText());JSONArray reponse;String urlImage=null;if ((reponse = responseValue.isArray()) != null) {// Url ImageurlImage= ((JSONString)reponse.get(0)).stringValue();}else {urlImage="";}r.rafraichir(urlImage,true);}}) ;} catch (RequestException e) {// TODO Auto-generated catch blocke.printStackTrace();}}public static void taxonEstPresentDansZoneGeo(String referentielTaxo, String numeroNomenclaturalSaisiObservation, String pays, String zoneGeo, final Callback<String, String> callback) {String referentielDefaut = Configuration.getReferentielsDispos().get(0).getCode();referentielTaxo = (referentielTaxo != null && !referentielTaxo.isEmpty()) ? referentielTaxo : referentielDefaut;String url = Configuration.getServiceBaseUrl()+"/InventoryTaxonPresent/"+referentielTaxo+"/"+numeroNomenclaturalSaisiObservation+"?pays="+URL.encode(pays)+"&ce_zone_geo="+URL.encode(zoneGeo);RequestBuilderWithCredentials rb = new RequestBuilderWithCredentials(RequestBuilderWithCredentials.GET, url) ;try {rb.sendRequest(null, new RequestCallback() {@Overridepublic void onError(Request request, Throwable exception) {callback.onFailure(exception.getMessage());}@Overridepublic void onResponseReceived(Request request,Response response) {final JSONValue responseValue = JSONParser.parse(response.getText());if (responseValue.isString() != null) {//Window.alert(response.getText()+responseValue.isString().stringValue());callback.onSuccess(responseValue.isString().stringValue());} else {callback.onFailure(response.getText());}}}) ;} catch (RequestException e) {callback.onFailure(e.getMessage());}}}