Subversion Repositories eFlore/Applications.del

Rev

Rev 1162 | Rev 1860 | Go to most recent revision | Only display areas with differences | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 1162 Rev 1496
1
package org.tela_botanica.del.client.services.rest;
1
package org.tela_botanica.del.client.services.rest;
2
 
2
 
3
import org.tela_botanica.del.client.cache.CacheClient;
3
import org.tela_botanica.del.client.cache.CacheClient;
4
import org.tela_botanica.del.client.config.Config;
4
import org.tela_botanica.del.client.config.Config;
5
import org.tela_botanica.del.client.services.rest.async.AjoutMotsClesImageCallback;
5
import org.tela_botanica.del.client.services.rest.async.AjoutMotsClesImageCallback;
6
import org.tela_botanica.del.client.services.rest.async.ListeMotsClesImageCallBack;
6
import org.tela_botanica.del.client.services.rest.async.ListeMotsClesImageCallBack;
7
import org.tela_botanica.del.client.services.rest.async.PHPCallback.ModeRequete;
7
import org.tela_botanica.del.client.services.rest.async.PHPCallback.ModeRequete;
8
import org.tela_botanica.del.client.services.rest.async.SuppressionMotCleImageCallback;
8
import org.tela_botanica.del.client.services.rest.async.SuppressionMotCleImageCallback;
9
 
9
 
10
import com.google.gwt.http.client.RequestBuilder;
10
import org.tela_botanica.del.client.services.RequestBuilderWithCredentials;
11
import com.google.gwt.http.client.URL;
11
import com.google.gwt.http.client.URL;
12
 
12
 
13
public class MotsClesServiceConcret implements MotsClesService {
13
public class MotsClesServiceConcret implements MotsClesService {
14
 
14
 
15
	private String baseUrl;
15
	private String baseUrl;
16
	
16
	
17
	public MotsClesServiceConcret() {
17
	public MotsClesServiceConcret() {
18
		Config config = new Config();
18
		Config config = new Config();
19
		this.baseUrl = config.getServiceBaseUrl();
19
		this.baseUrl = config.getServiceBaseUrl();
20
	}
20
	}
21
	
21
	
22
	public MotsClesServiceConcret(Config config) {
22
	public MotsClesServiceConcret(Config config) {
23
		this.baseUrl = config.getServiceBaseUrl();
23
		this.baseUrl = config.getServiceBaseUrl();
24
	}
24
	}
25
	
25
	
26
	@Override
26
	@Override
27
	public void getMotsClesImage(String idImage,
27
	public void getMotsClesImage(String idImage,
28
			ListeMotsClesImageCallBack callback) {
28
			ListeMotsClesImageCallBack callback) {
29
		RequestBuilder rb = new RequestBuilder(RequestBuilder.GET, baseUrl + "mots-cles" + assemblerChaineRequete(idImage));
29
		RequestBuilderWithCredentials rb = new RequestBuilderWithCredentials(RequestBuilderWithCredentials.GET, baseUrl + "mots-cles" + assemblerChaineRequete(idImage));
30
		callback.setMode(ModeRequete.LECTURE);
30
		callback.setMode(ModeRequete.LECTURE);
31
		try {
31
		try {
32
			rb.sendRequest(null, callback);
32
			rb.sendRequest(null, callback);
33
		} catch (Exception e) {
33
		} catch (Exception e) {
34
			// TODO: handle exception
34
			// TODO: handle exception
35
		}
35
		}
36
	}
36
	}
37
	
37
	
38
	private String assemblerChaineRequete(String idImage) {
38
	private String assemblerChaineRequete(String idImage) {
39
		String chaineRequete = "?masque.image="+idImage;
39
		String chaineRequete = "?masque.image="+idImage;
40
		return chaineRequete;
40
		return chaineRequete;
41
	}
41
	}
42
 
42
 
43
	@Override
43
	@Override
44
	public void ajouterMotCleImage(String idImage, String motCle,
44
	public void ajouterMotCleImage(String idImage, String motCle,
45
			AjoutMotsClesImageCallback callback) {
45
			AjoutMotsClesImageCallback callback) {
46
		String urlService = baseUrl+"mots-cles/";
46
		String urlService = baseUrl+"mots-cles/";
47
		RequestBuilder rb = new RequestBuilder(RequestBuilder.PUT, urlService);
47
		RequestBuilderWithCredentials rb = new RequestBuilderWithCredentials(RequestBuilderWithCredentials.PUT, urlService);
48
		
48
		
49
		callback.setMode(ModeRequete.AJOUT);
49
		callback.setMode(ModeRequete.AJOUT);
50
		String chainePost = assemblerChaineRequeteAjout(idImage, motCle);
50
		String chainePost = assemblerChaineRequeteAjout(idImage, motCle);
51
		try {
51
		try {
52
			rb.sendRequest(chainePost, callback);
52
			rb.sendRequest(chainePost, callback);
53
		} catch (Exception e) {
53
		} catch (Exception e) {
54
			//TODO: quoi faire si la requete est mal formée coté client avant d'être envoyée ?
54
			//TODO: quoi faire si la requete est mal formée coté client avant d'être envoyée ?
55
		}
55
		}
56
 
56
 
57
	}
57
	}
58
 
58
 
59
	private String assemblerChaineRequeteAjout(String idImage, String motCle) {
59
	private String assemblerChaineRequeteAjout(String idImage, String motCle) {
60
		return "image="+URL.encodeQueryString(idImage)+
60
		return "image="+URL.encodeQueryString(idImage)+
61
			   "&mot_cle="+URL.encodeQueryString(motCle)+
61
			   "&mot_cle="+URL.encodeQueryString(motCle)+
62
			   "&"+URL.encodeQueryString("auteur.id")+"="+URL.encodeQueryString(CacheClient.getInstance().getUtilisateur().getId());
62
			   "&"+URL.encodeQueryString("auteur.id")+"="+URL.encodeQueryString(CacheClient.getInstance().getUtilisateur().getId());
63
	}
63
	}
64
 
64
 
65
	@Override
65
	@Override
66
	public void supprimerMotCleImage(String idMotCle, SuppressionMotCleImageCallback callback) {
66
	public void supprimerMotCleImage(String idMotCle, SuppressionMotCleImageCallback callback) {
67
		String urlService = baseUrl+"mots-cles/"+idMotCle;
67
		String urlService = baseUrl+"mots-cles/"+idMotCle;
68
		RequestBuilder rb = new RequestBuilder(RequestBuilder.DELETE, urlService);
68
		RequestBuilderWithCredentials rb = new RequestBuilderWithCredentials(RequestBuilderWithCredentials.DELETE, urlService);
69
		
69
		
70
		callback.setMode(ModeRequete.SUPPRESSION);
70
		callback.setMode(ModeRequete.SUPPRESSION);
71
		try {
71
		try {
72
			rb.sendRequest(null, callback);
72
			rb.sendRequest(null, callback);
73
		} catch (Exception e) {
73
		} catch (Exception e) {
74
			//TODO: quoi faire si la requete est mal formée coté client avant d'être envoyée ?
74
			//TODO: quoi faire si la requete est mal formée coté client avant d'être envoyée ?
75
		}
75
		}
76
	}
76
	}
77
}
77
}