/trunk/src/org/tela_botanica/del/client/services/rest/ObservationService.java |
---|
2,9 → 2,10 |
import org.tela_botanica.del.client.modeles.InformationsRecherche; |
import org.tela_botanica.del.client.modeles.ObservationServiceResultat; |
import org.tela_botanica.del.client.services.rest.async.ObservationsCallback; |
public interface ObservationService { |
public ObservationServiceResultat getObservations(InformationsRecherche informationsRecherche, int debut, int fin); |
public ObservationServiceResultat getObservations(InformationsRecherche informationsRecherche, int debut, int fin, ObservationsCallback callback); |
} |
/trunk/src/org/tela_botanica/del/client/services/rest/async/ObservationsCallback.java |
---|
New file |
0,0 → 1,35 |
package org.tela_botanica.del.client.services.rest.async; |
import org.tela_botanica.del.client.modeles.ObservationServiceResultat; |
import com.google.gwt.http.client.Request; |
import com.google.gwt.http.client.RequestCallback; |
import com.google.gwt.http.client.Response; |
import com.google.gwt.json.client.JSONParser; |
import com.google.gwt.user.client.Window; |
public abstract class ObservationsCallback implements RequestCallback { |
public ObservationsCallback() { |
} |
@Override |
public void onResponseReceived(Request request, Response response) { |
ObservationServiceResultat observationsRecues = convertirReponseVersListeObservation(response); |
surObservationsRecues(observationsRecues); |
} |
@Override |
public void onError(Request request, Throwable exception) { |
Window.alert(exception.getMessage()); |
} |
public abstract void surObservationsRecues(ObservationServiceResultat observationsRecues); |
private ObservationServiceResultat convertirReponseVersListeObservation(Response reponse) { |
ObservationServiceResultat resultat = new ObservationServiceResultat(JSONParser.parseStrict(reponse.getText())); |
return resultat; |
} |
} |
/trunk/src/org/tela_botanica/del/client/services/rest/ObservationServiceConcret.java |
---|
New file |
0,0 → 1,35 |
package org.tela_botanica.del.client.services.rest; |
import org.tela_botanica.del.client.modeles.InformationsRecherche; |
import org.tela_botanica.del.client.modeles.ObservationServiceResultat; |
import org.tela_botanica.del.client.services.rest.async.ObservationsCallback; |
import com.google.gwt.http.client.RequestBuilder; |
public class ObservationServiceConcret implements ObservationService { |
private String serverUrl = "../jrest/"; |
@Override |
public ObservationServiceResultat getObservations( |
InformationsRecherche infos, int debut, int fin, ObservationsCallback callback) { |
RequestBuilder rb = new RequestBuilder(RequestBuilder.GET, serverUrl+"Observations"+assemblerChaineRequete(infos, debut, fin)); |
try { |
rb.sendRequest(null, callback); |
} catch (Exception e) { |
// TODO: handle exception |
} |
return null; |
} |
private String assemblerChaineRequete(InformationsRecherche infos, int debut, int fin) { |
String chaineRequete = "?debut="+debut+"&limite="+(fin-debut); |
if(infos != null && infos.getTaxon() != null && !infos.getTaxon().trim().isEmpty()) { |
chaineRequete = "nom_taxon="+infos.getTaxon()+chaineRequete; |
} |
return chaineRequete; |
} |
} |