Subversion Repositories eFlore/Applications.del

Rev

Details | Last modification | View Log | RSS feed

Rev Author Line No. Line
2211 arthur 1
package org.tela_botanica.del.client.navigation.evenement;
2
 
3
import org.tela_botanica.del.client.cache.CacheClient;
4
import org.tela_botanica.del.client.gestionhistorique.ConstantesNavigation;
5
import org.tela_botanica.del.client.modeles.Observation;
6
import org.tela_botanica.del.client.navigation.evenement.comparaisoneflore.EvenementComparaisonEflore;
7
import org.tela_botanica.del.client.navigation.evenement.comparaisoneflore.GestionnaireEvenementComparaisonEflore;
8
import org.tela_botanica.del.client.navigation.evenement.detailsimage.EvenementRechercheImage;
9
import org.tela_botanica.del.client.navigation.evenement.detailsimage.GestionnaireEvenementRechercheImage;
10
import org.tela_botanica.del.client.navigation.evenement.rechercheobservation.EvenementRechercheObservation;
11
import org.tela_botanica.del.client.navigation.evenement.rechercheobservation.GestionnaireEvenementRechercheObservation;
12
import org.tela_botanica.del.client.navigation.evenement.validationobservation.EvenementValidation;
13
import org.tela_botanica.del.client.navigation.evenement.validationobservation.GestionnaireEvenementValidation;
14
import org.tela_botanica.del.client.navigation.evenement.validationobservationpictoflora.EvenementValidationPictoflora;
15
import org.tela_botanica.del.client.navigation.evenement.validationobservationpictoflora.GestionnaireEvenementValidationPictoflora;
16
 
17
import com.google.gwt.event.shared.HandlerManager;
18
import com.google.gwt.user.client.History;
19
 
20
public class BusEvenementiel extends HandlerManager {
21
 
22
	private static BusEvenementiel instance;
23
	private CacheClient cache;
24
 
25
	private BusEvenementiel() {
26
		super(null);
27
		instance = this;
28
		creerHandler();
29
		this.cache = CacheClient.getInstance();
30
	}
31
 
32
	public static BusEvenementiel getInstance() {
33
		if (instance == null) {
34
			instance = new BusEvenementiel();
35
		}
36
		return instance;
37
	}
38
 
39
	private void creerHandler() {
40
		addHandler(EvenementValidation.TYPE, new GestionnaireEvenementValidation() {
41
			@Override
42
			public void onValidationObservation(EvenementValidation event) {
43
				doValidationObservation(event.getObservation());
44
			}
45
		});
46
 
47
		addHandler(EvenementValidationPictoflora.TYPE, new GestionnaireEvenementValidationPictoflora() {
48
			@Override
49
			public void onValidationObservation(EvenementValidationPictoflora event) {
50
				doValidationObservationPictoflora(event.getObservation());
51
			}
52
		});
53
 
54
		addHandler(EvenementComparaisonEflore.TYPE, new GestionnaireEvenementComparaisonEflore() {
55
			@Override
56
			public void onComparaisonEflore(EvenementComparaisonEflore event) {
57
				doComparaisonAvecEflore(event.getTaxonDemande());
58
			}
59
		});
60
 
61
		addHandler(EvenementRechercheImage.TYPE, new GestionnaireEvenementRechercheImage() {
62
			@Override
63
			public void onRechercheImage(EvenementRechercheImage event) {
64
				History.newItem("", true);
65
				cache.setPageCourante("");
66
			}
67
		});
68
 
69
		addHandler(EvenementRechercheObservation.TYPE, new GestionnaireEvenementRechercheObservation() {
70
			@Override
71
			public void onRechercheObservation(EvenementRechercheObservation event) {
72
				History.newItem("", true);
73
				cache.setPageCourante("");
74
			}
75
		});
76
 
77
	}
78
 
79
	private void doValidationObservation(Observation observation) {
80
		CacheClient.getInstance().setObservationCourante(observation);
81
		History.newItem(ConstantesNavigation.PAGE_DETAIL_OBS + "~" + observation.getId(), true);
82
	}
83
 
84
	private void doValidationObservationPictoflora(Observation observation) {
85
		CacheClient.getInstance().setObservationCourante(observation);
86
		History.newItem(ConstantesNavigation.PAGE_DETAIL_IMG + "~" + observation.getId(), true);
87
	}
88
 
89
	private void doComparaisonAvecEflore(String taxon) {
90
		History.newItem(ConstantesNavigation.PAGE_COMPARAISON_EFLORE, true);
91
	}
92
}