Subversion Repositories eFlore/Applications.coel

Rev

Rev 1802 | Go to most recent revision | Blame | Compare with Previous | Last modification | View Log | RSS feed

package org.tela_botanica.client.configuration;

import java.util.LinkedHashMap;

import com.google.gwt.i18n.client.Dictionary;

/**
 * Classe chargeant certains paramètres de configuration à partir d'un fichier
 * javascript (config.js)
 * 
 * @author Aurélien PERONNET
 * 
 */
public class Configuration {

        /**
         * Tableau associatif contenant les identifiants des listes 
         */
        private LinkedHashMap<String, Integer> listesId = new LinkedHashMap<String, Integer>();
        
        /**
         * Tableau associatif contenant les identifiants des urls externes 
         */
        private LinkedHashMap<String, String> urls = new LinkedHashMap<String, String>();

        /**
         * Constructeur sans argument
         */
        public Configuration() {
                // on utilise le dictionnaire d'internationalisation pour lire les variables du fichier javascript
                Dictionary configuration = Dictionary.getDictionary("configuration");
                listesId.put("stpr", Integer.valueOf(configuration.get("listeStpr")));
                listesId.put("stpu", Integer.valueOf(configuration.get("listeStpu")));
                listesId.put("statut", Integer.valueOf(configuration.get("listeStatut")));
                listesId.put("fonction", Integer.valueOf(configuration.get("listeFonction")));
                listesId.put("botaAcronyme", Integer.valueOf(configuration.get("listeAcronymeBota")));
                listesId.put("localStockage", Integer.valueOf(configuration.get("listeStockageLocal")));
                listesId.put("meubleStockage", Integer.valueOf(configuration.get("listeStockageMeuble")));
                listesId.put("parametreStockage", Integer.valueOf(configuration.get("listeStockageParametre")));
                listesId.put("autreCollection", Integer.valueOf(configuration.get("listeCollectionAutre")));
                listesId.put("opRestau", Integer.valueOf(configuration.get("listeRestaurationOperation")));
                listesId.put("onep", Integer.valueOf(configuration.get("listeONEP")));
                listesId.put("autreMateriel", Integer.valueOf(configuration.get("listeMaterielAutre")));
                listesId.put("poisonTraitement", Integer.valueOf(configuration.get("listeEmpoisonnement")));
                listesId.put("insecteTraitement", Integer.valueOf(configuration.get("listeDesinsectisation")));
                listesId.put("actionValorisation", Integer.valueOf(configuration.get("listeValorisationAction")));
                listesId.put("continentEtFr", Integer.valueOf(configuration.get("listeContinentEtFr")));
                listesId.put("typeRecherche", Integer.valueOf(configuration.get("listeRechercheType")));
                listesId.put("pays", Integer.valueOf(configuration.get("listePays")));
                listesId.put("typeCollectionNcd", Integer.valueOf(configuration.get("listeTypeCollectionNcd")));
                listesId.put("typeCollectionBota", Integer.valueOf(configuration.get("listeTypeCollectionBota")));
                listesId.put("typeDepot", Integer.valueOf(configuration.get("listeTypeDepot")));
                listesId.put("typeUniteRangement", Integer.valueOf(configuration.get("listeTypeUniteRangement")));
                listesId.put("etat", Integer.valueOf(configuration.get("listeEtat")));
                listesId.put("etatClassement", Integer.valueOf(configuration.get("listeEtatClassement")));
                listesId.put("typeUniteBase", Integer.valueOf(configuration.get("listeTypeUniteBase")));
                listesId.put("typePapier", Integer.valueOf(configuration.get("listeTypePapier")));
                listesId.put("methodeRangement", Integer.valueOf(configuration.get("listeMethodeRangement")));
                listesId.put("methodeFixation", Integer.valueOf(configuration.get("listeMethodeFixation")));
                listesId.put("methodeFixationSurSpecimen", Integer.valueOf(configuration.get("listeMethodeFixationSurSpecimen")));
                listesId.put("typeEcriture", Integer.valueOf(configuration.get("listeTypeEcriture")));
                listesId.put("onpi", Integer.valueOf(configuration.get("listeONPI")));
                listesId.put("specimenDegradation", Integer.valueOf(configuration.get("listeSpecimenDegradation")));
                listesId.put("supportDegradation", Integer.valueOf(configuration.get("listeSupportDegradation")));
                listesId.put("niveauDetermination", Integer.valueOf(configuration.get("listeNiveauDetermination")));
                listesId.put("natureVegetale", Integer.valueOf(configuration.get("listeNatureVegetale")));
                listesId.put("siecleNaturaliste", Integer.valueOf(configuration.get("listeSiecleNaturaliste")));
                listesId.put("dateDebut", Integer.valueOf(configuration.get("listeDateDebut")));
                listesId.put("dateFin", Integer.valueOf(configuration.get("listeDateFin")));
                listesId.put("onp", Integer.valueOf(configuration.get("listeONP")));
                listesId.put("niveauImportance", Integer.valueOf(configuration.get("listeNiveauImportance")));
                listesId.put("ea", Integer.valueOf(configuration.get("listeEA")));
                listesId.put("typeClassement", Integer.valueOf(configuration.get("listeTypeClassement")));
                listesId.put("relationPersonneCollection", Integer.valueOf(configuration.get("listeRelationPersonneCollection")));
                listesId.put("inventaireForme", Integer.valueOf(configuration.get("listeInventaireForme")));
                listesId.put("inventaireLogiciel", Integer.valueOf(configuration.get("listeInventaireLogiciel")));
                listesId.put("inventaireEtat", Integer.valueOf(configuration.get("listeInventaireEtat")));
                listesId.put("groupementPrincipe", Integer.valueOf(configuration.get("listeGroupementPrincipe")));
                listesId.put("realisationBut", Integer.valueOf(configuration.get("listeRealisationBut")));
                listesId.put("ion", Integer.valueOf(configuration.get("listeION")));
                listesId.put("typeCommentaireCollection", Integer.valueOf(configuration.get("listeTypeCommentaireCollection")));
                listesId.put("prefixe", Integer.valueOf(configuration.get("listePrefixes")));
                listesId.put("suffixes", Integer.valueOf(configuration.get("listeSuffixes")));
                listesId.put("sexe", Integer.valueOf(configuration.get("listeSexe")));
                listesId.put("tel", Integer.valueOf(configuration.get("listeTel")));
                listesId.put("dureesIndexation", Integer.valueOf(configuration.get("listeDureesIndexation")));
                listesId.put("frequencesIndexation", Integer.valueOf(configuration.get("listeFrequencesIndexation")));
                listesId.put("langues", Integer.valueOf(configuration.get("listeLangues")));
                listesId.put("nbElementsPage", Integer.valueOf(configuration.get("nbElementsPage")));
                listesId.put("relationPersonnePublication", Integer.valueOf(configuration.get("relationPersonnePublication")));
                urls.put("base", configuration.get("serviceBaseUrl"));
                urls.put("baseAuth", configuration.get("serviceAuthBaseUrl"));
                urls.put("cel", configuration.get("celUrl"));
                urls.put("remarques", configuration.get("remarquesUrl"));
                urls.put("bogue", configuration.get("bogueUrl"));
                urls.put("commentaire", configuration.get("commentaireUrl"));
                urls.put("consultationCollectionsLieesStructures", configuration.get("consultationCollectionsLieesStructuresUrl"));
                urls.put("consultationCollections", configuration.get("consultationCollectionsUrl"));
        }
        
        /**
         * Accesseur pour l'id d'une liste
         * 
         * @return l'identifiant de la liste ou null s'il n'est pas trouvé
         */
        public Integer getListeId(String code) {
                if (listesId.containsKey(code)) {
                        return listesId.get(code);
                }
                return null;
        }
        
        /**
         * Accesseur pour l'url de base du serveur jrest
         * 
         * @return une url de la forme http://emplacement_serveur/jrest
         */
        public String getServiceBaseUrl() {
                return getUrl("base");
        }
        
        /**
         * Accesseur pour l'url de base du service annuaire::auth
         */
        public String getAuthServiceBaseUrl() {
                return getUrl("baseAuth");
        }


        public String getUrl(String code) {
                if (urls.containsKey(code)) {
                        return urls.get(code);
                }
                return null;
        }

}