Mercurial > dive4elements > gnv-client
view gnv-artifacts/src/main/java/de/intevation/gnv/artifacts/ressource/RessourceFactory.java @ 188:693f7b676ade
Adding two further fis which are based on Mesh to the System.
Fis in Median.Mesh will be choosen using the sourceid issue49
gnv-artifacts/trunk@232 c6561f87-3c4e-4783-a992-168aeb5c3f6f
author | Tim Englich <tim.englich@intevation.de> |
---|---|
date | Fri, 16 Oct 2009 14:51:43 +0000 |
parents | 7fb9441dd8af |
children | 7b4e2f80cba2 |
line wrap: on
line source
/** * */ package de.intevation.gnv.artifacts.ressource; import java.util.MissingResourceException; import java.util.ResourceBundle; import org.apache.log4j.Logger; import de.intevation.artifacts.PreferredLocale; /** * @author Tim Englich <tim.englich@intevation.de> * */ public class RessourceFactory { /** * the logger, used to log exceptions and additonaly information */ private static Logger log = Logger.getLogger(RessourceFactory.class); /** * The singleton Instance of this Factory. */ private static RessourceFactory instance = null; private static String RESSOURCE_BASE_ID = "artifact.ressource.dir"; private static String ressourceName = "artifactMessages"; private static String DEFAULT_DIR = "lang"; private String ressourceDir = null; /** * Basic-Constructor of this Class */ private RessourceFactory() { super(); ressourceDir = System.getProperty(RESSOURCE_BASE_ID, DEFAULT_DIR); } /** * This Method provides an singleton Instance of this Class. * * @return an singleton Instance of this Class */ public static synchronized RessourceFactory getInstance() { if (instance == null) { instance = new RessourceFactory(); } return instance; } /** * Deliveres the translated Value for an Key to an given Language * * @param locale * The choosen locale * @param key * the key * @param defaultValue * the Value that should be returned. * @return the translated Value */ public String getRessource(PreferredLocale[] preferredLocales, String key, String defaultValue) { if (key == null || preferredLocales.length == 0) { return defaultValue; } try { ResourceBundle rb = ResourceBundle.getBundle(ressourceDir + "/" + ressourceName, preferredLocales[0].getLocale()); return rb.getString(key); } catch (MissingResourceException mre) { log.warn(mre.getLocalizedMessage()); return defaultValue; } } }