Subversion Repositories eFlore/Applications.del

Rev

Rev 901 | Rev 939 | Go to most recent revision | Details | Compare with Previous | 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();
909 aurelien 23
		public void afficherAucuneDonnees();
901 aurelien 24
	}
25
 
26
	private Vue vue;
27
 
28
	public DetailListeVotesDeterminationPresenteur(Vue vue) {
29
		this.vue = vue;
30
	}
31
 
32
	public void go(HasWidgets container) {
33
		container.add(vue.asWidget());
34
	}
35
 
36
	public void afficherVotes(final PropositionDetermination propositionDetermination) {
37
		vue.startChargement();
38
		VoteDeterminationServiceConcret voteService = new VoteDeterminationServiceConcret();
39
		voteService.consulterVotesPourPropositionDetermination(propositionDetermination, new VoteDeterminationCallback() {
40
			@Override
41
			public void surRetour(String messageRetour) {
42
 
43
				HashMap<String, VoteDetermination> votesComplets = UtilitairesServiceResultat.parserRetourListeVotesDetermination(messageRetour, propositionDetermination);
44
				if(votesComplets != null) {
45
					propositionDetermination.setVotesDeterminations(UtilitairesServiceResultat.parserRetourListeVotesDetermination(messageRetour, propositionDetermination));
46
					vue.afficherVotes(propositionDetermination);
47
					vue.stopChargement();
909 aurelien 48
				} else {
49
					vue.afficherAucuneDonnees();
50
					vue.stopChargement();
901 aurelien 51
				}
52
 
53
			}
54
 
55
			@Override
56
			public void surErreur(String messageErreur) {
57
				Window.alert(messageErreur);
58
				vue.stopChargement();
59
			}
60
		});
61
	}
62
 
63
	@Override
64
	protected void gererEvenements() {
65
		// TODO Auto-generated method stub
66
	}
67
}