Subversion Repositories eFlore/Applications.del

Rev

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

Rev 1471 Rev 1496
1
package org.tela_botanica.del.client.services.rest;
1
package org.tela_botanica.del.client.services.rest;
2
 
2
 
3
import java.util.List;
3
import java.util.List;
4
 
4
 
5
import org.tela_botanica.del.client.config.Config;
5
import org.tela_botanica.del.client.config.Config;
6
import org.tela_botanica.del.client.modeles.VoteProtocole;
6
import org.tela_botanica.del.client.modeles.VoteProtocole;
7
import org.tela_botanica.del.client.services.rest.async.AjoutVoteProtocoleCallback;
7
import org.tela_botanica.del.client.services.rest.async.AjoutVoteProtocoleCallback;
8
import org.tela_botanica.del.client.services.rest.async.PHPCallback.ModeRequete;
8
import org.tela_botanica.del.client.services.rest.async.PHPCallback.ModeRequete;
9
import org.tela_botanica.del.client.services.rest.async.VoteProtocoleCallback;
9
import org.tela_botanica.del.client.services.rest.async.VoteProtocoleCallback;
10
 
10
 
11
import com.google.gwt.http.client.RequestBuilder;
11
import org.tela_botanica.del.client.services.RequestBuilderWithCredentials;
12
 
12
 
13
public class VoteProtocoleServiceConcret implements VoteProtocoleService {
13
public class VoteProtocoleServiceConcret implements VoteProtocoleService {
14
 
14
 
15
	private String baseUrl;
15
	private String baseUrl;
16
 
16
 
17
	public VoteProtocoleServiceConcret() {
17
	public VoteProtocoleServiceConcret() {
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 VoteProtocoleServiceConcret(Config config) {
22
	public VoteProtocoleServiceConcret(Config config) {
23
		this.baseUrl = config.getServiceBaseUrl();
23
		this.baseUrl = config.getServiceBaseUrl();
24
	}
24
	}
25
	
25
	
26
	@Override
26
	@Override
27
	public List<VoteProtocole> getVote(String idImage) {
27
	public List<VoteProtocole> getVote(String idImage) {
28
		// TODO Auto-generated method stub
28
		// TODO Auto-generated method stub
29
		return null;
29
		return null;
30
	}
30
	}
31
 
31
 
32
	@Override
32
	@Override
33
	public List<VoteProtocole> getVotePourImageEtProtocole(String idImage,
33
	public List<VoteProtocole> getVotePourImageEtProtocole(String idImage,
34
			String protocolName) {
34
			String protocolName) {
35
		// TODO Auto-generated method stub
35
		// TODO Auto-generated method stub
36
		return null;
36
		return null;
37
	}
37
	}
38
 
38
 
39
	@Override
39
	@Override
40
	public void ajouterVote(String idImage, VoteProtocole voteProtocole, AjoutVoteProtocoleCallback callback) {
40
	public void ajouterVote(String idImage, VoteProtocole voteProtocole, AjoutVoteProtocoleCallback callback) {
41
		RequestBuilder rb = new RequestBuilder(RequestBuilder.PUT, baseUrl+"images/"+idImage+"/votes/");
41
		RequestBuilderWithCredentials rb = new RequestBuilderWithCredentials(RequestBuilderWithCredentials.PUT, baseUrl+"images/"+idImage+"/votes/");
42
		callback.setMode(ModeRequete.AJOUT);
42
		callback.setMode(ModeRequete.AJOUT);
43
		String chainePost = assemblerChaineRequeteAjoutModif(voteProtocole);
43
		String chainePost = assemblerChaineRequeteAjoutModif(voteProtocole);
44
		try {
44
		try {
45
			rb.sendRequest(chainePost, callback);
45
			rb.sendRequest(chainePost, callback);
46
		} catch (Exception e) {
46
		} catch (Exception e) {
47
			//TODO: quoi faire si la requete est mal formée coté client avant d'être envoyée ?
47
			//TODO: quoi faire si la requete est mal formée coté client avant d'être envoyée ?
48
		}
48
		}
49
	}
49
	}
50
 
50
 
51
	private String assemblerChaineRequeteAjoutModif(VoteProtocole voteProtocole) {
51
	private String assemblerChaineRequeteAjoutModif(VoteProtocole voteProtocole) {
52
		String chaineRequete = "utilisateur="+voteProtocole.getContributeur()+"&"+
52
		String chaineRequete = "utilisateur="+voteProtocole.getContributeur()+"&"+
53
								"protocole="+voteProtocole.getIdProtocole()+"&"+
53
								"protocole="+voteProtocole.getIdProtocole()+"&"+
54
								"valeur="+voteProtocole.getVote();
54
								"valeur="+voteProtocole.getVote();
55
		return chaineRequete;
55
		return chaineRequete;
56
	}
56
	}
57
	
57
	
58
	@Override
58
	@Override
59
	public void modifierVote(String idImage, VoteProtocole voteProtocole, VoteProtocoleCallback callback) {
59
	public void modifierVote(String idImage, VoteProtocole voteProtocole, VoteProtocoleCallback callback) {
60
		RequestBuilder rb = new RequestBuilder(RequestBuilder.POST, baseUrl+"images/"+idImage+"/votes/");
60
		RequestBuilderWithCredentials rb = new RequestBuilderWithCredentials(RequestBuilderWithCredentials.POST, baseUrl+"images/"+idImage+"/votes/");
61
		callback.setMode(ModeRequete.MODIFICATION);
61
		callback.setMode(ModeRequete.MODIFICATION);
62
		String chainePost = assemblerChaineRequeteAjoutModif(voteProtocole);
62
		String chainePost = assemblerChaineRequeteAjoutModif(voteProtocole);
63
		try {
63
		try {
64
			rb.sendRequest(chainePost, callback);
64
			rb.sendRequest(chainePost, callback);
65
		} catch (Exception e) {
65
		} catch (Exception e) {
66
			//TODO: quoi faire si la requete est mal formée coté client avant d'être envoyée ?
66
			//TODO: quoi faire si la requete est mal formée coté client avant d'être envoyée ?
67
		}
67
		}
68
	}
68
	}
69
 
69
 
70
	@Override
70
	@Override
71
	public void supprimerVote(String idImage, VoteProtocole voteProtocole,
71
	public void supprimerVote(String idImage, VoteProtocole voteProtocole,
72
			VoteProtocoleCallback callback) {
72
			VoteProtocoleCallback callback) {
73
		RequestBuilder rb = new RequestBuilder(RequestBuilder.DELETE, baseUrl+"images/"+idImage+"/votes/"+voteProtocole.getId());
73
		RequestBuilderWithCredentials rb = new RequestBuilderWithCredentials(RequestBuilderWithCredentials.DELETE, baseUrl+"images/"+idImage+"/votes/"+voteProtocole.getId());
74
		callback.setMode(ModeRequete.SUPPRESSION);
74
		callback.setMode(ModeRequete.SUPPRESSION);
75
		try {
75
		try {
76
			rb.sendRequest(null, callback);
76
			rb.sendRequest(null, callback);
77
		} catch (Exception e) {
77
		} catch (Exception e) {
78
			//TODO: quoi faire si la requete est mal formée coté client avant d'être envoyée ?
78
			//TODO: quoi faire si la requete est mal formée coté client avant d'être envoyée ?
79
		}
79
		}
80
	}
80
	}
81
}
81
}