diff --git a/pom.xml b/pom.xml
index 2cf3f19..a83d391 100644
--- a/pom.xml
+++ b/pom.xml
@@ -6,7 +6,7 @@
com.imyeyu.java
timi-java
- 0.0.1
+ 0.0.2
jar
diff --git a/src/main/java/com/imyeyu/java/TimiJava.java b/src/main/java/com/imyeyu/java/TimiJava.java
index 233e87d..dc9b4ac 100644
--- a/src/main/java/com/imyeyu/java/TimiJava.java
+++ b/src/main/java/com/imyeyu/java/TimiJava.java
@@ -1,5 +1,7 @@
package com.imyeyu.java;
+import java.io.PrintWriter;
+import java.io.StringWriter;
import java.util.Collection;
import java.util.Map;
@@ -83,4 +85,11 @@ public interface TimiJava {
}
return null;
}
+
+ static String toString(Exception e) {
+ StringWriter sw = new StringWriter();
+ PrintWriter pw = new PrintWriter(sw);
+ e.printStackTrace(pw);
+ return sw.toString();
+ }
}
diff --git a/src/main/java/com/imyeyu/java/bean/LanguageMapping.java b/src/main/java/com/imyeyu/java/bean/LanguageMapping.java
index 7949abe..85d4a8e 100644
--- a/src/main/java/com/imyeyu/java/bean/LanguageMapping.java
+++ b/src/main/java/com/imyeyu/java/bean/LanguageMapping.java
@@ -1,5 +1,7 @@
package com.imyeyu.java.bean;
+import java.util.Map;
+
/**
* @author 夜雨
* @since 2024-04-03 11:27
@@ -14,5 +16,5 @@ public interface LanguageMapping {
String text(String key, String def);
- String textArgs(String key, Object... args);
+ String textArgs(String key, Map argsMap);
}
diff --git a/src/main/java/com/imyeyu/java/bean/LanguageMsgMapping.java b/src/main/java/com/imyeyu/java/bean/LanguageMsgMapping.java
index 64ba65f..635d956 100644
--- a/src/main/java/com/imyeyu/java/bean/LanguageMsgMapping.java
+++ b/src/main/java/com/imyeyu/java/bean/LanguageMsgMapping.java
@@ -1,5 +1,7 @@
package com.imyeyu.java.bean;
+import java.util.Map;
+
/**
* @author 夜雨
* @since 2024-04-01 10:28
@@ -10,11 +12,17 @@ public interface LanguageMsgMapping {
T msgKey(String msgKey);
+ T msgKey(String msgKey, Map msgArgs);
+
void setMsg(String msg);
String getMsg();
void setMsgKey(String msgKey);
+ void setMsgKey(String msgKey, Map msgArgs);
+
String getMsgKey();
+
+ Map getMsgArgs();
}
diff --git a/src/main/java/com/imyeyu/java/bean/timi/TimiError.java b/src/main/java/com/imyeyu/java/bean/timi/TimiError.java
index 85cfd4c..06a1bca 100644
--- a/src/main/java/com/imyeyu/java/bean/timi/TimiError.java
+++ b/src/main/java/com/imyeyu/java/bean/timi/TimiError.java
@@ -2,6 +2,8 @@ package com.imyeyu.java.bean.timi;
import com.imyeyu.java.bean.LanguageMsgMapping;
+import java.util.Map;
+
/**
* 致命错误
*
@@ -15,6 +17,8 @@ public class TimiError extends AssertionError implements LanguageMsgMapping msgArgs;
+
/** @param code 代码 */
public TimiError(TimiCode code) {
this.code = code;
@@ -55,6 +59,12 @@ public class TimiError extends AssertionError implements LanguageMsgMapping msgArgs) {
+ setMsgKey(msgKey, msgArgs);
+ return this;
+ }
+
@Override
public void setMsg(String msg) {
throw new UnsupportedOperationException("unsupported to change message");
@@ -74,4 +84,15 @@ public class TimiError extends AssertionError implements LanguageMsgMapping msgArgs) {
+ this.msgKey = msgKey;
+ this.msgArgs = msgArgs;
+ }
+
+ @Override
+ public Map getMsgArgs() {
+ return msgArgs;
+ }
}
diff --git a/src/main/java/com/imyeyu/java/bean/timi/TimiException.java b/src/main/java/com/imyeyu/java/bean/timi/TimiException.java
index d76ef6f..9393075 100644
--- a/src/main/java/com/imyeyu/java/bean/timi/TimiException.java
+++ b/src/main/java/com/imyeyu/java/bean/timi/TimiException.java
@@ -4,6 +4,8 @@ import com.imyeyu.java.TimiJava;
import com.imyeyu.java.bean.CallbackReturn;
import com.imyeyu.java.bean.LanguageMsgMapping;
+import java.util.Map;
+
/**
* 通用运行时异常,附加通用代码
*
@@ -17,6 +19,8 @@ public class TimiException extends RuntimeException implements LanguageMsgMappin
protected String msgKey;
+ protected Map msgArgs;
+
/** @param code 代码 */
public TimiException(TimiCode code) {
this.code = code;
@@ -68,6 +72,12 @@ public class TimiException extends RuntimeException implements LanguageMsgMappin
return this;
}
+ @Override
+ public TimiException msgKey(String msgKey, Map msgArgs) {
+ setMsgKey(msgKey, msgArgs);
+ return this;
+ }
+
@Override
public void setMsg(String msg) {
throw new UnsupportedOperationException("unsupported to change message");
@@ -83,11 +93,22 @@ public class TimiException extends RuntimeException implements LanguageMsgMappin
this.msgKey = msgKey;
}
+ @Override
+ public void setMsgKey(String msgKey, Map msgArgs) {
+ this.msgKey = msgKey;
+ this.msgArgs = msgArgs;
+ }
+
@Override
public String getMsgKey() {
return msgKey;
}
+ @Override
+ public Map getMsgArgs() {
+ return msgArgs;
+ }
+
public static T required(T t, String message) {
if (TimiJava.isEmpty(t)) {
throw new TimiException(TimiCode.ARG_MISS, message);
diff --git a/src/main/java/com/imyeyu/java/bean/timi/TimiResponse.java b/src/main/java/com/imyeyu/java/bean/timi/TimiResponse.java
index c3b1e3c..cca888f 100644
--- a/src/main/java/com/imyeyu/java/bean/timi/TimiResponse.java
+++ b/src/main/java/com/imyeyu/java/bean/timi/TimiResponse.java
@@ -3,6 +3,7 @@ package com.imyeyu.java.bean.timi;
import com.imyeyu.java.bean.LanguageMsgMapping;
import java.io.Serializable;
+import java.util.Map;
/**
* 通用接口返回对象
@@ -20,6 +21,8 @@ public class TimiResponse implements Serializable, LanguageMsgMapping msgArgs;
+
/** 数据体 */
protected T data;
@@ -156,6 +159,12 @@ public class TimiResponse implements Serializable, LanguageMsgMapping msgKey(String msgKey, Map msgArgs) {
+ setMsgKey(msgKey, msgArgs);
+ return this;
+ }
+
@Override
public String getMsgKey() {
return msgKey;
@@ -165,4 +174,15 @@ public class TimiResponse implements Serializable, LanguageMsgMapping msgArgs) {
+ this.msgKey = msgKey;
+ this.msgArgs = msgArgs;
+ }
+
+ @Override
+ public Map getMsgArgs() {
+ return msgArgs;
+ }
}