/** * <p> * Trigger the identified <code>{@link org.quartz.jobs.Job}</code> (execute it now) - with a non-volatile trigger. * </p> */ @Override public void triggerJob(String jobKey, JobDataMap data) throws SchedulerException { validateState(); OperableTrigger operableTrigger = simpleTriggerBuilder().withIdentity(jobKey + "-trigger").forJob(jobKey).startAt(new Date()).build(); // OperableTrigger operableTrigger = TriggerBuilder.newTriggerBuilder().withIdentity(jobKey + "-trigger").forJob(jobKey) // .withTriggerImplementation(SimpleScheduleBuilder.simpleScheduleBuilderBuilder().instantiate()).startAt(new Date()).build(); // TODO what does this accomplish??? Seems to sets it's next fire time internally operableTrigger.computeFirstFireTime(null); if (data != null) { operableTrigger.setJobDataMap(data); } boolean collision = true; while (collision) { try { quartzSchedulerResources.getJobStore().storeTrigger(operableTrigger, false); collision = false; } catch (ObjectAlreadyExistsException oaee) { operableTrigger.setName(newTriggerId()); } } notifySchedulerThread(operableTrigger.getNextFireTime().getTime()); notifySchedulerListenersScheduled(operableTrigger); }
/** * <p> * Trigger the identified <code>{@link org.quartz.jobs.Job}</code> (execute it now) - with a non-volatile trigger. * </p> */ @Override public void triggerJob(String jobKey, JobDataMap data) throws SchedulerException { validateState(); OperableTrigger operableTrigger = simpleTriggerBuilder().withIdentity(jobKey + "-trigger").forJob(jobKey).startAt(new Date()).build(); // OperableTrigger operableTrigger = TriggerBuilder.newTriggerBuilder().withIdentity(jobKey + "-trigger").forJob(jobKey) // .withTriggerImplementation(SimpleScheduleBuilder.simpleScheduleBuilderBuilder().instantiate()).startAt(new Date()).build(); // TODO what does this accomplish??? Seems to sets it's next fire time internally operableTrigger.computeFirstFireTime(null); if (data != null) { operableTrigger.setJobDataMap(data); } boolean collision = true; while (collision) { try { quartzSchedulerResources.getJobStore().storeTrigger(operableTrigger, false); collision = false; } catch (ObjectAlreadyExistsException oaee) { operableTrigger.setName(newTriggerId()); } } notifySchedulerThread(operableTrigger.getNextFireTime().getTime()); notifySchedulerListenersScheduled(operableTrigger); }
cal = quartzSchedulerResources.getJobStore().retrieveCalendar(newTrigger.getCalendarName()); Date ft = trig.computeFirstFireTime(cal);
cal = quartzSchedulerResources.getJobStore().retrieveCalendar(newTrigger.getCalendarName()); Date ft = trig.computeFirstFireTime(cal);
cal = quartzSchedulerResources.getJobStore().retrieveCalendar(newTrigger.getCalendarName()); Date ft = trig.computeFirstFireTime(cal);
operableTrigger.computeFirstFireTime(null);
Date ft = trig.computeFirstFireTime(cal);
Date ft = trig.computeFirstFireTime(cal);
Date ft = trig.computeFirstFireTime(cal);
Date ft = trig.computeFirstFireTime(cal);
Date ft = trig.computeFirstFireTime(cal);
Date ft = trig.computeFirstFireTime(cal);