Rev 1120 | Blame | Compare with Previous | Last modification | View Log | RSS feed
package org.tela_botanica.del.client.composants.rss;import org.tela_botanica.del.client.composants.presenteur.Presenteur;import org.tela_botanica.del.client.config.Config;import org.tela_botanica.del.client.modeles.InformationsRecherche;import org.tela_botanica.del.client.modeles.Observation;import com.google.gwt.user.client.Window;import com.google.gwt.user.client.ui.HasWidgets;import com.google.gwt.user.client.ui.IsWidget;public class RssPresenteur extends Presenteur {// Définition de la vuepublic abstract interface Vue extends IsWidget {void setLien(String lien);void setLabelLien(String label);}// Variablesprivate Vue vue;private String lien = "";private Config config = new Config();//Constructeurpublic RssPresenteur(Vue vue) {this.vue = vue;}public RssPresenteur(Vue vue, InformationsRecherche recherche, String label) {this.vue = vue;vue.setLabelLien(label);genererLien(recherche);}public RssPresenteur(Vue vue, Observation observation, String label) {this.vue = vue;vue.setLabelLien(label);genererLien(observation);}public void genererLien(InformationsRecherche recherche) {this.lien = config.getUrl("rss") + recherche.versChaineRequete();gererEvenements();}public void genererLien(Observation observation) {String idObs = observation.getId();this.lien = config.getUrl("rss") + "&masque.observation=" + idObs;}@Overridepublic void go(HasWidgets composite) {composite.add(vue.asWidget());gererEvenements();}@Overrideprotected void gererEvenements() {vue.setLien(this.lien);}}