diff --git a/xxl-job-admin/src/main/java/com/xxl/job/admin/business/controller/JobLogController.java b/xxl-job-admin/src/main/java/com/xxl/job/admin/business/controller/JobLogController.java index 34fac9c7..bece6c69 100644 --- a/xxl-job-admin/src/main/java/com/xxl/job/admin/business/controller/JobLogController.java +++ b/xxl-job-admin/src/main/java/com/xxl/job/admin/business/controller/JobLogController.java @@ -16,7 +16,7 @@ import com.xxl.job.core.context.XxlJobContext; import com.xxl.job.core.openapi.executor.ExecutorBiz; import com.xxl.job.core.openapi.executor.dto.KillRequest; import com.xxl.job.core.openapi.executor.dto.LogRequest; -import com.xxl.job.core.openapi.executor.dto.LogResult; +import com.xxl.job.core.openapi.executor.dto.LogData; import com.xxl.tool.core.CollectionTool; import com.xxl.tool.core.DateTool; import com.xxl.tool.core.StringTool; @@ -284,9 +284,9 @@ public class JobLogController { @RequestMapping("/logDetailCat") @ResponseBody - public Response logDetailCat(HttpServletRequest request, - @RequestParam("logId") long logId, - @RequestParam("fromLineNum") int fromLineNum){ + public Response logDetailCat(HttpServletRequest request, + @RequestParam("logId") long logId, + @RequestParam("fromLineNum") int fromLineNum){ try { // valid XxlJobLog jobLog = xxlJobLogMapper.load(logId); @@ -299,7 +299,7 @@ public class JobLogController { // log cat ExecutorBiz executorBiz = XxlJobAdminBootstrap.getExecutorBiz(jobLog.getExecutorAddress()); - Response logResult = executorBiz.log(new LogRequest(jobLog.getTriggerTime().getTime(), logId, fromLineNum)); + Response logResult = executorBiz.log(new LogRequest(logId, jobLog.getTriggerTime().getTime(), fromLineNum)); // is end if (logResult.getData()!=null && logResult.getData().getFromLineNum() > logResult.getData().getToLineNum()) { diff --git a/xxl-job-admin/src/main/java/com/xxl/job/admin/business/scheduler/openapi/OpenApiController.java b/xxl-job-admin/src/main/java/com/xxl/job/admin/business/scheduler/openapi/OpenApiController.java index 8c143ec1..61eaf45f 100644 --- a/xxl-job-admin/src/main/java/com/xxl/job/admin/business/scheduler/openapi/OpenApiController.java +++ b/xxl-job-admin/src/main/java/com/xxl/job/admin/business/scheduler/openapi/OpenApiController.java @@ -14,8 +14,6 @@ import jakarta.servlet.http.HttpServletRequest; import org.springframework.stereotype.Controller; import org.springframework.web.bind.annotation.*; -import java.util.List; - /** * Created by xuxueli on 17/5/10. */ @@ -57,8 +55,8 @@ public class OpenApiController { try { switch (uri) { case "callback": { - List callbackParamList = GsonTool.fromJson(requestBody, List.class, CallbackRequest.class); - return adminBiz.callback(callbackParamList); + CallbackRequest callbackParam = GsonTool.fromJson(requestBody, CallbackRequest.class); + return adminBiz.callback(callbackParam); } case "registry": { RegistryRequest registryParam = GsonTool.fromJson(requestBody, RegistryRequest.class); diff --git a/xxl-job-admin/src/main/java/com/xxl/job/admin/business/scheduler/thread/JobCompleteHelper.java b/xxl-job-admin/src/main/java/com/xxl/job/admin/business/scheduler/thread/JobCompleteHelper.java index ebad9339..79f497e2 100644 --- a/xxl-job-admin/src/main/java/com/xxl/job/admin/business/scheduler/thread/JobCompleteHelper.java +++ b/xxl-job-admin/src/main/java/com/xxl/job/admin/business/scheduler/thread/JobCompleteHelper.java @@ -4,7 +4,7 @@ import com.xxl.job.admin.business.model.XxlJobLog; import com.xxl.job.admin.business.scheduler.config.XxlJobAdminBootstrap; import com.xxl.job.admin.framework.util.I18nUtil; import com.xxl.job.core.context.XxlJobContext; -import com.xxl.job.core.openapi.admin.dto.CallbackRequest; +import com.xxl.job.core.openapi.admin.dto.CallbackData; import com.xxl.tool.concurrent.CyclicThread; import com.xxl.tool.core.DateTool; import com.xxl.tool.response.Response; @@ -104,12 +104,12 @@ public class JobCompleteHelper { * @param callbackParamList callback param * @return callback result */ - public Response callback(List callbackParamList) { + public Response callback(List callbackParamList) { callbackThreadPool.execute(new Runnable() { @Override public void run() { - for (CallbackRequest callbackRequest: callbackParamList) { + for (CallbackData callbackRequest: callbackParamList) { Response callbackResult = doCallback(callbackRequest); logger.debug(">>>>>>>>> JobApiController.callback {}, callbackRequest={}, callbackResult={}", (callbackResult.isSuccess()?"success":"fail"), callbackRequest, callbackResult); @@ -120,7 +120,7 @@ public class JobCompleteHelper { return Response.ofSuccess(); } - private Response doCallback(CallbackRequest handleCallbackParam) { + private Response doCallback(CallbackData handleCallbackParam) { // valid log item XxlJobLog log = XxlJobAdminBootstrap.getInstance().getXxlJobLogMapper().load(handleCallbackParam.getLogId()); if (log == null) { diff --git a/xxl-job-admin/src/main/java/com/xxl/job/admin/business/scheduler/trigger/JobTrigger.java b/xxl-job-admin/src/main/java/com/xxl/job/admin/business/scheduler/trigger/JobTrigger.java index 2d998d02..2ed506cb 100644 --- a/xxl-job-admin/src/main/java/com/xxl/job/admin/business/scheduler/trigger/JobTrigger.java +++ b/xxl-job-admin/src/main/java/com/xxl/job/admin/business/scheduler/trigger/JobTrigger.java @@ -261,7 +261,7 @@ public class JobTrigger { ExecutorBiz executorBiz = XxlJobAdminBootstrap.getExecutorBiz(address); // invoke - Response runResult = executorBiz.run(triggerParam); + Response runResult = executorBiz.trigger(triggerParam); // build result StringBuffer runResultSB = new StringBuffer(I18nUtil.getString("jobconf_trigger_run") + ":"); diff --git a/xxl-job-admin/src/main/java/com/xxl/job/admin/business/service/impl/AdminBizImpl.java b/xxl-job-admin/src/main/java/com/xxl/job/admin/business/service/impl/AdminBizImpl.java index 6509a3f6..4642564c 100644 --- a/xxl-job-admin/src/main/java/com/xxl/job/admin/business/service/impl/AdminBizImpl.java +++ b/xxl-job-admin/src/main/java/com/xxl/job/admin/business/service/impl/AdminBizImpl.java @@ -7,8 +7,6 @@ import com.xxl.job.core.openapi.admin.dto.RegistryRequest; import com.xxl.tool.response.Response; import org.springframework.stereotype.Service; -import java.util.List; - /** * @author xuxueli 2017-07-27 21:54:20 */ @@ -16,8 +14,8 @@ import java.util.List; public class AdminBizImpl implements AdminBiz { @Override - public Response callback(List callbackRequestList) { - return XxlJobAdminBootstrap.getInstance().getJobCompleteHelper().callback(callbackRequestList); + public Response callback(CallbackRequest callbackRequest) { + return XxlJobAdminBootstrap.getInstance().getJobCompleteHelper().callback(callbackRequest.getCallbackList()); } @Override diff --git a/xxl-job-admin/src/test/java/com/xxl/job/openapi/AdminBizTest.java b/xxl-job-admin/src/test/java/com/xxl/job/openapi/AdminBizTest.java index 7e1c4780..7a84257f 100644 --- a/xxl-job-admin/src/test/java/com/xxl/job/openapi/AdminBizTest.java +++ b/xxl-job-admin/src/test/java/com/xxl/job/openapi/AdminBizTest.java @@ -2,6 +2,7 @@ package com.xxl.job.openapi; import com.xxl.job.core.constant.RegistTypeEnum; import com.xxl.job.core.openapi.admin.AdminBiz; +import com.xxl.job.core.openapi.admin.dto.CallbackData; import com.xxl.job.core.openapi.admin.dto.CallbackRequest; import com.xxl.job.core.openapi.admin.dto.RegistryRequest; import com.xxl.job.core.context.XxlJobContext; @@ -42,13 +43,13 @@ public class AdminBizTest { public void callback() throws Exception { AdminBiz adminBiz = buildClient(); - CallbackRequest param = new CallbackRequest(); + CallbackData param = new CallbackData(); param.setLogId(1); param.setHandleCode(XxlJobContext.HANDLE_CODE_SUCCESS); - List callbackParamList = Arrays.asList(param); + CallbackRequest callbackParam = new CallbackRequest(List.of(param)); - Response returnT = adminBiz.callback(callbackParamList); + Response returnT = adminBiz.callback(callbackParam); assertTrue(returnT.isSuccess()); } diff --git a/xxl-job-admin/src/test/java/com/xxl/job/openapi/ExecutorBizTest.java b/xxl-job-admin/src/test/java/com/xxl/job/openapi/ExecutorBizTest.java index 24205ce9..d2d03520 100644 --- a/xxl-job-admin/src/test/java/com/xxl/job/openapi/ExecutorBizTest.java +++ b/xxl-job-admin/src/test/java/com/xxl/job/openapi/ExecutorBizTest.java @@ -61,7 +61,7 @@ public class ExecutorBizTest { } @Test - public void run(){ + public void trigger(){ ExecutorBiz executorBiz = buildClient(); // trigger data @@ -77,7 +77,7 @@ public class ExecutorBizTest { triggerParam.setLogDateTime(System.currentTimeMillis()); // Act - final Response retval = executorBiz.run(triggerParam); + final Response retval = executorBiz.trigger(triggerParam); // Assert result Assertions.assertNotNull(retval); @@ -104,12 +104,12 @@ public class ExecutorBizTest { public void log(){ ExecutorBiz executorBiz = buildClient(); - final long logDateTim = 0L; final long logId = 0; + final long logDateTim = 0L; final int fromLineNum = 0; // Act - final Response retval = executorBiz.log(new LogRequest(logDateTim, logId, fromLineNum)); + final Response retval = executorBiz.log(new LogRequest(logId, logDateTim, fromLineNum)); // Assert result Assertions.assertNotNull(retval); diff --git a/xxl-job-core/src/main/java/com/xxl/job/core/log/XxlJobFileAppender.java b/xxl-job-core/src/main/java/com/xxl/job/core/log/XxlJobFileAppender.java index d4b1e62f..b5f488c7 100644 --- a/xxl-job-core/src/main/java/com/xxl/job/core/log/XxlJobFileAppender.java +++ b/xxl-job-core/src/main/java/com/xxl/job/core/log/XxlJobFileAppender.java @@ -1,6 +1,6 @@ package com.xxl.job.core.log; -import com.xxl.job.core.openapi.executor.dto.LogResult; +import com.xxl.job.core.openapi.executor.dto.LogData; import com.xxl.tool.core.DateTool; import com.xxl.tool.core.StringTool; import com.xxl.tool.io.FileTool; @@ -123,14 +123,14 @@ public class XxlJobFileAppender { * @param fromLineNum from line num * @return log content */ - public static LogResult readLog(String logFileName, final int fromLineNum){ + public static LogData readLog(String logFileName, final int fromLineNum){ // valid if (StringTool.isBlank(logFileName)) { - return new LogResult(fromLineNum, 0, "readLog fail, logFile not found", true); + return new LogData(fromLineNum, 0, "readLog fail, logFile not found", true); } if (!FileTool.exists(logFileName)) { - return new LogResult(fromLineNum, 0, "readLog fail, logFile not exists", true); + return new LogData(fromLineNum, 0, "readLog fail, logFile not exists", true); } // read data @@ -168,7 +168,7 @@ public class XxlJobFileAppender { } // result - return new LogResult(fromLineNum, toLineNum.get(), logContentBuilder.toString(), false); + return new LogData(fromLineNum, toLineNum.get(), logContentBuilder.toString(), false); } } diff --git a/xxl-job-core/src/main/java/com/xxl/job/core/openapi/admin/AdminBiz.java b/xxl-job-core/src/main/java/com/xxl/job/core/openapi/admin/AdminBiz.java index a165a660..227714fb 100644 --- a/xxl-job-core/src/main/java/com/xxl/job/core/openapi/admin/AdminBiz.java +++ b/xxl-job-core/src/main/java/com/xxl/job/core/openapi/admin/AdminBiz.java @@ -4,8 +4,6 @@ import com.xxl.job.core.openapi.admin.dto.CallbackRequest; import com.xxl.job.core.openapi.admin.dto.RegistryRequest; import com.xxl.tool.response.Response; -import java.util.List; - /** * @author xuxueli 2017-07-27 21:52:49 */ @@ -17,10 +15,10 @@ public interface AdminBiz { /** * callback * - * @param callbackRequestList callback request list + * @param callbackRequest callback request * @return response */ - public Response callback(List callbackRequestList); + public Response callback(CallbackRequest callbackRequest); // ---------------------- registry ---------------------- diff --git a/xxl-job-core/src/main/java/com/xxl/job/core/openapi/admin/dto/CallbackData.java b/xxl-job-core/src/main/java/com/xxl/job/core/openapi/admin/dto/CallbackData.java new file mode 100644 index 00000000..66e55f7d --- /dev/null +++ b/xxl-job-core/src/main/java/com/xxl/job/core/openapi/admin/dto/CallbackData.java @@ -0,0 +1,67 @@ +package com.xxl.job.core.openapi.admin.dto; + +import java.io.Serializable; + +/** + * Created by xuxueli on 17/3/2. + */ +public class CallbackData implements Serializable { + private static final long serialVersionUID = 42L; + + private long logId; + private long logDateTime; + + private int handleCode; + private String handleMsg; + + public CallbackData(){} + public CallbackData(long logId, long logDateTime, int handleCode, String handleMsg) { + this.logId = logId; + this.logDateTime = logDateTime; + this.handleCode = handleCode; + this.handleMsg = handleMsg; + } + + public long getLogId() { + return logId; + } + + public void setLogId(long logId) { + this.logId = logId; + } + + public long getLogDateTime() { + return logDateTime; + } + + public void setLogDateTime(long logDateTime) { + this.logDateTime = logDateTime; + } + + public int getHandleCode() { + return handleCode; + } + + public void setHandleCode(int handleCode) { + this.handleCode = handleCode; + } + + public String getHandleMsg() { + return handleMsg; + } + + public void setHandleMsg(String handleMsg) { + this.handleMsg = handleMsg; + } + + @Override + public String toString() { + return "CallbackRequest{" + + "logId=" + logId + + ", logDateTime=" + logDateTime + + ", handleCode=" + handleCode + + ", handleMsg='" + handleMsg + '\'' + + '}'; + } + +} diff --git a/xxl-job-core/src/main/java/com/xxl/job/core/openapi/admin/dto/CallbackRequest.java b/xxl-job-core/src/main/java/com/xxl/job/core/openapi/admin/dto/CallbackRequest.java index 74ff1cf4..f0cb3407 100644 --- a/xxl-job-core/src/main/java/com/xxl/job/core/openapi/admin/dto/CallbackRequest.java +++ b/xxl-job-core/src/main/java/com/xxl/job/core/openapi/admin/dto/CallbackRequest.java @@ -1,66 +1,32 @@ package com.xxl.job.core.openapi.admin.dto; import java.io.Serializable; +import java.util.List; -/** - * Created by xuxueli on 17/3/2. - */ public class CallbackRequest implements Serializable { private static final long serialVersionUID = 42L; - private long logId; - private long logDateTime; + private List callbackList; - private int handleCode; - private String handleMsg; - - public CallbackRequest(){} - public CallbackRequest(long logId, long logDateTime, int handleCode, String handleMsg) { - this.logId = logId; - this.logDateTime = logDateTime; - this.handleCode = handleCode; - this.handleMsg = handleMsg; - } - - public long getLogId() { - return logId; - } - - public void setLogId(long logId) { - this.logId = logId; - } - - public long getLogDateTime() { - return logDateTime; - } - - public void setLogDateTime(long logDateTime) { - this.logDateTime = logDateTime; - } - - public int getHandleCode() { - return handleCode; + public CallbackRequest() { } - public void setHandleCode(int handleCode) { - this.handleCode = handleCode; + public CallbackRequest(List callbackList) { + this.callbackList = callbackList; } - public String getHandleMsg() { - return handleMsg; + public List getCallbackList() { + return callbackList; } - public void setHandleMsg(String handleMsg) { - this.handleMsg = handleMsg; + public void setCallbackList(List callbackList) { + this.callbackList = callbackList; } @Override public String toString() { return "CallbackRequest{" + - "logId=" + logId + - ", logDateTime=" + logDateTime + - ", handleCode=" + handleCode + - ", handleMsg='" + handleMsg + '\'' + + "callbackList=" + callbackList + '}'; } diff --git a/xxl-job-core/src/main/java/com/xxl/job/core/openapi/executor/ExecutorBiz.java b/xxl-job-core/src/main/java/com/xxl/job/core/openapi/executor/ExecutorBiz.java index da3e5d2a..a235c8ae 100644 --- a/xxl-job-core/src/main/java/com/xxl/job/core/openapi/executor/ExecutorBiz.java +++ b/xxl-job-core/src/main/java/com/xxl/job/core/openapi/executor/ExecutorBiz.java @@ -29,7 +29,7 @@ public interface ExecutorBiz { * @param triggerRequest triggerRequest * @return response */ - public Response run(TriggerRequest triggerRequest); + public Response trigger(TriggerRequest triggerRequest); /** * kill @@ -45,6 +45,6 @@ public interface ExecutorBiz { * @param logRequest logRequest * @return response */ - public Response log(LogRequest logRequest); + public Response log(LogRequest logRequest); } diff --git a/xxl-job-core/src/main/java/com/xxl/job/core/openapi/executor/dto/IdleBeatRequest.java b/xxl-job-core/src/main/java/com/xxl/job/core/openapi/executor/dto/IdleBeatRequest.java index 6a047e4d..a3db0356 100644 --- a/xxl-job-core/src/main/java/com/xxl/job/core/openapi/executor/dto/IdleBeatRequest.java +++ b/xxl-job-core/src/main/java/com/xxl/job/core/openapi/executor/dto/IdleBeatRequest.java @@ -8,15 +8,14 @@ import java.io.Serializable; public class IdleBeatRequest implements Serializable { private static final long serialVersionUID = 42L; + private int jobId; + public IdleBeatRequest() { } public IdleBeatRequest(int jobId) { this.jobId = jobId; } - private int jobId; - - public int getJobId() { return jobId; } diff --git a/xxl-job-core/src/main/java/com/xxl/job/core/openapi/executor/dto/KillRequest.java b/xxl-job-core/src/main/java/com/xxl/job/core/openapi/executor/dto/KillRequest.java index 9dd99d19..abbb7820 100644 --- a/xxl-job-core/src/main/java/com/xxl/job/core/openapi/executor/dto/KillRequest.java +++ b/xxl-job-core/src/main/java/com/xxl/job/core/openapi/executor/dto/KillRequest.java @@ -8,15 +8,14 @@ import java.io.Serializable; public class KillRequest implements Serializable { private static final long serialVersionUID = 42L; + private int jobId; + public KillRequest() { } public KillRequest(int jobId) { this.jobId = jobId; } - private int jobId; - - public int getJobId() { return jobId; } diff --git a/xxl-job-core/src/main/java/com/xxl/job/core/openapi/executor/dto/LogResult.java b/xxl-job-core/src/main/java/com/xxl/job/core/openapi/executor/dto/LogData.java similarity index 86% rename from xxl-job-core/src/main/java/com/xxl/job/core/openapi/executor/dto/LogResult.java rename to xxl-job-core/src/main/java/com/xxl/job/core/openapi/executor/dto/LogData.java index 9d43fc7f..f1c9266e 100644 --- a/xxl-job-core/src/main/java/com/xxl/job/core/openapi/executor/dto/LogResult.java +++ b/xxl-job-core/src/main/java/com/xxl/job/core/openapi/executor/dto/LogData.java @@ -5,7 +5,7 @@ import java.io.Serializable; /** * Created by xuxueli on 17/3/23. */ -public class LogResult implements Serializable { +public class LogData implements Serializable { private static final long serialVersionUID = 42L; private int fromLineNum; @@ -13,9 +13,9 @@ public class LogResult implements Serializable { private String logContent; private boolean isEnd; - public LogResult() { + public LogData() { } - public LogResult(int fromLineNum, int toLineNum, String logContent, boolean isEnd) { + public LogData(int fromLineNum, int toLineNum, String logContent, boolean isEnd) { this.fromLineNum = fromLineNum; this.toLineNum = toLineNum; this.logContent = logContent; diff --git a/xxl-job-core/src/main/java/com/xxl/job/core/openapi/executor/dto/LogRequest.java b/xxl-job-core/src/main/java/com/xxl/job/core/openapi/executor/dto/LogRequest.java index 78cd17b1..082e4d64 100644 --- a/xxl-job-core/src/main/java/com/xxl/job/core/openapi/executor/dto/LogRequest.java +++ b/xxl-job-core/src/main/java/com/xxl/job/core/openapi/executor/dto/LogRequest.java @@ -8,18 +8,18 @@ import java.io.Serializable; public class LogRequest implements Serializable { private static final long serialVersionUID = 42L; + private long logId; + private long logDateTime; + private int fromLineNum; + public LogRequest() { } - public LogRequest(long logDateTime, long logId, int fromLineNum) { - this.logDateTime = logDateTime; + public LogRequest(long logId, long logDateTime, int fromLineNum) { this.logId = logId; + this.logDateTime = logDateTime; this.fromLineNum = fromLineNum; } - private long logDateTime; - private long logId; - private int fromLineNum; - public long getLogDateTime() { return logDateTime; } diff --git a/xxl-job-core/src/main/java/com/xxl/job/core/openapi/executor/impl/ExecutorBizImpl.java b/xxl-job-core/src/main/java/com/xxl/job/core/openapi/executor/impl/ExecutorBizImpl.java index be978b5f..f7bb7e0f 100644 --- a/xxl-job-core/src/main/java/com/xxl/job/core/openapi/executor/impl/ExecutorBizImpl.java +++ b/xxl-job-core/src/main/java/com/xxl/job/core/openapi/executor/impl/ExecutorBizImpl.java @@ -46,7 +46,7 @@ public class ExecutorBizImpl implements ExecutorBiz { } @Override - public Response run(TriggerRequest triggerRequest) { + public Response trigger(TriggerRequest triggerRequest) { // load job info:jobHandler + jobThread + glueTypeEnum JobThread jobThread = XxlJobExecutor.getInstance().loadJobThread(triggerRequest.getJobId()); @@ -172,11 +172,11 @@ public class ExecutorBizImpl implements ExecutorBiz { } @Override - public Response log(LogRequest logRequest) { + public Response log(LogRequest logRequest) { // log filename: logPath/yyyy-MM-dd/9999.log String logFileName = XxlJobFileAppender.makeLogFileName(new Date(logRequest.getLogDateTime()), logRequest.getLogId()); - LogResult logResult = XxlJobFileAppender.readLog(logFileName, logRequest.getFromLineNum()); + LogData logResult = XxlJobFileAppender.readLog(logFileName, logRequest.getFromLineNum()); return Response.ofSuccess(logResult); } diff --git a/xxl-job-core/src/main/java/com/xxl/job/core/server/EmbedServer.java b/xxl-job-core/src/main/java/com/xxl/job/core/server/EmbedServer.java index 46d25a75..e50258c2 100644 --- a/xxl-job-core/src/main/java/com/xxl/job/core/server/EmbedServer.java +++ b/xxl-job-core/src/main/java/com/xxl/job/core/server/EmbedServer.java @@ -203,7 +203,7 @@ public class EmbedServer { return executorBiz.idleBeat(idleBeatParam); case "/run": TriggerRequest triggerParam = GsonTool.fromJson(requestData, TriggerRequest.class); - return executorBiz.run(triggerParam); + return executorBiz.trigger(triggerParam); case "/kill": KillRequest killParam = GsonTool.fromJson(requestData, KillRequest.class); return executorBiz.kill(killParam); diff --git a/xxl-job-core/src/main/java/com/xxl/job/core/thread/JobThread.java b/xxl-job-core/src/main/java/com/xxl/job/core/thread/JobThread.java index 077d3069..8f7005f5 100644 --- a/xxl-job-core/src/main/java/com/xxl/job/core/thread/JobThread.java +++ b/xxl-job-core/src/main/java/com/xxl/job/core/thread/JobThread.java @@ -1,6 +1,6 @@ package com.xxl.job.core.thread; -import com.xxl.job.core.openapi.admin.dto.CallbackRequest; +import com.xxl.job.core.openapi.admin.dto.CallbackData; import com.xxl.job.core.openapi.executor.dto.TriggerRequest; import com.xxl.job.core.context.XxlJobContext; import com.xxl.job.core.context.XxlJobHelper; @@ -202,7 +202,7 @@ public class JobThread extends Thread{ // callback handler info if (!toStop) { // common - XxlJobExecutor.getInstance().getTriggerCallbackThreadHelper().pushCallBack(new CallbackRequest( + XxlJobExecutor.getInstance().getTriggerCallbackThreadHelper().pushCallBack(new CallbackData( triggerParam.getLogId(), triggerParam.getLogDateTime(), XxlJobContext.getXxlJobContext().getHandleCode(), @@ -210,7 +210,7 @@ public class JobThread extends Thread{ ); } else { // is killed - XxlJobExecutor.getInstance().getTriggerCallbackThreadHelper().pushCallBack(new CallbackRequest( + XxlJobExecutor.getInstance().getTriggerCallbackThreadHelper().pushCallBack(new CallbackData( triggerParam.getLogId(), triggerParam.getLogDateTime(), XxlJobContext.HANDLE_CODE_FAIL, @@ -226,7 +226,7 @@ public class JobThread extends Thread{ TriggerRequest triggerParam = triggerQueue.poll(); if (triggerParam!=null) { // is killed - XxlJobExecutor.getInstance().getTriggerCallbackThreadHelper().pushCallBack(new CallbackRequest( + XxlJobExecutor.getInstance().getTriggerCallbackThreadHelper().pushCallBack(new CallbackData( triggerParam.getLogId(), triggerParam.getLogDateTime(), XxlJobContext.HANDLE_CODE_FAIL, diff --git a/xxl-job-core/src/main/java/com/xxl/job/core/thread/TriggerCallbackThreadHelper.java b/xxl-job-core/src/main/java/com/xxl/job/core/thread/TriggerCallbackThreadHelper.java index 083d346e..e5f2e48c 100644 --- a/xxl-job-core/src/main/java/com/xxl/job/core/thread/TriggerCallbackThreadHelper.java +++ b/xxl-job-core/src/main/java/com/xxl/job/core/thread/TriggerCallbackThreadHelper.java @@ -6,6 +6,7 @@ import com.xxl.job.core.context.XxlJobHelper; import com.xxl.job.core.executor.XxlJobExecutor; import com.xxl.job.core.log.XxlJobFileAppender; import com.xxl.job.core.openapi.admin.AdminBiz; +import com.xxl.job.core.openapi.admin.dto.CallbackData; import com.xxl.job.core.openapi.admin.dto.CallbackRequest; import com.xxl.tool.concurrent.CyclicThread; import com.xxl.tool.concurrent.MessageQueue; @@ -38,7 +39,7 @@ public class TriggerCallbackThreadHelper { /** * callback message-queue */ - private volatile MessageQueue callbackMessageQueue; + private volatile MessageQueue callbackMessageQueue; /** * retry callback-file thread @@ -61,7 +62,7 @@ public class TriggerCallbackThreadHelper { /** * 1、callback message-queue */ - callbackMessageQueue = new MessageQueue( + callbackMessageQueue = new MessageQueue( "TriggerCallbackThreadHelper#callbackMessageQueue", messages -> { @@ -104,7 +105,7 @@ public class TriggerCallbackThreadHelper { } // parse callback param - List callbackParamList = GsonTool.fromJsonList(callbackData, CallbackRequest.class); + List callbackParamList = GsonTool.fromJsonList(callbackData, CallbackData.class); FileTool.delete(callbackLogFile); // retry callback @@ -138,7 +139,7 @@ public class TriggerCallbackThreadHelper { /** * submit callback message */ - public void pushCallBack(CallbackRequest callback){ + public void pushCallBack(CallbackData callback){ if (!callbackMessageQueue.produce(callback)) { doCallback(new ArrayList<>(Collections.singletonList(callback)), XxlJobExecutor.getInstance()); } @@ -151,38 +152,38 @@ public class TriggerCallbackThreadHelper { /** * do callback, will retry if error * - * @param callbackParamList callback param list + * @param callbackDataList callback data list */ - private void doCallback(List callbackParamList, final XxlJobExecutor xxlJobExecutor){ + private void doCallback(List callbackDataList, final XxlJobExecutor xxlJobExecutor){ boolean callbackRet = false; // callback request, will retry + append-log if fail for (AdminBiz adminBiz: xxlJobExecutor.getAdminBizList()) { try { - Response callbackResult = adminBiz.callback(callbackParamList); + Response callbackResult = adminBiz.callback(new CallbackRequest(callbackDataList)); if (callbackResult!=null && callbackResult.isSuccess()) { - appendCallbackResult(callbackParamList, "
----------- xxl-job job callback finish."); + appendCallbackResult(callbackDataList, "
----------- xxl-job job callback finish."); callbackRet = true; break; } else { - appendCallbackResult(callbackParamList, "
----------- xxl-job job callback fail, callbackResult:" + callbackResult); + appendCallbackResult(callbackDataList, "
----------- xxl-job job callback fail, callbackResult:" + callbackResult); } } catch (Throwable e) { - appendCallbackResult(callbackParamList, "
----------- xxl-job job callback error, errorMsg:" + e.getMessage()); + appendCallbackResult(callbackDataList, "
----------- xxl-job job callback error, errorMsg:" + e.getMessage()); } } // write callback-file, will retry later if (!callbackRet) { - writeCallbackLog(callbackParamList); + writeCallbackLog(callbackDataList); } } /** * append callback result, to each joblog */ - private void appendCallbackResult(List callbackParamList, String logContent){ - for (CallbackRequest callbackParam: callbackParamList) { + private void appendCallbackResult(List callbackParamList, String logContent){ + for (CallbackData callbackParam: callbackParamList) { String logFileName = XxlJobFileAppender.makeLogFileName(new Date(callbackParam.getLogDateTime()), callbackParam.getLogId()); XxlJobContext.setXxlJobContext(new XxlJobContext( -1, @@ -213,7 +214,7 @@ public class TriggerCallbackThreadHelper { * * @param callbackParamList callback param list */ - private void writeCallbackLog(List callbackParamList) { + private void writeCallbackLog(List callbackParamList) { // valid if (CollectionTool.isEmpty(callbackParamList)) { return;