下面列出了org.quartz.Trigger#CompletedExecutionInstruction ( ) 实例代码,或者点击链接到github查看源代码,也可以在右侧发表评论。
@Override
public void triggerComplete(Trigger trigger, JobExecutionContext jobExecutionContext,
Trigger.CompletedExecutionInstruction completedExecutionInstruction) {
if (trigger.getNextFireTime() == null) {
try {
String taskName = trigger.getJobKey().getName();
TaskUtils.setTaskFinished(getTaskRepository(), taskName, true);
if (getAllCoordinatedTasksDeployed().contains(taskName)) {
removeTaskFromLocallyRunningTaskList(taskName);
taskStore.updateTaskState(Collections.singletonList(taskName),
CoordinatedTask.States.COMPLETED);
}
} catch (TaskException | TaskCoordinationException e) {
log.error("Error in Finishing Task [" + trigger.getJobKey().getName() + "]: " + e.getMessage(), e);
}
}
}
/**
* (4) 任务完成时触发
* Called by the Scheduler when a Trigger has fired, it's associated JobDetail has been executed
* and it's triggered(xx) method has been called.
*/
@Override
public void triggerComplete(Trigger trigger, JobExecutionContext context, Trigger.CompletedExecutionInstruction triggerInstructionCode) {
JobDataMap jobDataMap = context.getJobDetail().getJobDataMap();
String serviceName = jobDataMap.getString("serviceName");
String versionName = jobDataMap.getString("versionName");
String methodName = jobDataMap.getString("methodName");
LocalDateTime currentTime = LocalDateTime.now(ZoneId.of("Asia/Shanghai"));
LocalDateTime startTime = (LocalDateTime) jobDataMap.get("startTime");
long taskCost = Duration.between(startTime, currentTime).toMillis();
String message = String.format("SchedulerTriggerListener::triggerComplete;Task[%s:%s:%s] 执行完成[%s] ,cost:%sms", serviceName, versionName, methodName, currentTime.format(DATE_TIME), taskCost);
//sendMessage(serviceName, versionName, methodName, message, false, jobDataMap, "succeed");
TaskMonitorDataReportUtils.removeSessionTid();
}
public void triggerComplete(
Trigger trigger,
JobExecutionContext context,
Trigger.CompletedExecutionInstruction triggerInstructionCode) {
// Check it's one of ours
if (GROUP_NAME.equals(trigger.getKey().getGroup())) {
String contextId = trigger.getJobDataMap().getString(CONTEXT_ID);
if (contextId == null) {
log.warn("One of our triggers ({}) didn't have a context ID", trigger.getKey());
} else {
dao.remove(trigger.getJobKey().getName(), contextId);
}
}
}
public void triggerComplete(
Trigger trigger,
JobExecutionContext context,
Trigger.CompletedExecutionInstruction triggerInstructionCode) {
// Check it's one of ours
if (GROUP_NAME.equals(trigger.getKey().getGroup())) {
String contextId = trigger.getJobDataMap().getString(CONTEXT_ID);
if (contextId == null) {
log.warn("One of our triggers ({}) didn't have a context ID", trigger.getKey());
} else {
dao.remove(trigger.getJobKey().getName(), contextId);
}
}
}
@Override
public void triggerComplete(
Trigger trigger,
JobExecutionContext context,
Trigger.CompletedExecutionInstruction triggerInstructionCode) {
countDownLatch.countDown();
// No-op.
}
@Override
public void triggerComplete(Trigger trigger, JobExecutionContext context, Trigger.CompletedExecutionInstruction triggerInstructionCode) {
if (log.isDebugEnabled()) {
log.debug("triggerComplete = {}", getName());
}
}
@Override
public void triggerComplete(Trigger trigger, JobExecutionContext context,
Trigger.CompletedExecutionInstruction triggerInstructionCode) {
logger.info("Trigger被触发并且完成了job的执行,此方法被调用");
}
@Override
public void triggeredJobComplete(OperableTrigger trigger, JobDetail jobDetail, Trigger.CompletedExecutionInstruction instruction) {
realJobStore.triggeredJobComplete(trigger, jobDetail, instruction);
}