richie
6 years ago
3 changed files with 75 additions and 21 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