Subversion Repositories eFlore/Applications.del

Compare Revisions

Ignore whitespace Rev 209 → Rev 210

/trunk/src/org/tela_botanica/del/client/navigation/evenement/BusEvenementiel.java
New file
0,0 → 1,97
package org.tela_botanica.del.client.navigation.evenement;
 
import java.util.List;
 
import org.tela_botanica.del.client.cache.CacheClient;
import org.tela_botanica.del.client.gestionhistorique.ConstantesNavigation;
import org.tela_botanica.del.client.modeles.Image;
import org.tela_botanica.del.client.modeles.Protocole;
import org.tela_botanica.del.client.navigation.evenement.changementprotocole.EvenementChangementProtocole;
import org.tela_botanica.del.client.navigation.evenement.changementprotocole.GestionnaireEvenementChangementProtocole;
import org.tela_botanica.del.client.navigation.evenement.comparaisoneflore.EvenementComparaisonEflore;
import org.tela_botanica.del.client.navigation.evenement.comparaisoneflore.GestionnaireEvenementComparaisonEflore;
import org.tela_botanica.del.client.navigation.evenement.rechercheimage.EvenementRechercheImage;
import org.tela_botanica.del.client.navigation.evenement.rechercheimage.GestionnaireEvenementRechercheImage;
import org.tela_botanica.del.client.navigation.evenement.validationobservation.EvenementValidation;
import org.tela_botanica.del.client.navigation.evenement.validationobservation.GestionnaireEvenementValidation;
 
import com.google.gwt.event.shared.HandlerManager;
import com.google.gwt.user.client.History;
 
public class BusEvenementiel extends HandlerManager {
 
private static BusEvenementiel instance;
 
private BusEvenementiel() {
super(null);
instance = this;
createHandlers();
}
 
public static BusEvenementiel getInstance() {
if (instance == null) {
instance = new BusEvenementiel();
}
return instance;
}
 
private void createHandlers() {
addHandler(EvenementValidation.TYPE, new GestionnaireEvenementValidation() {
 
@Override
public void onValidationImage(EvenementValidation event) {
doValidationImage(event.getImage());
}
});
 
addHandler(EvenementComparaisonEflore.TYPE, new GestionnaireEvenementComparaisonEflore() {
 
@Override
public void onComparaisonEflore(EvenementComparaisonEflore event) {
doComparaisonAvecEflore(event.getTaxonDemande());
}
});
 
addHandler(EvenementRechercheImage.TYPE, new GestionnaireEvenementRechercheImage() {
 
@Override
public void onRechercheImage(EvenementRechercheImage event) {
doRechercheImage(event.getImages());
}
});
 
addHandler(EvenementChangementProtocole.TYPE, new GestionnaireEvenementChangementProtocole() {
 
@Override
public void onChangementProtocole(EvenementChangementProtocole event) {
doChangementProtocole(event.getProtocole());
}
});
}
 
private void doValidationImage(Image image) {
CacheClient.getInstance().setCurrentObservation(image.getObservation());
CacheClient.getInstance().setImageCourante(image);
History.newItem(ConstantesNavigation.PAGE_VALIDATION, true);
History.fireCurrentHistoryState();
}
 
private void doComparaisonAvecEflore(String taxon) {
CacheClient.getInstance().setTaxonPourRechercheEflore(taxon);
History.newItem(ConstantesNavigation.PAGE_COMPARAISON_EFLORE, true);
History.fireCurrentHistoryState();
}
 
private void doRechercheImage(List<Image> images) {
CacheClient.getInstance().setImages(images);
History.newItem(ConstantesNavigation.PAGE_RESULTAT_RECHERCHE_IMAGES, true);
History.fireCurrentHistoryState();
}
 
private void doChangementProtocole(Protocole protocole) {
CacheClient.getInstance().setProtocoleCourant(protocole);
History.newItem(ConstantesNavigation.PAGE_RESULTAT_RECHERCHE_IMAGES, true);
History.fireCurrentHistoryState();
}
 
}