/** * Produce the <code>OperableTrigger</code>. * * @return a OperableTrigger that meets the specifications of the builder. */ public OperableTrigger build() { // if (scheduleBuilder == null) { // scheduleBuilder = SimpleScheduleBuilder.simpleScheduleBuilder(); // } // get a trigger impl. but without the meta data filled in yet // OperableTrigger operableTrigger = operableTrigger; operableTrigger = instantiate(); // fill in metadata operableTrigger.setCalendarName(calendarName); operableTrigger.setDescription(description); operableTrigger.setEndTime(endTime); if (name == null) { name = UUID.randomUUID().toString(); } operableTrigger.setName(name); if (jobName != null) { operableTrigger.setJobName(jobName); } operableTrigger.setPriority(priority); operableTrigger.setStartTime(startTime); if (!jobDataMap.isEmpty()) { operableTrigger.setJobDataMap(jobDataMap); } return operableTrigger; }
/** * Produce the <code>OperableTrigger</code>. * * @return a OperableTrigger that meets the specifications of the builder. */ public OperableTrigger build() { // if (scheduleBuilder == null) { // scheduleBuilder = SimpleScheduleBuilder.simpleScheduleBuilder(); // } // get a trigger impl. but without the meta data filled in yet // OperableTrigger operableTrigger = operableTrigger; operableTrigger = instantiate(); // fill in metadata operableTrigger.setCalendarName(calendarName); operableTrigger.setDescription(description); operableTrigger.setEndTime(endTime); if (name == null) { name = UUID.randomUUID().toString(); } operableTrigger.setName(name); if (jobName != null) { operableTrigger.setJobName(jobName); } operableTrigger.setPriority(priority); operableTrigger.setStartTime(startTime); if (!jobDataMap.isEmpty()) { operableTrigger.setJobDataMap(jobDataMap); } return operableTrigger; }
/** * Produce the <code>OperableTrigger</code>. * * @return a OperableTrigger that meets the specifications of the builder. */ public OperableTrigger build() { // if (scheduleBuilder == null) { // scheduleBuilder = SimpleScheduleBuilder.simpleScheduleBuilder(); // } // get a trigger impl. but without the meta data filled in yet // OperableTrigger operableTrigger = operableTrigger; operableTrigger = instantiate(); // fill in metadata operableTrigger.setCalendarName(calendarName); operableTrigger.setDescription(description); operableTrigger.setEndTime(endTime); if (name == null) { name = UUID.randomUUID().toString(); } operableTrigger.setName(name); if (jobName != null) { operableTrigger.setJobName(jobName); } operableTrigger.setPriority(priority); operableTrigger.setStartTime(startTime); if (!jobDataMap.isEmpty()) { operableTrigger.setJobDataMap(jobDataMap); } return 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); }
/** * <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); }
collision = false; } catch (ObjectAlreadyExistsException oaee) { operableTrigger.setName(newTriggerId());