update Language.Enum

This commit is contained in:
Timi
2025-12-08 16:55:37 +08:00
parent eedc9ff7d9
commit 42dd04c2a5
9 changed files with 23 additions and 23 deletions

View File

@ -14,15 +14,15 @@ public abstract class AbstractLanguageMapper implements LanguageMapping {
protected final StringInterpolator INTERPOLATOR = StringInterpolator.createDollarInterpolator();
protected final Language language;
protected final Language.Enum language;
protected boolean isDebugging = false;
public AbstractLanguageMapper(Language language) {
public AbstractLanguageMapper(Language.Enum language) {
this.language = language;
}
public Language getLanguage() {
public Language.Enum getLanguage() {
return language;
}

View File

@ -18,7 +18,7 @@ public class FileLanguageMap extends PropertiesLanguageMap {
*
* @param language 所属语言
*/
public FileLanguageMap(Language language) {
public FileLanguageMap(Language.Enum language) {
super(language);
}

View File

@ -31,7 +31,7 @@ public class LanguageMap extends AbstractLanguageMapper {
*
* @param language 所属语言
*/
public LanguageMap(Language language) {
public LanguageMap(Language.Enum language) {
super(language);
this.map = new HashMap<>();
}

View File

@ -16,7 +16,7 @@ public class PropertiesLanguageMap extends LanguageMap {
*
* @param language 所属语言
*/
public PropertiesLanguageMap(Language language) {
public PropertiesLanguageMap(Language.Enum language) {
super(language);
}

View File

@ -18,7 +18,7 @@ public class ResourcesLanguageMap extends PropertiesLanguageMap {
*
* @param language 所属语言
*/
public ResourcesLanguageMap(Language language) {
public ResourcesLanguageMap(Language.Enum language) {
super(language);
}

View File

@ -12,7 +12,7 @@ import com.imyeyu.lang.mapper.LanguageMap;
public class FileMultilingual extends Multilingual {
public void addAll(String path) {
Language[] values = Language.values();
Language.Enum[] values = Language.Enum.values();
for (int i = 0; i < values.length; i++) {
FileLanguageMap mapper = new FileLanguageMap(values[i]);
mapper.load(path);

View File

@ -42,11 +42,11 @@ import java.util.Objects;
*/
public class Multilingual implements LanguageMapping {
protected final Map<Language, AbstractLanguageMapper> multilingualMap;
protected final List<CallbackArg<Language>> updateActiveListeners;
protected final Map<Language.Enum, AbstractLanguageMapper> multilingualMap;
protected final List<CallbackArg<Language.Enum>> updateActiveListeners;
/** 当前激活语言 */
protected Language activated;
protected Language.Enum activated;
protected boolean isDebugging = false;
@ -54,14 +54,14 @@ public class Multilingual implements LanguageMapping {
multilingualMap = new HashMap<>();
updateActiveListeners = new ArrayList<>();
activated = Ref.toType(Language.class, Locale.getDefault().toString());
activated = Ref.toType(Language.Enum.class, Locale.getDefault().toString());
if (activated == null) {
activated = Language.zh_CN;
activated = Language.Enum.zh_CN;
}
}
public void add(Language language, AbstractLanguageMapper mapper) {
public void add(Language.Enum language, AbstractLanguageMapper mapper) {
mapper.setDebugging(isDebugging);
multilingualMap.put(language, mapper);
}
@ -71,7 +71,7 @@ public class Multilingual implements LanguageMapping {
*
* @param callback 回调
*/
public void addUpdateActiveListeners(CallbackArg<Language> callback) {
public void addUpdateActiveListeners(CallbackArg<Language.Enum> callback) {
updateActiveListeners.add(callback);
}
@ -90,7 +90,7 @@ public class Multilingual implements LanguageMapping {
* @param languageName 激活语言
*/
public void setActivated(String languageName) {
setActivated(Ref.toType(Language.class, languageName));
setActivated(Ref.toType(Language.Enum.class, languageName));
}
/**
@ -98,7 +98,7 @@ public class Multilingual implements LanguageMapping {
*
* @param activated 激活语言
*/
public void setActivated(Language activated) {
public void setActivated(Language.Enum activated) {
Objects.requireNonNull(activated);
this.activated = activated;
@ -110,13 +110,13 @@ public class Multilingual implements LanguageMapping {
}
}
public Language getActivated() {
public Language.Enum getActivated() {
return activated;
}
public void setDebugging(boolean debugging) {
isDebugging = debugging;
for (Map.Entry<Language, AbstractLanguageMapper> item : multilingualMap.entrySet()) {
for (Map.Entry<Language.Enum, AbstractLanguageMapper> item : multilingualMap.entrySet()) {
item.getValue().setDebugging(true);
}
}
@ -128,7 +128,7 @@ public class Multilingual implements LanguageMapping {
* @return 映射表
*/
public AbstractLanguageMapper map(String lang) {
Language language = Ref.toType(Language.class, lang);
Language.Enum language = Ref.toType(Language.Enum.class, lang);
if (language == null) {
throw new RuntimeException("not support language: " + lang);
}
@ -141,7 +141,7 @@ public class Multilingual implements LanguageMapping {
* @param lang 语言
* @return 映射表
*/
public AbstractLanguageMapper map(Language lang) {
public AbstractLanguageMapper map(Language.Enum lang) {
return multilingualMap.get(lang);
}

View File

@ -12,7 +12,7 @@ import com.imyeyu.lang.mapper.ResourcesLanguageMap;
public class ResourcesMultilingual extends Multilingual {
public void addAll(String path) {
Language[] values = Language.values();
Language.Enum[] values = Language.Enum.values();
for (int i = 0; i < values.length; i++) {
ResourcesLanguageMap mapper = new ResourcesLanguageMap(values[i]);
mapper.load(path);

View File

@ -14,7 +14,7 @@ public class TestLang {
@Test
public void testArgs() {
ResourcesLanguageMap map = new ResourcesLanguageMap(Language.zh_CN);
ResourcesLanguageMap map = new ResourcesLanguageMap(Language.Enum.zh_CN);
map.load("zh_CN.lang");
System.out.println(map.textArgs("test", Map.of("msg", "hello world")));
}