@Override public RunDetails getLastUpgradeResult() { return schedulerHistoryService.getLastRunForJob(JOB_ID); }
/** * The time that this service was last run. Generally this is called * after the service has executed, to ensure that there is X delay between * finish of previous run & start of the next one. * * @return The time in milliseconds that this service was last run. */ public final long getLastRun() { SchedulerHistoryService schedulerHistoryService = ComponentAccessor.getComponent(SchedulerHistoryService.class); RunDetails lastRunDetails = schedulerHistoryService.getLastRunForJob(toJobId(id)); return (lastRunDetails != null) ? lastRunDetails.getStartTime().getTime() : 0L; }
public JobRunnerWrapper(final JobRunnerKey jobRunnerKey) { this.jobRunnerKey = jobRunnerKey; for (JobDetails jobDetails : schedulerService.getJobsByJobRunnerKey(jobRunnerKey)) { jobs.add(new JobDetailsWrapper(jobDetails, schedulerHistoryService.getLastRunForJob(jobDetails.getJobId()))); switch(jobDetails.getSchedule().getType()) { case CRON_EXPRESSION: schedule.add(getText("admin.schedulerdetails.schedule.cron")); break; case INTERVAL: schedule.add(getText("admin.schedulerdetails.schedule.interval")); break; default: throw new IllegalArgumentException("unknown scheduler type " + jobDetails.getSchedule().getType()); } } this.numberOfFailedJobs = countNumberOfFailedJobs(jobs); }