Subversion Repositories eFlore/Applications.del

Rev

Rev 909 | Go to most recent revision | Details | Last modification | View Log | RSS feed

Rev Author Line No. Line
901 aurelien 1
package org.tela_botanica.del.client.composants.votes.details;
2
 
3
import java.util.HashMap;
4
 
5
import org.tela_botanica.del.client.composants.presenteur.Presenteur;
6
import org.tela_botanica.del.client.modeles.PropositionDetermination;
7
import org.tela_botanica.del.client.modeles.VoteDetermination;
8
import org.tela_botanica.del.client.services.rest.VoteDeterminationServiceConcret;
9
import org.tela_botanica.del.client.services.rest.async.VoteDeterminationCallback;
10
import org.tela_botanica.del.client.utils.UtilitairesServiceResultat;
11
 
12
import com.google.gwt.user.client.Window;
13
import com.google.gwt.user.client.ui.HasWidgets;
14
import com.google.gwt.user.client.ui.IsWidget;
15
 
16
public class DetailListeVotesDeterminationPresenteur extends Presenteur {
17
 
18
	public interface Vue extends IsWidget {
19
		public void afficherVotes(PropositionDetermination propositionDetermination);
20
		void ajouterVote(VoteDetermination vote);
21
		void stopChargement();
22
		void startChargement();
23
	}
24
 
25
	private Vue vue;
26
 
27
	public DetailListeVotesDeterminationPresenteur(Vue vue) {
28
		this.vue = vue;
29
	}
30
 
31
	public void go(HasWidgets container) {
32
		container.add(vue.asWidget());
33
	}
34
 
35
	public void afficherVotes(final PropositionDetermination propositionDetermination) {
36
		vue.startChargement();
37
		VoteDeterminationServiceConcret voteService = new VoteDeterminationServiceConcret();
38
		voteService.consulterVotesPourPropositionDetermination(propositionDetermination, new VoteDeterminationCallback() {
39
			@Override
40
			public void surRetour(String messageRetour) {
41
 
42
				HashMap<String, VoteDetermination> votesComplets = UtilitairesServiceResultat.parserRetourListeVotesDetermination(messageRetour, propositionDetermination);
43
				if(votesComplets != null) {
44
					propositionDetermination.setVotesDeterminations(UtilitairesServiceResultat.parserRetourListeVotesDetermination(messageRetour, propositionDetermination));
45
					vue.afficherVotes(propositionDetermination);
46
					vue.stopChargement();
47
				}
48
 
49
			}
50
 
51
			@Override
52
			public void surErreur(String messageErreur) {
53
				Window.alert(messageErreur);
54
				vue.stopChargement();
55
			}
56
		});
57
	}
58
 
59
	@Override
60
	protected void gererEvenements() {
61
		// TODO Auto-generated method stub
62
	}
63
}