feat: add SleepProcessor

This commit is contained in:
tjq 2021-04-11 23:20:31 +08:00
parent 542f94d9aa
commit ee2bb72718
7 changed files with 50 additions and 12 deletions

View File

@ -8,7 +8,7 @@ import tech.powerjob.worker.log.OmsLogger;
import com.google.common.base.Stopwatch; import com.google.common.base.Stopwatch;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
import org.apache.commons.lang3.exception.ExceptionUtils; import org.apache.commons.lang3.exception.ExceptionUtils;
import tech.powerjob.official.processors.util.CommonUtils; import tech.powerjob.official.processors.util.SimpleUtils;
/** /**
* CommonBasicProcessor * CommonBasicProcessor
@ -33,7 +33,7 @@ public abstract class CommonBasicProcessor implements BasicProcessor {
String status = "unknown"; String status = "unknown";
Stopwatch sw = Stopwatch.createStarted(); Stopwatch sw = Stopwatch.createStarted();
omsLogger.info("using params: {}", CommonUtils.parseParams(ctx)); omsLogger.info("using params: {}", SimpleUtils.parseParams(ctx));
try { try {
ProcessResult result = process0(ctx); ProcessResult result = process0(ctx);

View File

@ -10,7 +10,7 @@ import lombok.Data;
import okhttp3.*; import okhttp3.*;
import org.apache.commons.lang3.StringUtils; import org.apache.commons.lang3.StringUtils;
import tech.powerjob.official.processors.CommonBasicProcessor; import tech.powerjob.official.processors.CommonBasicProcessor;
import tech.powerjob.official.processors.util.CommonUtils; import tech.powerjob.official.processors.util.SimpleUtils;
import java.time.Duration; import java.time.Duration;
import java.util.Map; import java.util.Map;
@ -36,7 +36,7 @@ public class HttpProcessor extends CommonBasicProcessor {
@Override @Override
public ProcessResult process0(TaskContext taskContext) throws Exception { public ProcessResult process0(TaskContext taskContext) throws Exception {
OmsLogger omsLogger = taskContext.getOmsLogger(); OmsLogger omsLogger = taskContext.getOmsLogger();
HttpParams httpParams = JSON.parseObject(CommonUtils.parseParams(taskContext), HttpParams.class); HttpParams httpParams = JSON.parseObject(SimpleUtils.parseParams(taskContext), HttpParams.class);
if (httpParams == null) { if (httpParams == null) {
String message = "httpParams is null, please check jobParam configuration."; String message = "httpParams is null, please check jobParam configuration.";

View File

@ -0,0 +1,38 @@
package tech.powerjob.official.processors.impl;
import com.alibaba.fastjson.JSONObject;
import com.google.common.base.Stopwatch;
import lombok.Data;
import tech.powerjob.common.utils.CommonUtils;
import tech.powerjob.official.processors.CommonBasicProcessor;
import tech.powerjob.official.processors.util.SimpleUtils;
import tech.powerjob.worker.core.processor.ProcessResult;
import tech.powerjob.worker.core.processor.TaskContext;
/**
* just sleep and wait time flies
* eg, can use for workflow delay process
*
* @author KFC·D·Fans
* @since 2021/4/11
*/
public class SleepProcessor extends CommonBasicProcessor {
@Override
protected ProcessResult process0(TaskContext ctx) throws Exception {
Stopwatch sw = Stopwatch.createStarted();
SleepParams sleepParams = JSONObject.parseObject(SimpleUtils.parseParams(ctx), SleepParams.class);
if (sleepParams.sleepMillions != null) {
CommonUtils.easySleep(sleepParams.sleepMillions);
}
return new ProcessResult(true, "total sleep: " + sw.toString());
}
@Data
public static class SleepParams {
private Long sleepMillions;
}
}

View File

