Wim.Zhai
6 years ago
4 changed files with 84 additions and 23 deletions
@ -0,0 +1,71 @@
|
||||
package com.fr.design.i18n; |
||||
|
||||
import com.fr.general.GeneralContext; |
||||
import com.fr.general.log.MessageFormatter; |
||||
import com.fr.locale.DesignI18nProvider; |
||||
import com.fr.locale.InterProviderFactory; |
||||
import com.fr.locale.LocaleBundle; |
||||
import com.fr.locale.LocaleFiles; |
||||
import com.fr.locale.LocaleManager; |
||||
import com.fr.locale.impl.FineLocaleManager; |
||||
|
||||
import java.util.List; |
||||
import java.util.Locale; |
||||
|
||||
public class DesignI18nImpl implements DesignI18nProvider { |
||||
|
||||
private static DesignI18nImpl instance = new DesignI18nImpl(); |
||||
|
||||
public static DesignI18nImpl getInstance() { |
||||
return instance; |
||||
} |
||||
|
||||
private LocaleManager localeManager = FineLocaleManager.create(); |
||||
|
||||
private DesignI18nImpl() { |
||||
addResource("com/fr/design/i18n/main"); |
||||
InterProviderFactory.registerDesignI18nProvider(this); |
||||
} |
||||
|
||||
@Override |
||||
public String i18nText(String key) { |
||||
return localeManager.getLocalBundle(GeneralContext.getLocale()).getText(localeManager, key); |
||||
} |
||||
|
||||
@Override |
||||
public String i18nText(String key, Object... args) { |
||||
String format = InterProviderFactory.getProvider().getLocText(key); |
||||
MessageFormatter.FormattingTuple tuple = MessageFormatter.arrayFormat(format, args); |
||||
return localeManager.getLocalBundle(GeneralContext.getLocale()).getText(localeManager, tuple.getMessage()); |
||||
} |
||||
|
||||
@Override |
||||
public void addResource(String path) { |
||||
localeManager.addResource(path); |
||||
} |
||||
|
||||
@Override |
||||
public void removeResource(String path) { |
||||
localeManager.removeResource(path); |
||||
} |
||||
|
||||
@Override |
||||
public LocaleBundle getLocalBundle(Locale locale) { |
||||
return localeManager.getLocalBundle(locale); |
||||
} |
||||
|
||||
@Override |
||||
public List<LocaleFiles> getReverseList() { |
||||
return localeManager.getReverseList(); |
||||
} |
||||
|
||||
@Override |
||||
public List<LocaleFiles> getList() { |
||||
return localeManager.getList(); |
||||
} |
||||
|
||||
@Override |
||||
public void clear() { |
||||
localeManager.clear(); |
||||
} |
||||
} |
Loading…
Reference in new issue