/** {@inheritDoc} */ @Override protected JobSpecSchedule doScheduleJob(JobSpec jobSpec, Runnable jobRunnable) { // Build a data map that gets passed to the job JobDataMap jobDataMap = new JobDataMap(); jobDataMap.put(JOB_SPEC_KEY, jobSpec); jobDataMap.put(JOB_RUNNABLE_KEY, jobRunnable); // Build a Quartz job JobDetail job = JobBuilder.newJob(QuartzJob.class) .withIdentity(jobSpec.getUri().toString()) .withDescription(Strings.nullToEmpty(jobSpec.getDescription())) .usingJobData(jobDataMap) .build(); Trigger jobTrigger = createTrigger(job.getKey(), jobSpec); QuartzJobSchedule jobSchedule = new QuartzJobSchedule(jobSpec, jobRunnable, jobTrigger); try { _scheduler.getScheduler().scheduleJob(job, jobTrigger); getLog().info(String.format("Scheduled job %s next two fire times: %s , %s.", jobSpec, jobTrigger.getNextFireTime(), jobTrigger.getFireTimeAfter(jobTrigger.getNextFireTime()))); } catch (SchedulerException e) { throw new RuntimeException("Scheduling failed for " + jobSpec + ":" + e, e); } return jobSchedule; }
/** * Returns the next time at which this job will be executed, after the given time.<p> * * If this job will not be executed after the given time, <code>null</code> will be returned..<p> * * @param date the after which the next execution time should be calculated * @return the next time at which this job will be executed, after the given time */ public Date getExecutionTimeAfter(Date date) { if (!m_active || (m_trigger == null)) { // if the job is not active, no time can be calculated return null; } return m_trigger.getFireTimeAfter(date); }
/** * Returns the next time at which this job will be executed, after the given time.<p> * * If this job will not be executed after the given time, <code>null</code> will be returned..<p> * * @param date the after which the next execution time should be calculated * @return the next time at which this job will be executed, after the given time */ public Date getExecutionTimeAfter(Date date) { if (!m_active || (m_trigger == null)) { // if the job is not active, no time can be calculated return null; } return m_trigger.getFireTimeAfter(date); }
private Date getFirstTriggerInFuture(Trigger trigger, DateTime now) { // extracted away because of checkstyle :( Date newStartTime = trigger.getFireTimeAfter(now.toDate()); if (newStartTime == null) { newStartTime = now.toDate(); } return newStartTime; }
@Nullable @Override public Date calculateNextRunTime(Schedule schedule) throws SchedulerServiceException { final Trigger trigger = triggerFactory.buildTrigger(schedule); return trigger.getFireTimeAfter(new Date()); }
private Date computeNextFireTimeAvoidingMisfires(Date fireTime, Trigger quartzTrigger) { return quartzTrigger.getFireTimeAfter(getDateOneSecondAgoButAfter(fireTime)); }
final Date nextFire = trigger.getFireTimeAfter( new Date() ); if ( nextFire == null || !nextFire.after( to ) )
Date nextFireTime = trigger.getFireTimeAfter( startDate );
/** {@inheritDoc} */ @Override protected JobSpecSchedule doScheduleJob(JobSpec jobSpec, Runnable jobRunnable) { // Build a data map that gets passed to the job JobDataMap jobDataMap = new JobDataMap(); jobDataMap.put(JOB_SPEC_KEY, jobSpec); jobDataMap.put(JOB_RUNNABLE_KEY, jobRunnable); // Build a Quartz job JobDetail job = JobBuilder.newJob(QuartzJob.class) .withIdentity(jobSpec.getUri().toString()) .withDescription(Strings.nullToEmpty(jobSpec.getDescription())) .usingJobData(jobDataMap) .build(); Trigger jobTrigger = createTrigger(job.getKey(), jobSpec); QuartzJobSchedule jobSchedule = new QuartzJobSchedule(jobSpec, jobRunnable, jobTrigger); try { _scheduler.getScheduler().scheduleJob(job, jobTrigger); getLog().info(String.format("Scheduled job %s next two fire times: %s , %s.", jobSpec, jobTrigger.getNextFireTime(), jobTrigger.getFireTimeAfter(jobTrigger.getNextFireTime()))); } catch (SchedulerException e) { throw new RuntimeException("Scheduling failed for " + jobSpec + ":" + e, e); } return jobSchedule; }
/** {@inheritDoc} */ @Override protected JobSpecSchedule doScheduleJob(JobSpec jobSpec, Runnable jobRunnable) { // Build a data map that gets passed to the job JobDataMap jobDataMap = new JobDataMap(); jobDataMap.put(JOB_SPEC_KEY, jobSpec); jobDataMap.put(JOB_RUNNABLE_KEY, jobRunnable); // Build a Quartz job JobDetail job = JobBuilder.newJob(QuartzJob.class) .withIdentity(jobSpec.getUri().toString()) .withDescription(Strings.nullToEmpty(jobSpec.getDescription())) .usingJobData(jobDataMap) .build(); Trigger jobTrigger = createTrigger(job.getKey(), jobSpec); QuartzJobSchedule jobSchedule = new QuartzJobSchedule(jobSpec, jobRunnable, jobTrigger); try { _scheduler.getScheduler().scheduleJob(job, jobTrigger); getLog().info(String.format("Scheduled job %s next two fire times: %s , %s.", jobSpec, jobTrigger.getNextFireTime(), jobTrigger.getFireTimeAfter(jobTrigger.getNextFireTime()))); } catch (SchedulerException e) { throw new RuntimeException("Scheduling failed for " + jobSpec + ":" + e, e); } return jobSchedule; }
continue; Date nextFireTime = trigger.getFireTimeAfter(startTime); String triggerKeyString = trigger.getKey().toString(); while (nextFireTime != null && nextFireTime.getTime() < endTimeMillis) { ScheduledRuntime runtime = new ScheduledRuntime(triggerKeyString, nextFireTime.getTime()); scheduledRuntimes.add(runtime); nextFireTime = trigger.getFireTimeAfter(nextFireTime);
continue; Date nextFireTime = trigger.getFireTimeAfter(startTime); String triggerKeyString = trigger.getKey().toString(); while (nextFireTime != null && nextFireTime.getTime() < endTimeMillis) { ScheduledRuntime runtime = new ScheduledRuntime(triggerKeyString, nextFireTime.getTime()); scheduledRuntimes.add(runtime); nextFireTime = trigger.getFireTimeAfter(nextFireTime);
.startAt(scheduleStart) .build(); Date nextFireFromNow = testT.getFireTimeAfter(new Date()); Date nextFireFromLast = testT.getFireTimeAfter(lastExecutedAt);
.startAt(scheduleStart) .build(); Date nextFireFromNow = testT.getFireTimeAfter(new Date()); Date nextFireFromLast = testT.getFireTimeAfter(lastExecutedAt);
setJobTrigger( scheduler, job, trigger ); job.setJobName( QuartzJobKey.parse( jobId ).getJobName() ); job.setNextRun( trigger.getFireTimeAfter( new Date() ) ); job.setLastRun( trigger.getPreviousFireTime() ); if ( ( filter == null ) || filter.accept( job ) ) {
assertEquals(future90mins, t.getFireTimeAfter(new Date()).getTime()); // After this, fire 4 hours from start assertEquals(null, t.getEndTime());