@ -9,7 +9,7 @@ import org.apache.commons.io.FileUtils;
import org.apache.commons.lang3.StringUtils; import org.apache.commons.lang3.StringUtils;
import org.apache.commons.lang3.SystemUtils; import org.apache.commons.lang3.SystemUtils;
import tech.powerjob.official.processors.CommonBasicProcessor; import tech.powerjob.official.processors.CommonBasicProcessor;
import tech.powerjob.official.processors.util.CommonUtils; import tech.powerjob.official.processors.util.SimpleUtils;
import java.io.*; import java.io.*;
import java.net.URL; import java.net.URL;
@ -36,7 +36,7 @@ public abstract class AbstractScriptProcessor extends CommonBasicProcessor {
@Override @Override
protected ProcessResult process0(TaskContext context) throws Exception { protected ProcessResult process0(TaskContext context) throws Exception {
OmsLogger omsLogger = context.getOmsLogger(); OmsLogger omsLogger = context.getOmsLogger();
String scriptParams = CommonUtils.parseParams(context); String scriptParams = SimpleUtils.parseParams(context);
omsLogger.info("[SYSTEM] ScriptProcessor start to process, params: {}", scriptParams); omsLogger.info("[SYSTEM] ScriptProcessor start to process, params: {}", scriptParams);
if (scriptParams == null) { if (scriptParams == null) {
String message = "[SYSTEM] ScriptParams is null, please check jobParam configuration."; String message = "[SYSTEM] ScriptParams is null, please check jobParam configuration.";

View File

@ -9,7 +9,7 @@ import lombok.SneakyThrows;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
import org.springframework.util.StopWatch; import org.springframework.util.StopWatch;
import tech.powerjob.official.processors.CommonBasicProcessor; import tech.powerjob.official.processors.CommonBasicProcessor;
import tech.powerjob.official.processors.util.CommonUtils; import tech.powerjob.official.processors.util.SimpleUtils;
import tech.powerjob.worker.core.processor.ProcessResult; import tech.powerjob.worker.core.processor.ProcessResult;
import tech.powerjob.worker.core.processor.TaskContext; import tech.powerjob.worker.core.processor.TaskContext;
import tech.powerjob.worker.log.OmsLogger; import tech.powerjob.worker.log.OmsLogger;
@ -173,7 +173,7 @@ public abstract class AbstractSqlProcessor extends CommonBasicProcessor {
* @return SqlParams * @return SqlParams
*/ */
protected SqlParams extractParams(TaskContext taskContext) { protected SqlParams extractParams(TaskContext taskContext) {
return JSON.parseObject(CommonUtils.parseParams(taskContext), SqlParams.class); return JSON.parseObject(SimpleUtils.parseParams(taskContext), SqlParams.class);
} }
/** /**

View File

@ -2,7 +2,7 @@ package tech.powerjob.official.processors.impl.sql;
import com.alibaba.fastjson.JSONObject; import com.alibaba.fastjson.JSONObject;
import org.apache.commons.lang3.StringUtils; import org.apache.commons.lang3.StringUtils;
import tech.powerjob.official.processors.util.CommonUtils; import tech.powerjob.official.processors.util.SimpleUtils;
import tech.powerjob.official.processors.util.SecurityUtils; import tech.powerjob.official.processors.util.SecurityUtils;
import tech.powerjob.worker.core.processor.TaskContext; import tech.powerjob.worker.core.processor.TaskContext;
@ -29,7 +29,7 @@ public class DynamicDatasourceSqlProcessor extends AbstractSqlProcessor {
@Override @Override
Connection getConnection(SqlParams sqlParams, TaskContext taskContext) throws SQLException { Connection getConnection(SqlParams sqlParams, TaskContext taskContext) throws SQLException {
JSONObject params = JSONObject.parseObject(CommonUtils.parseParams(taskContext)); JSONObject params = JSONObject.parseObject(SimpleUtils.parseParams(taskContext));
Properties properties = new Properties(); Properties properties = new Properties();
// normally at least a "user" and "password" property should be included // normally at least a "user" and "password" property should be included

View File

@ -9,9 +9,9 @@ import org.apache.commons.lang3.StringUtils;
* @author tjq * @author tjq
* @since 2021/2/1 * @since 2021/2/1
*/ */
public class CommonUtils { public class SimpleUtils {
private CommonUtils() { private SimpleUtils() {
} }