use StringInterpolator
This commit is contained in:
@ -2,8 +2,7 @@ package com.imyeyu.lang.mapper;
|
||||
|
||||
import com.imyeyu.java.bean.Language;
|
||||
import com.imyeyu.java.bean.LanguageMapping;
|
||||
|
||||
import java.text.MessageFormat;
|
||||
import com.imyeyu.utils.StringInterpolator;
|
||||
|
||||
/**
|
||||
* @author 夜雨
|
||||
@ -11,7 +10,7 @@ import java.text.MessageFormat;
|
||||
*/
|
||||
public abstract class AbstractLanguageMapper implements LanguageMapping {
|
||||
|
||||
protected static final MessageFormat FORMAT = new MessageFormat("");
|
||||
protected static final StringInterpolator INTERPOLATOR = StringInterpolator.createDollarInterpolator();
|
||||
|
||||
protected final Language language;
|
||||
|
||||
|
||||
@ -4,7 +4,6 @@ import com.imyeyu.java.TimiJava;
|
||||
import com.imyeyu.java.bean.Language;
|
||||
import com.imyeyu.utils.Text;
|
||||
|
||||
import java.util.Arrays;
|
||||
import java.util.HashMap;
|
||||
import java.util.LinkedHashMap;
|
||||
import java.util.Map;
|
||||
@ -107,18 +106,12 @@ public class LanguageMap extends AbstractLanguageMapper {
|
||||
/**
|
||||
* 插入参数获取文本
|
||||
*
|
||||
* @param key 键
|
||||
* @param args 参数
|
||||
* @param key 键
|
||||
* @param argsMap 参数
|
||||
* @return 结果
|
||||
*/
|
||||
@Override
|
||||
public String textArgs(String key, Object... args) {
|
||||
String result = text(key);
|
||||
if (map.containsKey(result)) {
|
||||
// 没有映射值
|
||||
return result + Arrays.toString(args);
|
||||
}
|
||||
FORMAT.applyPattern(result);
|
||||
return FORMAT.format(args);
|
||||
public String textArgs(String key, Map<String, Object> argsMap) {
|
||||
return INTERPOLATOR.inject(text(key), argsMap);
|
||||
}
|
||||
}
|
||||
|
||||
@ -204,15 +204,15 @@ public class Multilingual implements LanguageMapping {
|
||||
/**
|
||||
* 从当前激活语言获取插入参数文本
|
||||
*
|
||||
* @param key 键
|
||||
* @param params 参数
|
||||
* @param key 键
|
||||
* @param argsMap 参数
|
||||
* @return 结果
|
||||
*/
|
||||
@Override
|
||||
public String textArgs(String key, Object... params) {
|
||||
public String textArgs(String key, Map<String, Object> argsMap) {
|
||||
if (multilingualMap.get(getActivated()) == null) {
|
||||
return key;
|
||||
}
|
||||
return multilingualMap.get(getActivated()).textArgs(key, params);
|
||||
return multilingualMap.get(getActivated()).textArgs(key, argsMap);
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user