/** * Start a new scheduler and schedule a new job. */ public void start() { String group = "carbon.connector.quartz"; JobDetail job = JobBuilder.newJob(PollingJob.class) .withIdentity("Job - " + RANDOM.nextLong(), group).build(); Trigger trigger; if (connector.cronExpression != null) { // Trigger the job to run on the next round minute trigger = TriggerBuilder.newTrigger().withIdentity("Trigger - " + RANDOM.nextLong(), group) .withSchedule(CronScheduleBuilder.cronSchedule(connector.cronExpression)).build(); } else { // Trigger the job to run on the next round minute trigger = TriggerBuilder.newTrigger().withIdentity("ScheduledPollingTrigger - " + RANDOM.nextLong(), group) .withSchedule(SimpleScheduleBuilder.simpleSchedule().withIntervalInMilliseconds(connector.interval) .repeatForever()).build(); } // Schedule the job try { scheduler = new StdSchedulerFactory(getSchedulerProperties("polling-task-runner")).getScheduler(); scheduler.getContext().put("connector", connector); scheduler.start(); scheduler.scheduleJob(job, trigger); } catch (SchedulerException e) { log.error("Exception occurred while scheduling job", e); } }
/** * Start a new scheduler and schedule a new job. */ public void start() { String group = "carbon.connector.quartz"; JobDetail job = JobBuilder.newJob(PollingJob.class) .withIdentity("Job - " + RANDOM.nextLong(), group).build(); Trigger trigger; if (connector.cronExpression != null) { // Trigger the job to run on the next round minute trigger = TriggerBuilder.newTrigger().withIdentity("Trigger - " + RANDOM.nextLong(), group) .withSchedule(CronScheduleBuilder.cronSchedule(connector.cronExpression)).build(); } else { // Trigger the job to run on the next round minute trigger = TriggerBuilder.newTrigger().withIdentity("scheduledPoll", "group1").withSchedule( SimpleScheduleBuilder.simpleSchedule().withIntervalInMilliseconds(connector.interval) .repeatForever()).build(); } // Schedule the job try { scheduler = new StdSchedulerFactory(getSchedulerProperties("polling-task-runner")).getScheduler(); scheduler.getContext().put("connector", connector); scheduler.start(); scheduler.scheduleJob(job, trigger); } catch (SchedulerException e) { log.error("Exception occurred while scheduling job", e); } }