提交 50b1c679 authored 作者: xuxueli's avatar xuxueli

RM

上级 7a0f63f7
package com.xxl.job.admin.core.jobbean; package com.xxl.job.admin.core.jobbean;
import com.xxl.job.admin.core.thread.JobTriggerPoolHelper; import com.xxl.job.admin.core.thread.JobTriggerPoolHelper;
import org.quartz.JobExecutionContext; import org.quartz.JobExecutionContext;
import org.quartz.JobExecutionException; import org.quartz.JobExecutionException;
import org.quartz.JobKey; import org.quartz.JobKey;
import org.slf4j.Logger; import org.slf4j.Logger;
import org.slf4j.LoggerFactory; import org.slf4j.LoggerFactory;
import org.springframework.scheduling.quartz.QuartzJobBean; import org.springframework.scheduling.quartz.QuartzJobBean;
/** /**
* http job bean * http job bean
* “@DisallowConcurrentExecution” diable concurrent, thread size can not be only one, better given more * “@DisallowConcurrentExecution” diable concurrent, thread size can not be only one, better given more
* @author xuxueli 2015-12-17 18:20:34 * @author xuxueli 2015-12-17 18:20:34
*/ */
//@DisallowConcurrentExecution //@DisallowConcurrentExecution
public class RemoteHttpJobBean extends QuartzJobBean { public class RemoteHttpJobBean extends QuartzJobBean {
private static Logger logger = LoggerFactory.getLogger(RemoteHttpJobBean.class); private static Logger logger = LoggerFactory.getLogger(RemoteHttpJobBean.class);
@Override @Override
protected void executeInternal(JobExecutionContext context) protected void executeInternal(JobExecutionContext context)
throws JobExecutionException { throws JobExecutionException {
// load jobId // load jobId
JobKey jobKey = context.getTrigger().getJobKey(); JobKey jobKey = context.getTrigger().getJobKey();
Integer jobId = Integer.valueOf(jobKey.getName()); Integer jobId = Integer.valueOf(jobKey.getName());
// trigger // trigger
//XxlJobTrigger.trigger(jobId); //XxlJobTrigger.trigger(jobId);
JobTriggerPoolHelper.trigger(jobId, -1); JobTriggerPoolHelper.trigger(jobId, -1);
} }
} }
\ No newline at end of file
package com.xxl.job.admin.core.model; package com.xxl.job.admin.core.model;
import java.util.Date; import java.util.Date;
/** /**
* xxl-job log, used to track trigger process * xxl-job log, used to track trigger process
* @author xuxueli 2015-12-19 23:19:09 * @author xuxueli 2015-12-19 23:19:09
*/ */
public class XxlJobLog { public class XxlJobLog {
private int id; private int id;
// job info // job info
private int jobGroup; private int jobGroup;
private int jobId; private int jobId;
// glueType // glueType
private String glueType; private String glueType;
// execute info // execute info
private String executorAddress; private String executorAddress;
private String executorHandler; private String executorHandler;
private String executorParam; private String executorParam;
private int executorFailRetryCount; private int executorFailRetryCount;
// trigger info // trigger info
private Date triggerTime; private Date triggerTime;
private int triggerCode; private int triggerCode;
private String triggerMsg; private String triggerMsg;
// handle info // handle info
private Date handleTime; private Date handleTime;
private int handleCode; private int handleCode;
private String handleMsg; private String handleMsg;
public int getId() { public int getId() {
return id; return id;
} }
public void setId(int id) { public void setId(int id) {
this.id = id; this.id = id;
} }
public int getJobGroup() { public int getJobGroup() {
return jobGroup; return jobGroup;
} }
public void setJobGroup(int jobGroup) { public void setJobGroup(int jobGroup) {
this.jobGroup = jobGroup; this.jobGroup = jobGroup;
} }
public int getJobId() { public int getJobId() {
return jobId; return jobId;
} }
public void setJobId(int jobId) { public void setJobId(int jobId) {
this.jobId = jobId; this.jobId = jobId;
} }
public String getGlueType() { public String getGlueType() {
return glueType; return glueType;
} }
public void setGlueType(String glueType) { public void setGlueType(String glueType) {
this.glueType = glueType; this.glueType = glueType;
} }
public String getExecutorAddress() { public String getExecutorAddress() {
return executorAddress; return executorAddress;
} }
public void setExecutorAddress(String executorAddress) { public void setExecutorAddress(String executorAddress) {
this.executorAddress = executorAddress; this.executorAddress = executorAddress;
} }
public String getExecutorHandler() { public String getExecutorHandler() {
return executorHandler; return executorHandler;
} }
public void setExecutorHandler(String executorHandler) { public void setExecutorHandler(String executorHandler) {
this.executorHandler = executorHandler; this.executorHandler = executorHandler;
} }
public String getExecutorParam() { public String getExecutorParam() {
return executorParam; return executorParam;
} }
public void setExecutorParam(String executorParam) { public void setExecutorParam(String executorParam) {
this.executorParam = executorParam; this.executorParam = executorParam;
} }
public int getExecutorFailRetryCount() { public int getExecutorFailRetryCount() {
return executorFailRetryCount; return executorFailRetryCount;
} }
public void setExecutorFailRetryCount(int executorFailRetryCount) { public void setExecutorFailRetryCount(int executorFailRetryCount) {
this.executorFailRetryCount = executorFailRetryCount; this.executorFailRetryCount = executorFailRetryCount;
} }
public Date getTriggerTime() { public Date getTriggerTime() {
return triggerTime; return triggerTime;
} }
public void setTriggerTime(Date triggerTime) { public void setTriggerTime(Date triggerTime) {
this.triggerTime = triggerTime; this.triggerTime = triggerTime;
} }
public int getTriggerCode() { public int getTriggerCode() {
return triggerCode; return triggerCode;
} }
public void setTriggerCode(int triggerCode) { public void setTriggerCode(int triggerCode) {
this.triggerCode = triggerCode; this.triggerCode = triggerCode;
} }
public String getTriggerMsg() { public String getTriggerMsg() {
return triggerMsg; return triggerMsg;
} }
public void setTriggerMsg(String triggerMsg) { public void setTriggerMsg(String triggerMsg) {
// plugin // plugin
if (triggerMsg!=null && triggerMsg.length()>2000) { if (triggerMsg!=null && triggerMsg.length()>2000) {
triggerMsg = triggerMsg.substring(0, 2000); triggerMsg = triggerMsg.substring(0, 2000);
} }
this.triggerMsg = triggerMsg; this.triggerMsg = triggerMsg;
} }
public Date getHandleTime() { public Date getHandleTime() {
return handleTime; return handleTime;
} }
public void setHandleTime(Date handleTime) { public void setHandleTime(Date handleTime) {
this.handleTime = handleTime; this.handleTime = handleTime;
} }
public int getHandleCode() { public int getHandleCode() {
return handleCode; return handleCode;
} }
public void setHandleCode(int handleCode) { public void setHandleCode(int handleCode) {
this.handleCode = handleCode; this.handleCode = handleCode;
} }
public String getHandleMsg() { public String getHandleMsg() {
return handleMsg; return handleMsg;
} }
public void setHandleMsg(String handleMsg) { public void setHandleMsg(String handleMsg) {
// plugin // plugin
if (handleMsg!=null && handleMsg.length()>2000) { if (handleMsg!=null && handleMsg.length()>2000) {
handleMsg = handleMsg.substring(0, 2000); handleMsg = handleMsg.substring(0, 2000);
} }
this.handleMsg = handleMsg; this.handleMsg = handleMsg;
} }
} }
package com.xxl.job.core.handler; package com.xxl.job.core.handler;
import com.xxl.job.core.biz.model.ReturnT; import com.xxl.job.core.biz.model.ReturnT;
/** /**
* job handler * job handler
* *
* @author xuxueli 2015-12-19 19:06:38 * @author xuxueli 2015-12-19 19:06:38
*/ */
public abstract class IJobHandler { public abstract class IJobHandler {
/** success */ /** success */
public static final ReturnT<String> SUCCESS = new ReturnT<String>(200, null); public static final ReturnT<String> SUCCESS = new ReturnT<String>(200, null);
/** fail */ /** fail */
public static final ReturnT<String> FAIL = new ReturnT<String>(500, null); public static final ReturnT<String> FAIL = new ReturnT<String>(500, null);
/** fail timeout */ /** fail timeout */
public static final ReturnT<String> FAIL_TIMEOUT = new ReturnT<String>(502, null); public static final ReturnT<String> FAIL_TIMEOUT = new ReturnT<String>(502, null);
/** /**
* execute handler, invoked when executor receives a scheduling request * execute handler, invoked when executor receives a scheduling request
* *
* @param param * @param param
* @return * @return
* @throws Exception * @throws Exception
*/ */
public abstract ReturnT<String> execute(String param) throws Exception; public abstract ReturnT<String> execute(String param) throws Exception;
/** /**
* init handler, invoked when JobThread init * init handler, invoked when JobThread init
*/ */
public void init() { public void init() {
// TODO // TODO
} }
/** /**
* destroy handler, invoked when JobThread destroy * destroy handler, invoked when JobThread destroy
*/ */
public void destroy() { public void destroy() {
// TODO // TODO
} }
} }
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论