From f574fd0ba5db2cd565cc9c01856267f5535cab6f Mon Sep 17 00:00:00 2001
From: carlyin <449036249@qq.com>
Date: Tue, 11 Jul 2023 15:35:46 +0800
Subject: [PATCH] =?UTF-8?q?=E6=8F=92=E4=BB=B6=E6=94=AF=E6=8C=81=E5=9B=BD?=
=?UTF-8?q?=E9=99=85=E5=8C=96?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
README.md | 97 +++++++++++++++
pom.xml | 2 +-
.../devops/atom/api/impl/CredentialApi.java | 2 +-
.../bk/devops/atom/pojo/AtomResult.java | 19 +++
.../bk/devops/atom/utils/I18nUtil.java | 19 +++
.../bk/devops/atom/utils/MessageUtil.java | 111 ++++++++++++++++++
.../plugin/api/impl/KubernetesBuildApi.kt | 10 +-
.../plugin/api/impl/SensitiveConfApi.kt | 2 +-
8 files changed, 254 insertions(+), 8 deletions(-)
create mode 100644 src/main/java/com/tencent/bk/devops/atom/utils/I18nUtil.java
create mode 100644 src/main/java/com/tencent/bk/devops/atom/utils/MessageUtil.java
diff --git a/README.md b/README.md
index c17fb87..c3926c4 100644
--- a/README.md
+++ b/README.md
@@ -40,6 +40,7 @@
| v1.1.6 | 优化日志打印 |
| v1.1.7 | 新增kubernetes构建资源相关api |
| v1.1.8 | 增加fileGateway |
+| v1.1.9 | 插件支持国际化,增加MessageUtil、I18nUtil工具类,AtomResult类增加setErrorInfo方法 |
[TOC]
@@ -131,6 +132,25 @@ java实体对象如下:
}
```
+ 对外提供的方法如下:
+
+```
+/**
+ * 设置错误信息
+ *
+ * @param status 执行结果状态
+ * @param errorCode 错误码
+ * @param errorType 错误类型
+ * @param params 替换错误描述信息占位符的参数数组
+ */
+public void setErrorInfo(Status status, Integer errorCode, ErrorType errorType, String[] params) {
+ this.status = status;
+ this.errorCode = errorCode;
+ this.errorType = errorType.getNum();
+ this.message =
+ MessageUtil.getMessageByLocale(errorCode.toString(), I18nUtil.getLanguage(), params);
+}
+```
##### 3、AtomContext.java (流水线插件上下文类)
@@ -444,7 +464,84 @@ for (i in 1..100000000) {
```
+##### 8、支持插件国际化的工具类MessageUtil.java
+
+ 包含的主要方法如下:
+
+```
+ /**
+ * 根据语言环境获取对应的描述信息
+ *
+ * @param messageCode 消息标识
+ * @param language 语言信息
+ * @return 描述信息
+ */
+ public static String getMessageByLocale(String messageCode, String language);
+
+ /**
+ * 根据语言环境获取对应的描述信息
+ *
+ * @param messageCode 消息标识
+ * @param language 语言信息
+ * @param defaultMessage 默认信息
+ * @return 描述信息
+ */
+ public static String getMessageByLocale(String messageCode, String language, String defaultMessage);
+
+ /**
+ * 根据语言环境获取对应的描述信息
+ *
+ * @param messageCode 消息标识
+ * @param language 语言信息
+ * @param params 替换描述信息占位符的参数数组
+ * @return 描述信息
+ */
+ public static String getMessageByLocale(String messageCode, String language, String[] params);
+
+ /**
+ * 根据语言环境获取对应的描述信息
+ *
+ * @param messageCode 消息标识
+ * @param language 语言信息
+ * @param params 替换描述信息占位符的参数数组
+ * @param defaultMessage 默认信息
+ * @return 描述信息
+ */
+ public static String getMessageByLocale(String messageCode, String language, String[] params, String defaultMessage);
+
+ /**
+ * 根据语言环境获取对应的描述信息
+ *
+ * @param messageCode 消息标识
+ * @param language 语言信息
+ * @param params 替换描述信息占位符的参数数组
+ * @param baseName 基础资源名称
+ * @param defaultMessage 默认信息
+ * @return 描述信息
+ */
+ public static String getMessageByLocale(
+ String messageCode,
+ String language,
+ String[] params,
+ String baseName,
+ String defaultMessage
+ );
+
+```
+##### 9、支持插件国际化的工具类I18nUtil.java
+
+ 包含的主要方法如下:
+
+```
+ /**
+ * 获取插件执行时语言信息
+ *
+ * @return 插件执行时语言信息
+ */
+ public static String getLanguage();
+
+```
## 二、SDK提供的服务介绍
diff --git a/pom.xml b/pom.xml
index 2eabc90..1fd8f68 100644
--- a/pom.xml
+++ b/pom.xml
@@ -6,7 +6,7 @@
com.tencent.devops.ci-plugins
java-plugin-sdk
- 1.1.8
+ 1.1.9
2018-2118
bk-ci pipeline plugins sdk for java
diff --git a/src/main/java/com/tencent/bk/devops/atom/api/impl/CredentialApi.java b/src/main/java/com/tencent/bk/devops/atom/api/impl/CredentialApi.java
index 46abfe2..15d9b2f 100644
--- a/src/main/java/com/tencent/bk/devops/atom/api/impl/CredentialApi.java
+++ b/src/main/java/com/tencent/bk/devops/atom/api/impl/CredentialApi.java
@@ -25,7 +25,7 @@ public Result