T18n/src/main/java/cn/glycol/t18n/I18n.java

32 lines
688 B
Java

package cn.glycol.t18n;
public class I18n {
private static LanguageMap map;
public static void setLanguageMap(LanguageMap map) {
I18n.map = map;
}
public static String format(String key, Object...format) {
return tryFormat(getLanguageMapSafe().get(key), format);
}
public static boolean hasKey(String key) {
return getLanguageMapSafe().containsKey(key);
}
private static String tryFormat(String context, Object...format) {
try {
return String.format(context, format);
} catch (Exception e) {
return context;
}
}
private static LanguageMap getLanguageMapSafe() {
return map == null ? new LanguageMap() : map;
}
}