New file |
0,0 → 1,72 |
package org.tela_botanica.del.client.services.rest; |
|
import java.util.HashMap; |
import java.util.Iterator; |
|
import org.tela_botanica.del.client.config.Config; |
import org.tela_botanica.del.client.modeles.Utilisateur; |
import org.tela_botanica.del.client.services.rest.async.ListePreferencesCallback; |
import org.tela_botanica.del.client.services.rest.async.ModificationPreferencesCallback; |
import org.tela_botanica.del.client.services.rest.async.PHPCallback.ModeRequete; |
|
import com.google.gwt.http.client.RequestBuilder; |
import com.google.gwt.user.client.Window; |
|
public class PreferencesServiceConcret implements PreferencesService { |
|
private String baseUrl; |
|
public PreferencesServiceConcret() { |
Config config = new Config(); |
this.baseUrl = config.getServiceBaseUrl(); |
} |
|
public PreferencesServiceConcret(Config config) { |
this.baseUrl = config.getServiceBaseUrl(); |
} |
|
@Override |
public void modifierPreferences(Utilisateur utilisateur, HashMap<String, String> preferences, ModificationPreferencesCallback callback) { |
String idUtilisateur = utilisateur.getId(); |
String urlService = baseUrl+"utilisateurs/"+idUtilisateur+"/preferences/"; |
RequestBuilder rb = new RequestBuilder(RequestBuilder.POST, urlService); |
|
callback.setMode(ModeRequete.MODIFICATION); |
String chainePost = assemblerRequeteModification(preferences); |
try { |
rb.sendRequest(chainePost, callback); |
} catch (Exception e) { |
//TODO: quoi faire si la requete est mal formée coté client avant d'être envoyée ? |
} |
} |
|
private String assemblerRequeteModification(HashMap<String, String> preferences) { |
Window.alert(""+preferences.size()); |
String chaine = ""; |
Iterator<String> it = preferences.keySet().iterator(); |
while (it.hasNext()) { |
String cle = it.next(); |
if(!chaine.equals("")) { |
chaine += "&"; |
} |
chaine += cle+"="+preferences.get(cle); |
} |
|
return chaine; |
} |
|
@Override |
public void chargerPreferences(Utilisateur utilisateur, |
ListePreferencesCallback callback) { |
String idUtilisateur = utilisateur.getId(); |
String urlService = baseUrl+"utilisateurs/"+idUtilisateur+"/preferences/"; |
RequestBuilder rb = new RequestBuilder(RequestBuilder.GET, urlService); |
|
callback.setMode(ModeRequete.LECTURE); |
try { |
rb.sendRequest(null, callback); |
} catch (Exception e) { |
//TODO: quoi faire si la requete est mal formée coté client avant d'être envoyée ? |
} |
} |
} |