Subversion Repositories eFlore/Applications.del

Rev

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