package com.gffny.ldrbrd.common.utils; /** * * @author John Gaffney (john@gffny.com) Feb 11, 2013 * */ public enum Locale { en_US("en_US", "English", "In English", "en-us"), es_ES("es_ES", "Español", "En Español", "es-es"); private String locale_symbol; private String locale_name; private String locale_link; private String locale_idolFormat; /** * * @param locale_symbol * @param locale_name * @param locale_link * @param locale_idolFormat */ Locale(String locale_symbol, String locale_name, String locale_link, String locale_idolFormat) { this.locale_symbol = locale_symbol; this.locale_name = locale_name; this.locale_link = locale_link; this.locale_idolFormat = locale_idolFormat; } /** * * @return */ public String getLocale_symbol() { return locale_symbol; } /** * * @return */ public String getLocale_name() { return locale_name; } /** * * @return */ public String getLocale_link() { return locale_link; } /** * * @return */ public String getLocale_idolFormat() { return locale_idolFormat; } /** * * @param symbol * @return */ public static Locale getLocale(String symbol) { if (StringUtils.isEmpty(symbol)) return null; for (Locale locale : Locale.values()) { if (StringUtils.isEquivalent(locale.getLocale_symbol(), symbol)) { return locale; } } return null; } /** * * @see java.lang.Enum#toString() */ @Override public String toString() { return this.name(); } /** * * @param locale * @return */ public static java.util.Locale getStandardLocale(Locale locale) { if (locale == Locale.en_US) { return new java.util.Locale("en", "US"); } else if (locale == Locale.es_ES) { return new java.util.Locale("es", "ES"); } return new java.util.Locale("en", "US"); } /** * * @return */ public boolean isDefault() { return this == Locale.en_US; } /** * * @return */ public boolean isNotDefault() { return !isDefault(); } /** * * @param cmsFormattedLocale * @return */ public static Locale getLocaleByCMSFormat(String cmsFormattedLocale) { if (StringUtils.isEmpty(cmsFormattedLocale)) return null; for (Locale locale : Locale.values()) { if (StringUtils.isEquivalent(locale.getLocale_idolFormat(), cmsFormattedLocale)) { return locale; } } return null; } }