1. 通過RestTemplate 的工具類進行封裝然后調用 get 和post
通過RestTemplate 進行調用DolphinScheduler 的接口 post 方式實現(xiàn)
文檔接口 -- 流程實例的執(zhí)行

ds任務執(zhí)行api.png
通過postmain 調用:

ds 執(zhí)行任務調用0001.png

ds 執(zhí)行任務調用0001.png
ds 界面

ds 界面執(zhí)行.png
所有代碼如下
1.1 工具類:RestTemplateUtils.ava
package com.wudl.ds.utils;
import org.springframework.http.HttpEntity;
import org.springframework.http.HttpHeaders;
import org.springframework.http.HttpMethod;
import org.springframework.http.ResponseEntity;
import org.springframework.web.client.RestTemplate;
import java.util.Map;
/**
* @ClassName : RestTemplateUtils
* @Description : RestTemp工具類
* @Author :wudl
* @Date: 2021-07-30 22:30
*/
public class RestTemplateUtils {
private static final RestTemplate restTemplate = new RestTemplate();
// ----------------------------------GET-------------------------------------------------------
/**
* GET請求調用方式
*
* @param url 請求URL
* @param responseType 返回對象類型
* @return ResponseEntity 響應對象封裝類
*/
public static <T> ResponseEntity<T> get(String url, Class<T> responseType) {
return restTemplate.getForEntity(url, responseType);
}
/**
* GET請求調用方式
*
* @param url 請求URL
* @param responseType 返回對象類型
* @param uriVariables URL中的變量,按順序依次對應
* @return ResponseEntity 響應對象封裝類
*/
public static <T> ResponseEntity<T> get(String url, Class<T> responseType, Object... uriVariables) {
return restTemplate.getForEntity(url, responseType, uriVariables);
}
/**
* GET請求調用方式
*
* @param url 請求URL
* @param responseType 返回對象類型
* @param uriVariables URL中的變量,與Map中的key對應
* @return ResponseEntity 響應對象封裝類
*/
public static <T> ResponseEntity<T> get(String url, Class<T> responseType, Map<String, ?> uriVariables) {
return restTemplate.getForEntity(url, responseType, uriVariables);
}
/**
* 帶請求頭的GET請求調用方式
*
* @param url 請求URL
* @param headers 請求頭參數(shù)
* @param responseType 返回對象類型
* @param uriVariables URL中的變量,按順序依次對應
* @return ResponseEntity 響應對象封裝類
*/
public static <T> ResponseEntity<T> get(String url, Map<String, String> headers, Class<T> responseType, Object... uriVariables) {
HttpHeaders httpHeaders = new HttpHeaders();
httpHeaders.setAll(headers);
return get(url, httpHeaders, responseType, uriVariables);
}
/**
* 帶請求頭的GET請求調用方式
*
* @param url 請求URL
* @param headers 請求頭參數(shù)
* @param responseType 返回對象類型
* @param uriVariables URL中的變量,按順序依次對應
* @return ResponseEntity 響應對象封裝類
*/
public static <T> ResponseEntity<T> get(String url, HttpHeaders headers, Class<T> responseType, Object... uriVariables) {
HttpEntity<?> requestEntity = new HttpEntity<>(headers);
return exchange(url, HttpMethod.GET, requestEntity, responseType, uriVariables);
}
/**
* 帶請求頭的GET請求調用方式
*
* @param url 請求URL
* @param headers 請求頭參數(shù)
* @param responseType 返回對象類型
* @param uriVariables URL中的變量,與Map中的key對應
* @return ResponseEntity 響應對象封裝類
*/
public static <T> ResponseEntity<T> get(String url, Map<String, String> headers, Class<T> responseType, Map<String, ?> uriVariables) {
HttpHeaders httpHeaders = new HttpHeaders();
httpHeaders.setAll(headers);
return get(url, httpHeaders, responseType, uriVariables);
}
/**
* 帶請求頭的GET請求調用方式
*
* @param url 請求URL
* @param headers 請求頭參數(shù)
* @param responseType 返回對象類型
* @param uriVariables URL中的變量,與Map中的key對應
* @return ResponseEntity 響應對象封裝類
*/
public static <T> ResponseEntity<T> get(String url, HttpHeaders headers, Class<T> responseType, Map<String, ?> uriVariables) {
HttpEntity<?> requestEntity = new HttpEntity<>(headers);
return exchange(url, HttpMethod.GET, requestEntity, responseType, uriVariables);
}
// ----------------------------------POST-------------------------------------------------------
/**
* POST請求調用方式
*
* @param url 請求URL
* @param responseType 返回對象類型
* @return
*/
public static <T> ResponseEntity<T> post(String url, Class<T> responseType) {
return restTemplate.postForEntity(url, HttpEntity.EMPTY, responseType);
}
/**
* POST請求調用方式
*
* @param url 請求URL
* @param requestBody 請求參數(shù)體
* @param responseType 返回對象類型
* @return ResponseEntity 響應對象封裝類
*/
public static <T> ResponseEntity<T> post(String url, Object requestBody, Class<T> responseType) {
return restTemplate.postForEntity(url, requestBody, responseType);
}
/**
* POST請求調用方式
*
* @param url 請求URL
* @param requestBody 請求參數(shù)體
* @param responseType 返回對象類型
* @param uriVariables URL中的變量,按順序依次對應
* @return ResponseEntity 響應對象封裝類
*/
public static <T> ResponseEntity<T> post(String url, Object requestBody, Class<T> responseType, Object... uriVariables) {
return restTemplate.postForEntity(url, requestBody, responseType, uriVariables);
}
/**
* POST請求調用方式
*
* @param url 請求URL
* @param requestBody 請求參數(shù)體
* @param responseType 返回對象類型
* @param uriVariables URL中的變量,與Map中的key對應
* @return ResponseEntity 響應對象封裝類
*/
public static <T> ResponseEntity<T> post(String url, Object requestBody, Class<T> responseType, Map<String, ?> uriVariables) {
return restTemplate.postForEntity(url, requestBody, responseType, uriVariables);
}
/**
* 帶請求頭的POST請求調用方式
*
* @param url 請求URL
* @param headers 請求頭參數(shù)
* @param requestBody 請求參數(shù)體
* @param responseType 返回對象類型
* @param uriVariables URL中的變量,按順序依次對應
* @return ResponseEntity 響應對象封裝類
*/
public static <T> ResponseEntity<T> post(String url, Map<String, String> headers, Object requestBody, Class<T> responseType, Object... uriVariables) {
HttpHeaders httpHeaders = new HttpHeaders();
httpHeaders.setAll(headers);
return post(url, httpHeaders, requestBody, responseType, uriVariables);
}
/**
* 帶請求頭的POST請求調用方式
*
* @param url 請求URL
* @param headers 請求頭參數(shù)
* @param requestBody 請求參數(shù)體
* @param responseType 返回對象類型
* @param uriVariables URL中的變量,按順序依次對應
* @return ResponseEntity 響應對象封裝類
*/
public static <T> ResponseEntity<T> post(String url, HttpHeaders headers, Object requestBody, Class<T> responseType, Object... uriVariables) {
HttpEntity<Object> requestEntity = new HttpEntity<Object>(requestBody, headers);
return post(url, requestEntity, responseType, uriVariables);
}
/**
* 帶請求頭的POST請求調用方式
*
* @param url 請求URL
* @param headers 請求頭參數(shù)
* @param requestBody 請求參數(shù)體
* @param responseType 返回對象類型
* @param uriVariables URL中的變量,與Map中的key對應
* @return ResponseEntity 響應對象封裝類
*/
public static <T> ResponseEntity<T> post(String url, Map<String, String> headers, Object requestBody, Class<T> responseType, Map<String, ?> uriVariables) {
HttpHeaders httpHeaders = new HttpHeaders();
httpHeaders.setAll(headers);
return post(url, httpHeaders, requestBody, responseType, uriVariables);
}
/**
* 帶請求頭的POST請求調用方式
*
* @param url 請求URL
* @param headers 請求頭參數(shù)
* @param requestBody 請求參數(shù)體
* @param responseType 返回對象類型
* @param uriVariables URL中的變量,與Map中的key對應
* @return ResponseEntity 響應對象封裝類
*/
public static <T> ResponseEntity<T> post(String url, HttpHeaders headers, Object requestBody, Class<T> responseType, Map<String, ?> uriVariables) {
HttpEntity<Object> requestEntity = new HttpEntity<Object>(requestBody, headers);
return post(url, requestEntity, responseType, uriVariables);
}
/**
* 自定義請求頭和請求體的POST請求調用方式
*
* @param url 請求URL
* @param requestEntity 請求頭和請求體封裝對象
* @param responseType 返回對象類型
* @param uriVariables URL中的變量,按順序依次對應
* @return ResponseEntity 響應對象封裝類
*/
public static <T> ResponseEntity<T> post(String url, HttpEntity<?> requestEntity, Class<T> responseType, Object... uriVariables) {
return restTemplate.exchange(url, HttpMethod.POST, requestEntity, responseType, uriVariables);
}
/**
* 自定義請求頭和請求體的POST請求調用方式
*
* @param url 請求URL
* @param requestEntity 請求頭和請求體封裝對象
* @param responseType 返回對象類型
* @param uriVariables URL中的變量,與Map中的key對應
* @return ResponseEntity 響應對象封裝類
*/
public static <T> ResponseEntity<T> post(String url, HttpEntity<?> requestEntity, Class<T> responseType, Map<String, ?> uriVariables) {
return restTemplate.exchange(url, HttpMethod.POST, requestEntity, responseType, uriVariables);
}
// ----------------------------------PUT-------------------------------------------------------
/**
* PUT請求調用方式
*
* @param url 請求URL
* @param responseType 返回對象類型
* @param uriVariables URL中的變量,按順序依次對應
* @return ResponseEntity 響應對象封裝類
*/
public static <T> ResponseEntity<T> put(String url, Class<T> responseType, Object... uriVariables) {
return put(url, HttpEntity.EMPTY, responseType, uriVariables);
}
/**
* PUT請求調用方式
*
* @param url 請求URL
* @param requestBody 請求參數(shù)體
* @param responseType 返回對象類型
* @param uriVariables URL中的變量,按順序依次對應
* @return ResponseEntity 響應對象封裝類
*/
public static <T> ResponseEntity<T> put(String url, Object requestBody, Class<T> responseType, Object... uriVariables) {
HttpEntity<Object> requestEntity = new HttpEntity<Object>(requestBody);
return put(url, requestEntity, responseType, uriVariables);
}
/**
* PUT請求調用方式
*
* @param url 請求URL
* @param requestBody 請求參數(shù)體
* @param responseType 返回對象類型
* @param uriVariables URL中的變量,與Map中的key對應
* @return ResponseEntity 響應對象封裝類
*/
public static <T> ResponseEntity<T> put(String url, Object requestBody, Class<T> responseType, Map<String, ?> uriVariables) {
HttpEntity<Object> requestEntity = new HttpEntity<Object>(requestBody);
return put(url, requestEntity, responseType, uriVariables);
}
/**
* 帶請求頭的PUT請求調用方式
*
* @param url 請求URL
* @param headers 請求頭參數(shù)
* @param requestBody 請求參數(shù)體
* @param responseType 返回對象類型
* @param uriVariables URL中的變量,按順序依次對應
* @return ResponseEntity 響應對象封裝類
*/
public static <T> ResponseEntity<T> put(String url, Map<String, String> headers, Object requestBody, Class<T> responseType, Object... uriVariables) {
HttpHeaders httpHeaders = new HttpHeaders();
httpHeaders.setAll(headers);
return put(url, httpHeaders, requestBody, responseType, uriVariables);
}
/**
* 帶請求頭的PUT請求調用方式
*
* @param url 請求URL
* @param headers 請求頭參數(shù)
* @param requestBody 請求參數(shù)體
* @param responseType 返回對象類型
* @param uriVariables URL中的變量,按順序依次對應
* @return ResponseEntity 響應對象封裝類
*/
public static <T> ResponseEntity<T> put(String url, HttpHeaders headers, Object requestBody, Class<T> responseType, Object... uriVariables) {
HttpEntity<Object> requestEntity = new HttpEntity<Object>(requestBody, headers);
return put(url, requestEntity, responseType, uriVariables);
}
/**
* 帶請求頭的PUT請求調用方式
*
* @param url 請求URL
* @param headers 請求頭參數(shù)
* @param requestBody 請求參數(shù)體
* @param responseType 返回對象類型
* @param uriVariables URL中的變量,與Map中的key對應
* @return ResponseEntity 響應對象封裝類
*/
public static <T> ResponseEntity<T> put(String url, Map<String, String> headers, Object requestBody, Class<T> responseType, Map<String, ?> uriVariables) {
HttpHeaders httpHeaders = new HttpHeaders();
httpHeaders.setAll(headers);
return put(url, httpHeaders, requestBody, responseType, uriVariables);
}
/**
* 帶請求頭的PUT請求調用方式
*
* @param url 請求URL
* @param headers 請求頭參數(shù)
* @param requestBody 請求參數(shù)體
* @param responseType 返回對象類型
* @param uriVariables URL中的變量,與Map中的key對應
* @return ResponseEntity 響應對象封裝類
*/
public static <T> ResponseEntity<T> put(String url, HttpHeaders headers, Object requestBody, Class<T> responseType, Map<String, ?> uriVariables) {
HttpEntity<Object> requestEntity = new HttpEntity<Object>(requestBody, headers);
return put(url, requestEntity, responseType, uriVariables);
}
/**
* 自定義請求頭和請求體的PUT請求調用方式
*
* @param url 請求URL
* @param requestEntity 請求頭和請求體封裝對象
* @param responseType 返回對象類型
* @param uriVariables URL中的變量,按順序依次對應
* @return ResponseEntity 響應對象封裝類
*/
public static <T> ResponseEntity<T> put(String url, HttpEntity<?> requestEntity, Class<T> responseType, Object... uriVariables) {
return restTemplate.exchange(url, HttpMethod.PUT, requestEntity, responseType, uriVariables);
}
/**
* 自定義請求頭和請求體的PUT請求調用方式
*
* @param url 請求URL
* @param requestEntity 請求頭和請求體封裝對象
* @param responseType 返回對象類型
* @param uriVariables URL中的變量,與Map中的key對應
* @return ResponseEntity 響應對象封裝類
*/
public static <T> ResponseEntity<T> put(String url, HttpEntity<?> requestEntity, Class<T> responseType, Map<String, ?> uriVariables) {
return restTemplate.exchange(url, HttpMethod.PUT, requestEntity, responseType, uriVariables);
}
// ----------------------------------DELETE-------------------------------------------------------
/**
* DELETE請求調用方式
*
* @param url 請求URL
* @param responseType 返回對象類型
* @param uriVariables URL中的變量,按順序依次對應
* @return ResponseEntity 響應對象封裝類
*/
public static <T> ResponseEntity<T> delete(String url, Class<T> responseType, Object... uriVariables) {
return delete(url, HttpEntity.EMPTY, responseType, uriVariables);
}
/**
* DELETE請求調用方式
*
* @param url 請求URL
* @param responseType 返回對象類型
* @param uriVariables URL中的變量,與Map中的key對應
* @return ResponseEntity 響應對象封裝類
*/
public static <T> ResponseEntity<T> delete(String url, Class<T> responseType, Map<String, ?> uriVariables) {
return delete(url, HttpEntity.EMPTY, responseType, uriVariables);
}
/**
* DELETE請求調用方式
*
* @param url 請求URL
* @param requestBody 請求參數(shù)體
* @param responseType 返回對象類型
* @param uriVariables URL中的變量,按順序依次對應
* @return ResponseEntity 響應對象封裝類
*/
public static <T> ResponseEntity<T> delete(String url, Object requestBody, Class<T> responseType, Object... uriVariables) {
HttpEntity<Object> requestEntity = new HttpEntity<Object>(requestBody);
return delete(url, requestEntity, responseType, uriVariables);
}
/**
* DELETE請求調用方式
*
* @param url 請求URL
* @param requestBody 請求參數(shù)體
* @param responseType 返回對象類型
* @param uriVariables URL中的變量,與Map中的key對應
* @return ResponseEntity 響應對象封裝類
*/
public static <T> ResponseEntity<T> delete(String url, Object requestBody, Class<T> responseType, Map<String, ?> uriVariables) {
HttpEntity<Object> requestEntity = new HttpEntity<Object>(requestBody);
return delete(url, requestEntity, responseType, uriVariables);
}
/**
* 帶請求頭的DELETE請求調用方式
*
* @param url 請求URL
* @param headers 請求頭參數(shù)
* @param responseType 返回對象類型
* @param uriVariables URL中的變量,按順序依次對應
* @return ResponseEntity 響應對象封裝類
*/
public static <T> ResponseEntity<T> delete(String url, Map<String, String> headers, Class<T> responseType, Object... uriVariables) {
HttpHeaders httpHeaders = new HttpHeaders();
httpHeaders.setAll(headers);
return delete(url, httpHeaders, responseType, uriVariables);
}
/**
* 帶請求頭的DELETE請求調用方式
*
* @param url 請求URL
* @param headers 請求頭參數(shù)
* @param responseType 返回對象類型
* @param uriVariables URL中的變量,按順序依次對應
* @return ResponseEntity 響應對象封裝類
*/
public static <T> ResponseEntity<T> delete(String url, HttpHeaders headers, Class<T> responseType, Object... uriVariables) {
HttpEntity<Object> requestEntity = new HttpEntity<Object>(headers);
return delete(url, requestEntity, responseType, uriVariables);
}
/**
* 帶請求頭的DELETE請求調用方式
*
* @param url 請求URL
* @param headers 請求頭參數(shù)
* @param responseType 返回對象類型
* @param uriVariables URL中的變量,與Map中的key對應
* @return ResponseEntity 響應對象封裝類
*/
public static <T> ResponseEntity<T> delete(String url, Map<String, String> headers, Class<T> responseType, Map<String, ?> uriVariables) {
HttpHeaders httpHeaders = new HttpHeaders();
httpHeaders.setAll(headers);
return delete(url, httpHeaders, responseType, uriVariables);
}
/**
* 帶請求頭的DELETE請求調用方式
*
* @param url 請求URL
* @param headers 請求頭參數(shù)
* @param responseType 返回對象類型
* @param uriVariables URL中的變量,與Map中的key對應
* @return ResponseEntity 響應對象封裝類
*/
public static <T> ResponseEntity<T> delete(String url, HttpHeaders headers, Class<T> responseType, Map<String, ?> uriVariables) {
HttpEntity<Object> requestEntity = new HttpEntity<Object>(headers);
return delete(url, requestEntity, responseType, uriVariables);
}
/**
* 帶請求頭的DELETE請求調用方式
*
* @param url 請求URL
* @param headers 請求頭參數(shù)
* @param requestBody 請求參數(shù)體
* @param responseType 返回對象類型
* @param uriVariables URL中的變量,按順序依次對應
* @return ResponseEntity 響應對象封裝類
*/
public static <T> ResponseEntity<T> delete(String url, Map<String, String> headers, Object requestBody, Class<T> responseType, Object... uriVariables) {
HttpHeaders httpHeaders = new HttpHeaders();
httpHeaders.setAll(headers);
return delete(url, httpHeaders, requestBody, responseType, uriVariables);
}
/**
* 帶請求頭的DELETE請求調用方式
*
* @param url 請求URL
* @param headers 請求頭參數(shù)
* @param requestBody 請求參數(shù)體
* @param responseType 返回對象類型
* @param uriVariables URL中的變量,按順序依次對應
* @return ResponseEntity 響應對象封裝類
*/
public static <T> ResponseEntity<T> delete(String url, HttpHeaders headers, Object requestBody, Class<T> responseType, Object... uriVariables) {
HttpEntity<Object> requestEntity = new HttpEntity<Object>(requestBody, headers);
return delete(url, requestEntity, responseType, uriVariables);
}
/**
* 帶請求頭的DELETE請求調用方式
*
* @param url 請求URL
* @param headers 請求頭參數(shù)
* @param requestBody 請求參數(shù)體
* @param responseType 返回對象類型
* @param uriVariables URL中的變量,與Map中的key對應
* @return ResponseEntity 響應對象封裝類
*/
public static <T> ResponseEntity<T> delete(String url, Map<String, String> headers, Object requestBody, Class<T> responseType, Map<String, ?> uriVariables) {
HttpHeaders httpHeaders = new HttpHeaders();
httpHeaders.setAll(headers);
return delete(url, httpHeaders, requestBody, responseType, uriVariables);
}
/**
* 帶請求頭的DELETE請求調用方式
*
* @param url 請求URL
* @param headers 請求頭參數(shù)
* @param requestBody 請求參數(shù)體
* @param responseType 返回對象類型
* @param uriVariables URL中的變量,與Map中的key對應
* @return ResponseEntity 響應對象封裝類
*/
public static <T> ResponseEntity<T> delete(String url, HttpHeaders headers, Object requestBody, Class<T> responseType, Map<String, ?> uriVariables) {
HttpEntity<Object> requestEntity = new HttpEntity<Object>(requestBody, headers);
return delete(url, requestEntity, responseType, uriVariables);
}
/**
* 自定義請求頭和請求體的DELETE請求調用方式
*
* @param url 請求URL
* @param requestEntity 請求頭和請求體封裝對象
* @param responseType 返回對象類型
* @param uriVariables URL中的變量,按順序依次對應
* @return ResponseEntity 響應對象封裝類
*/
public static <T> ResponseEntity<T> delete(String url, HttpEntity<?> requestEntity, Class<T> responseType, Object... uriVariables) {
return restTemplate.exchange(url, HttpMethod.DELETE, requestEntity, responseType, uriVariables);
}
/**
* 自定義請求頭和請求體的DELETE請求調用方式
*
* @param url 請求URL
* @param requestEntity 請求頭和請求體封裝對象
* @param responseType 返回對象類型
* @param uriVariables URL中的變量,與Map中的key對應
* @return ResponseEntity 響應對象封裝類
*/
public static <T> ResponseEntity<T> delete(String url, HttpEntity<?> requestEntity, Class<T> responseType, Map<String, ?> uriVariables) {
return restTemplate.exchange(url, HttpMethod.DELETE, requestEntity, responseType, uriVariables);
}
// ----------------------------------通用方法-------------------------------------------------------
/**
* 通用調用方式
*
* @param url 請求URL
* @param method 請求方法類型
* @param requestEntity 請求頭和請求體封裝對象
* @param responseType 返回對象類型
* @param uriVariables URL中的變量,按順序依次對應
* @return ResponseEntity 響應對象封裝類
*/
public static <T> ResponseEntity<T> exchange(String url, HttpMethod method, HttpEntity<?> requestEntity, Class<T> responseType, Object... uriVariables) {
return restTemplate.exchange(url, method, requestEntity, responseType, uriVariables);
}
/**
* 通用調用方式
*
* @param url 請求URL
* @param method 請求方法類型
* @param requestEntity 請求頭和請求體封裝對象
* @param responseType 返回對象類型
* @param uriVariables URL中的變量,與Map中的key對應
* @return ResponseEntity 響應對象封裝類
*/
public static <T> ResponseEntity<T> exchange(String url, HttpMethod method, HttpEntity<?> requestEntity, Class<T> responseType, Map<String, ?> uriVariables) {
return restTemplate.exchange(url, method, requestEntity, responseType, uriVariables);
}
/**
* 獲取RestTemplate實例對象,可自由調用其方法
*
* @return RestTemplate實例對象
*/
public static RestTemplate getRestTemplate() {
return restTemplate;
}
}
1.2 工具類值 返回:Result.java
在這里插入代碼片package com.wudl.ds.utils;
import com.wudl.ds.enums.Status;
import java.text.MessageFormat;
/**
* @ClassName : Result
* @Description : 返回給接口工具類
* @Author :wudl
* @Date: 2021-07-30 22:35
*/
public class Result<T> {
/**
* status
*/
private Integer code;
/**
* message
*/
private String msg;
/**
* data
*/
private T data;
public Result() {
}
public Result(Integer code, String msg) {
this.code = code;
this.msg = msg;
}
private Result(T data) {
this.code = 0;
this.data = data;
}
private Result(Status status) {
if (status != null) {
this.code = status.getCode();
this.msg = status.getMsg();
}
}
/**
* Call this function if there is success
*
* @param data data
* @param <T> type
* @return resule
*/
public static <T> Result<T> success(T data) {
return new Result<>(data);
}
/**
* Call this function if there is any error
*
* @param status status
* @return result
*/
public static Result error(Status status) {
return new Result(status);
}
/**
* Call this function if there is any error
*
* @param status status
* @param args args
* @return result
*/
public static Result errorWithArgs(Status status, Object... args) {
return new Result(status.getCode(), MessageFormat.format(status.getMsg(), args));
}
public Integer getCode() {
return code;
}
public void setCode(Integer code) {
this.code = code;
}
public String getMsg() {
return msg;
}
public void setMsg(String msg) {
this.msg = msg;
}
public T getData() {
return data;
}
public void setData(T data) {
this.data = data;
}
@Override
public String toString() {
return "Status{" +
"code='" + code + '\'' +
", msg='" + msg + '\'' +
", data=" + data +
'}';
}
}
package com.wudl.ds.enums;
import org.springframework.context.i18n.LocaleContextHolder;
import java.util.Locale;
/**
* @ClassName : Status
* @Description : 枚舉狀態(tài)值
* @Author :wudl
* @Date: 2021-07-30 22:33
*/
public enum Status {
SUCCESS(0, "success", "成功"),
INTERNAL_SERVER_ERROR_ARGS(10000, "Internal Server Error: {0}", "服務端異常: {0}"),
REQUEST_PARAMS_NOT_VALID_ERROR(10001, "request parameter {0} is not valid", "請求參數(shù)[{0}]無效"),
TASK_TIMEOUT_PARAMS_ERROR(10002, "task timeout parameter is not valid", "任務超時參數(shù)無效"),
USER_NAME_EXIST(10003, "user name already exists", "用戶名已存在"),
USER_NAME_NULL(10004,"user name is null", "用戶名不能為空"),
HDFS_OPERATION_ERROR(10006, "hdfs operation error", "hdfs操作錯誤"),
TASK_INSTANCE_NOT_FOUND(10008, "task instance not found", "任務實例不存在"),
TENANT_NAME_EXIST(10009, "tenant code {0} already exists", "租戶編碼[{0}]已存在"),
USER_NOT_EXIST(10010, "user {0} not exists", "用戶[{0}]不存在"),
ALERT_GROUP_NOT_EXIST(10011, "alarm group not found", "告警組不存在"),
ALERT_GROUP_EXIST(10012, "alarm group already exists", "告警組名稱已存在"),
USER_NAME_PASSWD_ERROR(10013,"user name or password error", "用戶名或密碼錯誤"),
LOGIN_SESSION_FAILED(10014,"create session failed!", "創(chuàng)建session失敗"),
DATASOURCE_EXIST(10015, "data source name already exists", "數(shù)據(jù)源名稱已存在"),
DATASOURCE_CONNECT_FAILED(10016, "data source connection failed", "建立數(shù)據(jù)源連接失敗"),
TENANT_NOT_EXIST(10017, "tenant not exists", "租戶不存在"),
PROJECT_NOT_FOUNT(10018, "project {0} not found ", "項目[{0}]不存在"),
PROJECT_ALREADY_EXISTS(10019, "project {0} already exists", "項目名稱[{0}]已存在"),
TASK_INSTANCE_NOT_EXISTS(10020, "task instance {0} does not exist", "任務實例[{0}]不存在"),
TASK_INSTANCE_NOT_SUB_WORKFLOW_INSTANCE(10021, "task instance {0} is not sub process instance", "任務實例[{0}]不是子流程實例"),
SCHEDULE_CRON_NOT_EXISTS(10022, "scheduler crontab {0} does not exist", "調度配置定時表達式[{0}]不存在"),
SCHEDULE_CRON_ONLINE_FORBID_UPDATE(10023, "online status does not allow update operations", "調度配置上線狀態(tài)不允許修改"),
SCHEDULE_CRON_CHECK_FAILED(10024, "scheduler crontab expression validation failure: {0}", "調度配置定時表達式驗證失敗: {0}"),
MASTER_NOT_EXISTS(10025, "master does not exist", "無可用master節(jié)點"),
SCHEDULE_STATUS_UNKNOWN(10026, "unknown status: {0}", "未知狀態(tài): {0}"),
CREATE_ALERT_GROUP_ERROR(10027,"create alert group error", "創(chuàng)建告警組錯誤"),
QUERY_ALL_ALERTGROUP_ERROR(10028,"query all alertgroup error", "查詢告警組錯誤"),
LIST_PAGING_ALERT_GROUP_ERROR(10029,"list paging alert group error", "分頁查詢告警組錯誤"),
UPDATE_ALERT_GROUP_ERROR(10030,"update alert group error", "更新告警組錯誤"),
DELETE_ALERT_GROUP_ERROR(10031,"delete alert group error", "刪除告警組錯誤"),
ALERT_GROUP_GRANT_USER_ERROR(10032,"alert group grant user error", "告警組授權用戶錯誤"),
CREATE_DATASOURCE_ERROR(10033,"create datasource error", "創(chuàng)建數(shù)據(jù)源錯誤"),
UPDATE_DATASOURCE_ERROR(10034,"update datasource error", "更新數(shù)據(jù)源錯誤"),
QUERY_DATASOURCE_ERROR(10035,"query datasource error", "查詢數(shù)據(jù)源錯誤"),
CONNECT_DATASOURCE_FAILURE(10036,"connect datasource failure", "建立數(shù)據(jù)源連接失敗"),
CONNECTION_TEST_FAILURE(10037,"connection test failure", "測試數(shù)據(jù)源連接失敗"),
DELETE_DATA_SOURCE_FAILURE(10038,"delete data source failure", "刪除數(shù)據(jù)源失敗"),
VERIFY_DATASOURCE_NAME_FAILURE(10039,"verify datasource name failure", "驗證數(shù)據(jù)源名稱失敗"),
UNAUTHORIZED_DATASOURCE(10040,"unauthorized datasource", "未經授權的數(shù)據(jù)源"),
AUTHORIZED_DATA_SOURCE(10041,"authorized data source", "授權數(shù)據(jù)源失敗"),
LOGIN_SUCCESS(10042,"login success", "登錄成功"),
USER_LOGIN_FAILURE(10043,"user login failure", "用戶登錄失敗"),
LIST_WORKERS_ERROR(10044,"list workers error", "查詢worker列表錯誤"),
LIST_MASTERS_ERROR(10045,"list masters error", "查詢master列表錯誤"),
UPDATE_PROJECT_ERROR(10046,"update project error", "更新項目信息錯誤"),
QUERY_PROJECT_DETAILS_BY_ID_ERROR(10047,"query project details by id error", "查詢項目詳細信息錯誤"),
CREATE_PROJECT_ERROR(10048,"create project error", "創(chuàng)建項目錯誤"),
LOGIN_USER_QUERY_PROJECT_LIST_PAGING_ERROR(10049,"login user query project list paging error", "分頁查詢項目列表錯誤"),
DELETE_PROJECT_ERROR(10050,"delete project error", "刪除項目錯誤"),
QUERY_UNAUTHORIZED_PROJECT_ERROR(10051,"query unauthorized project error", "查詢未授權項目錯誤"),
QUERY_AUTHORIZED_PROJECT(10052,"query authorized project", "查詢授權項目錯誤"),
QUERY_QUEUE_LIST_ERROR(10053,"query queue list error", "查詢隊列列表錯誤"),
CREATE_RESOURCE_ERROR(10054,"create resource error", "創(chuàng)建資源錯誤"),
UPDATE_RESOURCE_ERROR(10055,"update resource error", "更新資源錯誤"),
QUERY_RESOURCES_LIST_ERROR(10056,"query resources list error", "查詢資源列表錯誤"),
QUERY_RESOURCES_LIST_PAGING(10057,"query resources list paging", "分頁查詢資源列表錯誤"),
DELETE_RESOURCE_ERROR(10058,"delete resource error", "刪除資源錯誤"),
VERIFY_RESOURCE_BY_NAME_AND_TYPE_ERROR(10059,"verify resource by name and type error", "資源名稱或類型驗證錯誤"),
VIEW_RESOURCE_FILE_ON_LINE_ERROR(10060,"view resource file online error", "查看資源文件錯誤"),
CREATE_RESOURCE_FILE_ON_LINE_ERROR(10061,"create resource file online error", "創(chuàng)建資源文件錯誤"),
RESOURCE_FILE_IS_EMPTY(10062,"resource file is empty", "資源文件內容不能為空"),
EDIT_RESOURCE_FILE_ON_LINE_ERROR(10063,"edit resource file online error", "更新資源文件錯誤"),
DOWNLOAD_RESOURCE_FILE_ERROR(10064,"download resource file error", "下載資源文件錯誤"),
CREATE_UDF_FUNCTION_ERROR(10065 ,"create udf function error", "創(chuàng)建UDF函數(shù)錯誤"),
VIEW_UDF_FUNCTION_ERROR( 10066,"view udf function error", "查詢UDF函數(shù)錯誤"),
UPDATE_UDF_FUNCTION_ERROR(10067,"update udf function error", "更新UDF函數(shù)錯誤"),
QUERY_UDF_FUNCTION_LIST_PAGING_ERROR( 10068,"query udf function list paging error", "分頁查詢UDF函數(shù)列表錯誤"),
QUERY_DATASOURCE_BY_TYPE_ERROR( 10069,"query datasource by type error", "查詢數(shù)據(jù)源信息錯誤"),
VERIFY_UDF_FUNCTION_NAME_ERROR( 10070,"verify udf function name error", "UDF函數(shù)名稱驗證錯誤"),
DELETE_UDF_FUNCTION_ERROR( 10071,"delete udf function error", "刪除UDF函數(shù)錯誤"),
AUTHORIZED_FILE_RESOURCE_ERROR( 10072,"authorized file resource error", "授權資源文件錯誤"),
AUTHORIZE_RESOURCE_TREE( 10073,"authorize resource tree display error","授權資源目錄樹錯誤"),
UNAUTHORIZED_UDF_FUNCTION_ERROR( 10074,"unauthorized udf function error", "查詢未授權UDF函數(shù)錯誤"),
AUTHORIZED_UDF_FUNCTION_ERROR(10075,"authorized udf function error", "授權UDF函數(shù)錯誤"),
CREATE_SCHEDULE_ERROR(10076,"create schedule error", "創(chuàng)建調度配置錯誤"),
UPDATE_SCHEDULE_ERROR(10077,"update schedule error", "更新調度配置錯誤"),
PUBLISH_SCHEDULE_ONLINE_ERROR(10078,"publish schedule online error", "上線調度配置錯誤"),
OFFLINE_SCHEDULE_ERROR(10079,"offline schedule error", "下線調度配置錯誤"),
QUERY_SCHEDULE_LIST_PAGING_ERROR(10080,"query schedule list paging error", "分頁查詢調度配置列表錯誤"),
QUERY_SCHEDULE_LIST_ERROR(10081,"query schedule list error", "查詢調度配置列表錯誤"),
QUERY_TASK_LIST_PAGING_ERROR(10082,"query task list paging error", "分頁查詢任務列表錯誤"),
QUERY_TASK_RECORD_LIST_PAGING_ERROR(10083,"query task record list paging error", "分頁查詢任務記錄錯誤"),
CREATE_TENANT_ERROR(10084,"create tenant error", "創(chuàng)建租戶錯誤"),
QUERY_TENANT_LIST_PAGING_ERROR(10085,"query tenant list paging error", "分頁查詢租戶列表錯誤"),
QUERY_TENANT_LIST_ERROR(10086,"query tenant list error", "查詢租戶列表錯誤"),
UPDATE_TENANT_ERROR(10087,"update tenant error", "更新租戶錯誤"),
DELETE_TENANT_BY_ID_ERROR(10088,"delete tenant by id error", "刪除租戶錯誤"),
VERIFY_TENANT_CODE_ERROR(10089,"verify tenant code error", "租戶編碼驗證錯誤"),
CREATE_USER_ERROR(10090,"create user error", "創(chuàng)建用戶錯誤"),
QUERY_USER_LIST_PAGING_ERROR(10091,"query user list paging error", "分頁查詢用戶列表錯誤"),
UPDATE_USER_ERROR(10092,"update user error", "更新用戶錯誤"),
DELETE_USER_BY_ID_ERROR(10093,"delete user by id error", "刪除用戶錯誤"),
GRANT_PROJECT_ERROR(10094,"grant project error", "授權項目錯誤"),
GRANT_RESOURCE_ERROR(10095,"grant resource error", "授權資源錯誤"),
GRANT_UDF_FUNCTION_ERROR(10096,"grant udf function error", "授權UDF函數(shù)錯誤"),
GRANT_DATASOURCE_ERROR(10097,"grant datasource error", "授權數(shù)據(jù)源錯誤"),
GET_USER_INFO_ERROR(10098,"get user info error", "獲取用戶信息錯誤"),
USER_LIST_ERROR(10099,"user list error", "查詢用戶列表錯誤"),
VERIFY_USERNAME_ERROR(10100,"verify username error", "用戶名驗證錯誤"),
UNAUTHORIZED_USER_ERROR(10101,"unauthorized user error", "查詢未授權用戶錯誤"),
AUTHORIZED_USER_ERROR(10102,"authorized user error", "查詢授權用戶錯誤"),
QUERY_TASK_INSTANCE_LOG_ERROR(10103,"view task instance log error", "查詢任務實例日志錯誤"),
DOWNLOAD_TASK_INSTANCE_LOG_FILE_ERROR(10104,"download task instance log file error", "下載任務日志文件錯誤"),
CREATE_PROCESS_DEFINITION(10105,"create process definition", "創(chuàng)建工作流錯誤"),
VERIFY_PROCESS_DEFINITION_NAME_UNIQUE_ERROR(10106,"verify process definition name unique error", "工作流定義名稱已存在"),
UPDATE_PROCESS_DEFINITION_ERROR(10107,"update process definition error", "更新工作流定義錯誤"),
RELEASE_PROCESS_DEFINITION_ERROR(10108,"release process definition error", "上線工作流錯誤"),
QUERY_DATAIL_OF_PROCESS_DEFINITION_ERROR(10109,"query datail of process definition error", "查詢工作流詳細信息錯誤"),
QUERY_PROCESS_DEFINITION_LIST(10110,"query process definition list", "查詢工作流列表錯誤"),
ENCAPSULATION_TREEVIEW_STRUCTURE_ERROR(10111,"encapsulation treeview structure error", "查詢工作流樹形圖數(shù)據(jù)錯誤"),
GET_TASKS_LIST_BY_PROCESS_DEFINITION_ID_ERROR(10112,"get tasks list by process definition id error", "查詢工作流定義節(jié)點信息錯誤"),
QUERY_PROCESS_INSTANCE_LIST_PAGING_ERROR(10113,"query process instance list paging error", "分頁查詢工作流實例列表錯誤"),
QUERY_TASK_LIST_BY_PROCESS_INSTANCE_ID_ERROR(10114,"query task list by process instance id error", "查詢任務實例列表錯誤"),
UPDATE_PROCESS_INSTANCE_ERROR(10115,"update process instance error", "更新工作流實例錯誤"),
QUERY_PROCESS_INSTANCE_BY_ID_ERROR(10116,"query process instance by id error", "查詢工作流實例錯誤"),
DELETE_PROCESS_INSTANCE_BY_ID_ERROR(10117,"delete process instance by id error", "刪除工作流實例錯誤"),
QUERY_SUB_PROCESS_INSTANCE_DETAIL_INFO_BY_TASK_ID_ERROR(10118,"query sub process instance detail info by task id error", "查詢子流程任務實例錯誤"),
QUERY_PARENT_PROCESS_INSTANCE_DETAIL_INFO_BY_SUB_PROCESS_INSTANCE_ID_ERROR(10119,"query parent process instance detail info by sub process instance id error", "查詢子流程該工作流實例錯誤"),
QUERY_PROCESS_INSTANCE_ALL_VARIABLES_ERROR(10120,"query process instance all variables error", "查詢工作流自定義變量信息錯誤"),
ENCAPSULATION_PROCESS_INSTANCE_GANTT_STRUCTURE_ERROR(10121,"encapsulation process instance gantt structure error", "查詢工作流實例甘特圖數(shù)據(jù)錯誤"),
QUERY_PROCESS_DEFINITION_LIST_PAGING_ERROR(10122,"query process definition list paging error", "分頁查詢工作流定義列表錯誤"),
SIGN_OUT_ERROR(10123,"sign out error", "退出錯誤"),
TENANT_CODE_HAS_ALREADY_EXISTS(10124,"tenant code has already exists", "租戶編碼已存在"),
IP_IS_EMPTY(10125,"ip is empty", "IP地址不能為空"),
SCHEDULE_CRON_REALEASE_NEED_NOT_CHANGE(10126, "schedule release is already {0}", "調度配置上線錯誤[{0}]"),
CREATE_QUEUE_ERROR(10127, "create queue error", "創(chuàng)建隊列錯誤"),
QUEUE_NOT_EXIST(10128, "queue {0} not exists", "隊列ID[{0}]不存在"),
QUEUE_VALUE_EXIST(10129, "queue value {0} already exists", "隊列值[{0}]已存在"),
QUEUE_NAME_EXIST(10130, "queue name {0} already exists", "隊列名稱[{0}]已存在"),
UPDATE_QUEUE_ERROR(10131, "update queue error", "更新隊列信息錯誤"),
NEED_NOT_UPDATE_QUEUE(10132, "no content changes, no updates are required", "數(shù)據(jù)未變更,不需要更新隊列信息"),
VERIFY_QUEUE_ERROR(10133,"verify queue error", "驗證隊列信息錯誤"),
NAME_NULL(10134,"name must be not null", "名稱不能為空"),
NAME_EXIST(10135, "name {0} already exists", "名稱[{0}]已存在"),
SAVE_ERROR(10136, "save error", "保存錯誤"),
DELETE_PROJECT_ERROR_DEFINES_NOT_NULL(10137, "please delete the process definitions in project first!", "請先刪除全部工作流定義"),
BATCH_DELETE_PROCESS_INSTANCE_BY_IDS_ERROR(10117,"batch delete process instance by ids {0} error", "批量刪除工作流實例錯誤"),
PREVIEW_SCHEDULE_ERROR(10139,"preview schedule error", "預覽調度配置錯誤"),
PARSE_TO_CRON_EXPRESSION_ERROR(10140,"parse cron to cron expression error", "解析調度表達式錯誤"),
SCHEDULE_START_TIME_END_TIME_SAME(10141,"The start time must not be the same as the end", "開始時間不能和結束時間一樣"),
DELETE_TENANT_BY_ID_FAIL(10142,"delete tenant by id fail, for there are {0} process instances in executing using it", "刪除租戶失敗,有[{0}]個運行中的工作流實例正在使用"),
DELETE_TENANT_BY_ID_FAIL_DEFINES(10143,"delete tenant by id fail, for there are {0} process definitions using it", "刪除租戶失敗,有[{0}]個工作流定義正在使用"),
DELETE_TENANT_BY_ID_FAIL_USERS(10144,"delete tenant by id fail, for there are {0} users using it", "刪除租戶失敗,有[{0}]個用戶正在使用"),
DELETE_WORKER_GROUP_BY_ID_FAIL(10145,"delete worker group by id fail, for there are {0} process instances in executing using it", "刪除Worker分組失敗,有[{0}]個運行中的工作流實例正在使用"),
QUERY_WORKER_GROUP_FAIL(10146,"query worker group fail ", "查詢worker分組失敗"),
DELETE_WORKER_GROUP_FAIL(10147,"delete worker group fail ", "刪除worker分組失敗"),
COPY_PROCESS_DEFINITION_ERROR(10148,"copy process definition error", "復制工作流錯誤"),
UDF_FUNCTION_NOT_EXIST(20001, "UDF function not found", "UDF函數(shù)不存在"),
UDF_FUNCTION_EXISTS(20002, "UDF function already exists", "UDF函數(shù)已存在"),
RESOURCE_NOT_EXIST(20004, "resource not exist", "資源不存在"),
RESOURCE_EXIST(20005, "resource already exists", "資源已存在"),
RESOURCE_SUFFIX_NOT_SUPPORT_VIEW(20006, "resource suffix do not support online viewing", "資源文件后綴不支持查看"),
RESOURCE_SIZE_EXCEED_LIMIT(20007, "upload resource file size exceeds limit", "上傳資源文件大小超過限制"),
RESOURCE_SUFFIX_FORBID_CHANGE(20008, "resource suffix not allowed to be modified", "資源文件后綴不支持修改"),
UDF_RESOURCE_SUFFIX_NOT_JAR(20009, "UDF resource suffix name must be jar", "UDF資源文件后綴名只支持[jar]"),
HDFS_COPY_FAIL(20010, "hdfs copy {0} -> {1} fail", "hdfs復制失?。篬{0}] -> [{1}]"),
RESOURCE_FILE_EXIST(20011, "resource file {0} already exists in hdfs,please delete it or change name!", "資源文件[{0}]在hdfs中已存在,請刪除或修改資源名"),
RESOURCE_FILE_NOT_EXIST(20012, "resource file {0} not exists in hdfs!", "資源文件[{0}]在hdfs中不存在"),
UDF_RESOURCE_IS_BOUND(20013, "udf resource file is bound by UDF functions:{0}","udf函數(shù)綁定了資源文件[{0}]"),
RESOURCE_IS_USED(20014, "resource file is used by process definition","資源文件被上線的流程定義使用了"),
PARENT_RESOURCE_NOT_EXIST(20015, "parent resource not exist","父資源文件不存在"),
RESOURCE_NOT_EXIST_OR_NO_PERMISSION(20016, "resource not exist or no permission,please view the task node and remove error resource","請檢查任務節(jié)點并移除無權限或者已刪除的資源"),
RESOURCE_IS_AUTHORIZED(20017, "resource is authorized to user {0},suffix not allowed to be modified", "資源文件已授權其他用戶[{0}],后綴不允許修改"),
USER_NO_OPERATION_PERM(30001, "user has no operation privilege", "當前用戶沒有操作權限"),
USER_NO_OPERATION_PROJECT_PERM(30002, "user {0} is not has project {1} permission", "當前用戶[{0}]沒有[{1}]項目的操作權限"),
PROCESS_INSTANCE_NOT_EXIST(50001, "process instance {0} does not exist", "工作流實例[{0}]不存在"),
PROCESS_INSTANCE_EXIST(50002, "process instance {0} already exists", "工作流實例[{0}]已存在"),
PROCESS_DEFINE_NOT_EXIST(50003, "process definition {0} does not exist", "工作流定義[{0}]不存在"),
PROCESS_DEFINE_NOT_RELEASE(50004, "process definition {0} not on line", "工作流定義[{0}]不是上線狀態(tài)"),
PROCESS_INSTANCE_ALREADY_CHANGED(50005, "the status of process instance {0} is already {1}", "工作流實例[{0}]的狀態(tài)已經是[{1}]"),
PROCESS_INSTANCE_STATE_OPERATION_ERROR(50006, "the status of process instance {0} is {1},Cannot perform {2} operation", "工作流實例[{0}]的狀態(tài)是[{1}],無法執(zhí)行[{2}]操作"),
SUB_PROCESS_INSTANCE_NOT_EXIST(50007, "the task belong to process instance does not exist", "子工作流實例不存在"),
PROCESS_DEFINE_NOT_ALLOWED_EDIT(50008, "process definition {0} does not allow edit", "工作流定義[{0}]不允許修改"),
PROCESS_INSTANCE_EXECUTING_COMMAND(50009, "process instance {0} is executing the command, please wait ...", "工作流實例[{0}]正在執(zhí)行命令,請稍等..."),
PROCESS_INSTANCE_NOT_SUB_PROCESS_INSTANCE(50010, "process instance {0} is not sub process instance", "工作流實例[{0}]不是子工作流實例"),
TASK_INSTANCE_STATE_COUNT_ERROR(50011,"task instance state count error", "查詢各狀態(tài)任務實例數(shù)錯誤"),
COUNT_PROCESS_INSTANCE_STATE_ERROR(50012,"count process instance state error", "查詢各狀態(tài)流程實例數(shù)錯誤"),
COUNT_PROCESS_DEFINITION_USER_ERROR(50013,"count process definition user error", "查詢各用戶流程定義數(shù)錯誤"),
START_PROCESS_INSTANCE_ERROR(50014,"start process instance error", "運行工作流實例錯誤"),
EXECUTE_PROCESS_INSTANCE_ERROR(50015,"execute process instance error", "操作工作流實例錯誤"),
CHECK_PROCESS_DEFINITION_ERROR(50016,"check process definition error", "檢查工作流實例錯誤"),
QUERY_RECIPIENTS_AND_COPYERS_BY_PROCESS_DEFINITION_ERROR(50017,"query recipients and copyers by process definition error", "查詢收件人和抄送人錯誤"),
DATA_IS_NOT_VALID(50017,"data {0} not valid", "數(shù)據(jù)[{0}]無效"),
DATA_IS_NULL(50018,"data {0} is null", "數(shù)據(jù)[{0}]不能為空"),
PROCESS_NODE_HAS_CYCLE(50019,"process node has cycle", "流程節(jié)點間存在循環(huán)依賴"),
PROCESS_NODE_S_PARAMETER_INVALID(50020,"process node {0} parameter invalid", "流程節(jié)點[{0}]參數(shù)無效"),
PROCESS_DEFINE_STATE_ONLINE(50021, "process definition {0} is already on line", "工作流定義[{0}]已上線"),
DELETE_PROCESS_DEFINE_BY_ID_ERROR(50022,"delete process definition by id error", "刪除工作流定義錯誤"),
SCHEDULE_CRON_STATE_ONLINE(50023,"the status of schedule {0} is already on line", "調度配置[{0}]已上線"),
DELETE_SCHEDULE_CRON_BY_ID_ERROR(50024,"delete schedule by id error", "刪除調度配置錯誤"),
BATCH_DELETE_PROCESS_DEFINE_ERROR(50025,"batch delete process definition error", "批量刪除工作流定義錯誤"),
BATCH_DELETE_PROCESS_DEFINE_BY_IDS_ERROR(50026,"batch delete process definition by ids {0} error", "批量刪除工作流定義[{0}]錯誤"),
TENANT_NOT_SUITABLE(50027,"there is not any tenant suitable, please choose a tenant available.", "沒有合適的租戶,請選擇可用的租戶"),
EXPORT_PROCESS_DEFINE_BY_ID_ERROR(50028,"export process definition by id error", "導出工作流定義錯誤"),
BATCH_EXPORT_PROCESS_DEFINE_BY_IDS_ERROR(50028,"batch export process definition by ids error", "批量導出工作流定義錯誤"),
IMPORT_PROCESS_DEFINE_ERROR(50029,"import process definition error", "導入工作流定義錯誤"),
HDFS_NOT_STARTUP(60001,"hdfs not startup", "hdfs未啟用"),
/**
* for monitor
*/
QUERY_DATABASE_STATE_ERROR(70001,"query database state error", "查詢數(shù)據(jù)庫狀態(tài)錯誤"),
QUERY_ZOOKEEPER_STATE_ERROR(70002,"query zookeeper state error", "查詢zookeeper狀態(tài)錯誤"),
CREATE_ACCESS_TOKEN_ERROR(70010,"create access token error", "創(chuàng)建訪問token錯誤"),
GENERATE_TOKEN_ERROR(70011,"generate token error", "生成token錯誤"),
QUERY_ACCESSTOKEN_LIST_PAGING_ERROR(70012,"query access token list paging error", "分頁查詢訪問token列表錯誤"),
UPDATE_ACCESS_TOKEN_ERROR(70013,"update access token error", "更新訪問token錯誤"),
DELETE_ACCESS_TOKEN_ERROR(70014,"delete access token error", "刪除訪問token錯誤"),
ACCESS_TOKEN_NOT_EXIST(70015, "access token not exist", "訪問token不存在"),
COMMAND_STATE_COUNT_ERROR(80001,"task instance state count error", "查詢各狀態(tài)任務實例數(shù)錯誤"),
QUEUE_COUNT_ERROR(90001,"queue count error", "查詢隊列數(shù)據(jù)錯誤"),
KERBEROS_STARTUP_STATE(100001,"get kerberos startup state error", "獲取kerberos啟動狀態(tài)錯誤"),
;
private final int code;
private final String enMsg;
private final String zhMsg;
private Status(int code, String enMsg, String zhMsg) {
this.code = code;
this.enMsg = enMsg;
this.zhMsg = zhMsg;
}
public int getCode() {
return this.code;
}
public String getMsg() {
if (Locale.SIMPLIFIED_CHINESE.getLanguage().equals(LocaleContextHolder.getLocale().getLanguage())) {
return this.zhMsg;
} else {
return this.enMsg;
}
}
}
@PostMapping("/executeTask")
public Result executeTask() {
String urltoken = "http://192.168.1.163:12345/dolphinscheduler/projects/test-flink/executors/execute";
String token = "6d4240ec549a546560002b581a5dc2d9";
HttpHeaders requestHeaders = new HttpHeaders();
requestHeaders.add("token",token);
//頭部類型
requestHeaders.add("Content-Type", "application/json");
//頭部類型
requestHeaders.setContentType(MediaType.APPLICATION_FORM_URLENCODED);
MultiValueMap<String, Object> requestBody = new LinkedMultiValueMap<>();
requestBody.add("executeType","REPEAT_RUNNING");
requestBody.add("processInstanceId",10);
requestBody.add("projectName","test-flink");
HttpEntity<MultiValueMap> requestEntity = new HttpEntity<MultiValueMap>(requestBody, requestHeaders);
ResponseEntity<Result> resultResponseEntity = RestTemplateUtils.post(urltoken, requestEntity, Result.class,requestBody);
return resultResponseEntity.getBody();
}
get 請求
@GetMapping("/getToken")
public Result getToken(HttpServletRequest request) {
String urltoken = "http://192.168.1.163:12345/dolphinscheduler/access-token/list-paging?pageNo=1&pageSize=10";
String token = "6d4240ec549a546560002b581a5dc2d9";
HttpHeaders requestHeaders = new HttpHeaders();
requestHeaders.add("token",token);
requestHeaders.add("Content-Type", "application/json");
MultiValueMap<String,Object> requestBodyParamMap=new LinkedMultiValueMap<>(5);
requestBodyParamMap.add("pageNo",1);
requestBodyParamMap.add("pageSize",10);
ResponseEntity<Result> resultResponseEntity = RestTemplateUtils.get(urltoken, requestHeaders, Result.class, requestBodyParamMap);
return resultResponseEntity.getBody();
}