package gcom.util; import java.util.Locale; import org.apache.struts.util.PropertyMessageResources; /** *Classe criada para traduzir chaves do properties de internacionaliza��o *no seus valores correspondentes. * * @author Marlon Patrick * @since 14/10/2009 */ public class Internacionalizador { private static PropertyMessageResources properties; private static Locale locale; public static Locale getLocale() { return locale; } public static void setLocale(Locale locale) { Internacionalizador.locale = locale; } public static void setProperties(PropertyMessageResources properties) { Internacionalizador.properties = properties; } public static PropertyMessageResources getProperties() { return properties; } /** * Retorna a mensagem correspondente a chave passada como par�metro. * *@since 14/10/2009 *@author Marlon Patrick */ public static String getMensagem(String chaveMsg){ return properties.getMessage(locale,chaveMsg); } /** *Obtem a mensagem correspondente a chave do parametro e a usa como parametro *na mensagem principal. Retorna a mensagem principal. * *@since 14/10/2009 *@author Marlon Patrick */ public static String getMensagem(String chaveMsg,String chaveParametro){ return properties.getMessage(locale,chaveMsg,properties.getMessage(locale,chaveParametro)); } /** *Obtem as mensagens correspondentes a cada uma das chaves parametro e as usa como parametros *na mensagem principal. Retorna a mensagem principal. * *@since 14/10/2009 *@author Marlon Patrick */ public static String getMensagem(String chaveMsg,String... chavesParametros){ String[] msgParametros = new String[chavesParametros.length]; for (int i = 0; i < chavesParametros.length; i++) { msgParametros[i] = properties.getMessage(locale,chavesParametros[i]); } return properties.getMessage(locale,chaveMsg,msgParametros); } }