diff --git a/src/main/java/com/jhinno/sdk/openapi/api/job/JHJobApiExecution.java b/src/main/java/com/jhinno/sdk/openapi/api/job/JHJobApiExecution.java
index e590066..9068e3d 100644
--- a/src/main/java/com/jhinno/sdk/openapi/api/job/JHJobApiExecution.java
+++ b/src/main/java/com/jhinno/sdk/openapi/api/job/JHJobApiExecution.java
@@ -85,8 +85,9 @@ public class JHJobApiExecution extends JHApiExecution {
* @param status 作业状态(非必填)
* @param condition 自定义条件(非必填)
* @return 作业列表
+ * @see JobStatusEnum
*/
- public PageJobInfo getJobPage(String username, Integer page, Integer pageSize, String name, String status, Map 作业名、作业状态等为非必填自动,如果为空则没有添加该查询条件
- * status(作业状态)的取值如下:
- *
- * 可能的取值:
- *
+ * 可通过{@link JobStatusEnum#getJobStatus(String)} 获得{@link JobStatusEnum}
*
* @param username 用户名
* @param status 作业状态
@@ -176,8 +182,8 @@ public class JHJobApiExecution extends JHApiExecution {
* @param pageSize 分页大小
* @return 作业列表
*/
- public List
- *
- *
- *
- *
- * 数组作业(及arrayJob="true")时status的类型是一个map
+ * 可能的取值见:{@link JobStatusEnum}
+ * 如果作业是数组作业(即arrayJob="true")时status的类型是一个map类型
* 如:{"done":1,"run":12}
*
+ * 该枚举表示作业的状态的类型,其中status标识接口中的值,name标识对应的中文状态 + * + * @author yanlongqi + * @date 2024/2/6 17:03 + */ + +@Getter +@AllArgsConstructor +public enum JobStatusEnum { + + RUN("RUN", "运行"), + PEND("PEND", "等待"), + PSUSP("PSUSP", "等待中挂起"), + USUSP("USUSP", "用户挂起"), + SSUSP("SSUSP", "系统挂起"), + ZOMBI("ZOMBI", "僵尸"), + DONE("DONE", "完成"), + EXIT("EXIT", "退出"), + UNKNOWN_UNKWN("UNKNOWN#UNKWN", "状态不明"); + + + /** + * 状态标识 + */ + private final String status; + + /** + * 状态名称 + */ + private final String name; + + + /** + * 使用标号获得JobStatusEnum对象 + * + * @param status 作业状态 + * @return 作业状态 + * @throws ArgsException 参数异常 + */ + public static JobStatusEnum getJobStatus(String status) { + if (StringUtils.isBlank(status)) { + throw new ArgsException("作业状态不能为空!"); + } + for (JobStatusEnum value : values()) { + if (StringUtils.equals(status, value.getStatus())) { + return value; + } + } + throw new ArgsException(status + "类型不存在!"); + } + +} diff --git a/src/main/java/com/jhinno/sdk/openapi/api/job/JobsActionEnum.java b/src/main/java/com/jhinno/sdk/openapi/api/job/JobsActionEnum.java index ada179f..357222c 100644 --- a/src/main/java/com/jhinno/sdk/openapi/api/job/JobsActionEnum.java +++ b/src/main/java/com/jhinno/sdk/openapi/api/job/JobsActionEnum.java @@ -38,9 +38,12 @@ public enum JobsActionEnum { * * @param action 操作字符 * @return 作业操作类型 - * @exception ArgsException action的类型不存在的异常 + * @throws ArgsException action的类型不存在的异常 */ public static JobsActionEnum getJobAction(String action) { + if (StringUtils.isBlank(action)) { + throw new ArgsException("操作标识不能为空!"); + } for (JobsActionEnum value : values()) { if (StringUtils.equals(action, value.getAction())) { return value; diff --git a/src/test/java/com/jhinno/sdk/openapi/test/job/JobApiTest.java b/src/test/java/com/jhinno/sdk/openapi/test/job/JobApiTest.java index 4784d82..b4d9286 100644 --- a/src/test/java/com/jhinno/sdk/openapi/test/job/JobApiTest.java +++ b/src/test/java/com/jhinno/sdk/openapi/test/job/JobApiTest.java @@ -2,6 +2,7 @@ package com.jhinno.sdk.openapi.test.job; import com.jhinno.sdk.openapi.api.job.JHJobApiExecution; import com.jhinno.sdk.openapi.api.job.JobHistoryInfo; +import com.jhinno.sdk.openapi.api.job.JobStatusEnum; import com.jhinno.sdk.openapi.api.job.PageJobInfo; import com.jhinno.sdk.openapi.test.JHClientConfig; import org.junit.Test; @@ -47,7 +48,7 @@ public class JobApiTest { */ @Test public void testGetJobPage() { - PageJobInfo jhadmin = execution.getJobPage("jhadmin", 1, 5, null, null, null); + PageJobInfo jhadmin = execution.getJobPage("jhadmin", 1, 5, null, JobStatusEnum.DONE, null); System.out.println(jhadmin); } @@ -73,7 +74,7 @@ public class JobApiTest { */ @Test public void testGetJobsByStatus() { - System.out.println(execution.getJobsByStatus("jhadmin", "DONE", 1, 10)); + System.out.println(execution.getJobsByStatus("jhadmin", JobStatusEnum.DONE, 1, 10)); }