Subversion Repositories eFlore/Applications.del

Rev

Rev 335 | Rev 360 | Go to most recent revision | Details | Compare with Previous | Last modification | View Log | RSS feed

Rev Author Line No. Line
15 benjamin 1
package org.tela_botanica.del.client.navigation.evenement;
9 benjamin 2
 
14 benjamin 3
import org.tela_botanica.del.client.cache.CacheClient;
22 aurelien 4
import org.tela_botanica.del.client.gestionhistorique.ConstantesNavigation;
332 gduche 5
import org.tela_botanica.del.client.modeles.Observation;
178 benjamin 6
import org.tela_botanica.del.client.modeles.Protocole;
7
import org.tela_botanica.del.client.navigation.evenement.changementprotocole.EvenementChangementProtocole;
8
import org.tela_botanica.del.client.navigation.evenement.changementprotocole.GestionnaireEvenementChangementProtocole;
73 benjamin 9
import org.tela_botanica.del.client.navigation.evenement.comparaisoneflore.EvenementComparaisonEflore;
10
import org.tela_botanica.del.client.navigation.evenement.comparaisoneflore.GestionnaireEvenementComparaisonEflore;
359 benjamin 11
import org.tela_botanica.del.client.navigation.evenement.detailsimage.EvenementRechercheImage;
12
import org.tela_botanica.del.client.navigation.evenement.detailsimage.GestionnaireEvenementRechercheImage;
335 benjamin 13
import org.tela_botanica.del.client.navigation.evenement.rechercheobservation.EvenementRechercheObservation;
14
import org.tela_botanica.del.client.navigation.evenement.rechercheobservation.GestionnaireEvenementRechercheObservation;
15 benjamin 15
import org.tela_botanica.del.client.navigation.evenement.validationobservation.EvenementValidation;
16
import org.tela_botanica.del.client.navigation.evenement.validationobservation.GestionnaireEvenementValidation;
9 benjamin 17
 
18
import com.google.gwt.event.shared.HandlerManager;
19
import com.google.gwt.user.client.History;
20
 
14 benjamin 21
public class BusEvenementiel extends HandlerManager {
9 benjamin 22
 
14 benjamin 23
	private static BusEvenementiel instance;
9 benjamin 24
 
14 benjamin 25
	private BusEvenementiel() {
9 benjamin 26
		super(null);
27
		instance = this;
233 gduche 28
		creerHandler();
9 benjamin 29
	}
30
 
14 benjamin 31
	public static BusEvenementiel getInstance() {
9 benjamin 32
		if (instance == null) {
14 benjamin 33
			instance = new BusEvenementiel();
9 benjamin 34
		}
35
		return instance;
36
	}
37
 
233 gduche 38
	private void creerHandler() {
14 benjamin 39
		addHandler(EvenementValidation.TYPE, new GestionnaireEvenementValidation() {
9 benjamin 40
 
41
			@Override
332 gduche 42
			public void onValidationObservation(EvenementValidation event) {
43
				doValidationObservation(event.getObservation());
73 benjamin 44
			}
45
		});
9 benjamin 46
 
73 benjamin 47
		addHandler(EvenementComparaisonEflore.TYPE, new GestionnaireEvenementComparaisonEflore() {
48
 
49
			@Override
50
			public void onComparaisonEflore(EvenementComparaisonEflore event) {
51
				doComparaisonAvecEflore(event.getTaxonDemande());
9 benjamin 52
			}
53
		});
147 benjamin 54
 
55
		addHandler(EvenementRechercheImage.TYPE, new GestionnaireEvenementRechercheImage() {
359 benjamin 56
 
147 benjamin 57
			@Override
58
			public void onRechercheImage(EvenementRechercheImage event) {
311 gduche 59
				doRechercheImage();
147 benjamin 60
			}
61
		});
178 benjamin 62
 
335 benjamin 63
		addHandler(EvenementRechercheObservation.TYPE, new GestionnaireEvenementRechercheObservation() {
64
 
65
			@Override
66
			public void onRechercheObservation(EvenementRechercheObservation event) {
67
				doRechercheObservation();
68
 
69
			}
70
		});
71
 
178 benjamin 72
		addHandler(EvenementChangementProtocole.TYPE, new GestionnaireEvenementChangementProtocole() {
73
 
74
			@Override
75
			public void onChangementProtocole(EvenementChangementProtocole event) {
76
				doChangementProtocole(event.getProtocole());
77
			}
78
		});
9 benjamin 79
	}
80
 
332 gduche 81
	private void doValidationObservation(Observation observation) {
82
		CacheClient.getInstance().setObservationCourante(observation);
73 benjamin 83
		History.newItem(ConstantesNavigation.PAGE_VALIDATION, true);
9 benjamin 84
		History.fireCurrentHistoryState();
85
	}
86
 
73 benjamin 87
	private void doComparaisonAvecEflore(String taxon) {
88
		CacheClient.getInstance().setTaxonPourRechercheEflore(taxon);
89
		History.newItem(ConstantesNavigation.PAGE_COMPARAISON_EFLORE, true);
90
		History.fireCurrentHistoryState();
91
	}
92
 
311 gduche 93
	private void doRechercheImage() {
335 benjamin 94
		History.newItem(ConstantesNavigation.PAGE_RECHERCHE_IMAGES, true);
147 benjamin 95
		History.fireCurrentHistoryState();
96
	}
359 benjamin 97
 
335 benjamin 98
	private void doRechercheObservation() {
99
		History.newItem(ConstantesNavigation.PAGE_RECHERCHE_OBSERVATIONS, true);
100
		History.fireCurrentHistoryState();
101
	}
147 benjamin 102
 
178 benjamin 103
	private void doChangementProtocole(Protocole protocole) {
104
		CacheClient.getInstance().setProtocoleCourant(protocole);
335 benjamin 105
		History.newItem(ConstantesNavigation.PAGE_RECHERCHE_IMAGES, true);
178 benjamin 106
		History.fireCurrentHistoryState();
107
	}
108
 
9 benjamin 109
}