WangHan
2024-09-12 d5855a4926926698b740bc6c7ba489de47adb68b
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
package tech.powerjob.worker.common.constants;
 
import com.google.common.collect.Sets;
import lombok.AllArgsConstructor;
import lombok.Getter;
 
import java.util.Set;
 
/**
 * 任务状态,task_info 表中 status 字段的枚举值
 *
 * @author tjq
 * @since 2020/3/17
 */
@Getter
@AllArgsConstructor
public enum TaskStatus {
 
    WAITING_DISPATCH(1, "等待调度器调度", "dispatching"),
    DISPATCH_SUCCESS_WORKER_UNCHECK(2, "调度成功(但不保证worker收到)", "unreceived"),
    WORKER_RECEIVED(3, "worker接收成功,但未开始执行", "received"),
    WORKER_PROCESSING(4, "worker正在执行", "running"),
    WORKER_PROCESS_FAILED(5, "worker执行失败", "failed"),
    WORKER_PROCESS_SUCCESS(6, "worker执行成功", "succeed");
 
    public static final Set<Integer> FINISHED_STATUS = Sets.newHashSet(WORKER_PROCESS_FAILED.value, WORKER_PROCESS_SUCCESS.value);
 
    private final int value;
    private final String des;
    private final String simplyDesc;
 
    public static TaskStatus of(int v) {
        for (TaskStatus taskStatus : values()) {
            if (v == taskStatus.value) {
                return taskStatus;
            }
        }
        throw new IllegalArgumentException("no TaskStatus match the value of " + v);
    }
}