Add the given {@link org.quartz.JobDetail} to the Scheduler, and associate the given {@link Trigger} with it.
{@link org.quartz.JobDetail}
{@link Trigger}
If the given Trigger does not reference any Job, then it will be set to reference the Job passed with it into this method.
Job
139140141142143144145146147148149
trigger = newTrigger() .withIdentity("trigger6", "group1") .withSchedule(cronSchedule("0,30 * * ? * MON-FRI")) .build(); ft = sched.scheduleJob(job, trigger); log.info(job.getKey() + " has been scheduled to run at: " + ft + " and repeat based on expression: " + trigger.getCronExpression()); // job 7 will run every 30 seconds but only on Weekends (Saturday and Sunday)
154155156157158159160161162163164
trigger = newTrigger() .withIdentity("trigger7", "group1") .withSchedule(cronSchedule("0,30 * * ? * SAT,SUN")) .build(); ft = sched.scheduleJob(job, trigger); log.info(job.getKey() + " has been scheduled to run at: " + ft + " and repeat based on expression: " + trigger.getCronExpression()); log.info("------- Starting Scheduler ----------------");
7778798081828384858687
cronExpr = "* * "+hour+"/24 ? * 2-6"; System.out.println("cronExpr:" + cronExpr); CronTrigger trigger = newTrigger().withIdentity("trigger3", "group1") .withSchedule(cronSchedule(cronExpr)).startAt(triggerStartTime) .forJob("job1", "group1").build(); scheduler.scheduleJob(job, trigger); // trigger. Date date = trigger.getNextFireTime(); // trigger. // trigger.get
5051525354555657585960
.forJob(jd) .withSchedule(SimpleScheduleBuilder.simpleSchedule() .withRepeatCount(0) .withIntervalInSeconds(0)) .build(); return s.scheduleJob(jd, trigger); } public static class MyTestJob implements Job { @Override
161162163164165166167168169170171
JobDetail detail = new JobDetail(JOB_NAME, Scheduler.DEFAULT_GROUP, QuartzSessionValidationJob.class); detail.getJobDataMap().put(QuartzSessionValidationJob.SESSION_MANAGER_KEY, sessionManager); Scheduler scheduler = getScheduler(); scheduler.scheduleJob(detail, trigger); if (schedulerImplicitlyCreated) { scheduler.start(); if (log.isDebugEnabled()) { log.debug("Successfully started implicitly created Quartz Scheduler instance."); }
191192193194195196197198199200201
scheduler.addJob(getJobDetail(), true); for (Trigger trigger : getTriggers()) { boolean triggerExists = (scheduler.getTrigger(trigger.getName(), trigger.getGroup()) != null); if (!triggerExists) { try { scheduler.scheduleJob(trigger); } catch (ObjectAlreadyExistsException ex) { scheduler.rescheduleJob(trigger.getName(), trigger.getGroup(), trigger); } } else {
176177178179180181182183184185186
trigger.setStartTime(new Date(start)); // We need to handle cases when the job has already been persisted try { scheduler.scheduleJob(jobDetail, trigger); } catch (ObjectAlreadyExistsException oaee) { logger.warn("A quartz Job with name: " + endpoint.getEndpointURI().getAddress() + " has already been registered. Cannot register again");
171172173174175176177178179180181
{ start += Long.parseLong(startDelay); } trigger.setStartTime(new Date(start)); scheduler.scheduleJob(jobDetail, trigger); } @Override protected MuleMessage doSend(MuleEvent event) throws Exception {
259260261262263264265266267268269
final Job job = (Job) endpoint; final JobDataMap jobDataMap = spec.getDetail().getJobDataMap(); jobDataMap.put(Data.class.getName(), new Data(job)); s.scheduleJob(spec.getDetail(), spec.getTrigger()); } catch (SchedulerException e) { throw new ResourceException("Failed to schedule job", e); } }