@Override public void afterPropertiesSet() { if (this.name == null) { this.name = this.beanName; } if (this.group == null) { this.group = Scheduler.DEFAULT_GROUP; } if (this.jobDetail != null) { this.jobDataMap.put("jobDetail", this.jobDetail); } if (this.startDelay > 0 || this.startTime == null) { this.startTime = new Date(System.currentTimeMillis() + this.startDelay); } SimpleTriggerImpl sti = new SimpleTriggerImpl(); sti.setName(this.name != null ? this.name : toString()); sti.setGroup(this.group); if (this.jobDetail != null) { sti.setJobKey(this.jobDetail.getKey()); } sti.setJobDataMap(this.jobDataMap); sti.setStartTime(this.startTime); sti.setRepeatInterval(this.repeatInterval); sti.setRepeatCount(this.repeatCount); sti.setPriority(this.priority); sti.setMisfireInstruction(this.misfireInstruction); sti.setDescription(this.description); this.simpleTrigger = sti; }
int instr = getMisfireInstruction(); if (getRepeatCount() == 0) { instr = MISFIRE_INSTRUCTION_FIRE_NOW; } else if (getRepeatCount() == REPEAT_INDEFINITELY) { instr = MISFIRE_INSTRUCTION_RESCHEDULE_NEXT_WITH_REMAINING_COUNT; } else { } else if (instr == MISFIRE_INSTRUCTION_FIRE_NOW && getRepeatCount() != 0) { instr = MISFIRE_INSTRUCTION_RESCHEDULE_NOW_WITH_REMAINING_REPEAT_COUNT; setNextFireTime(new Date()); } else if (instr == MISFIRE_INSTRUCTION_RESCHEDULE_NEXT_WITH_EXISTING_COUNT) { Date newFireTime = getFireTimeAfter(new Date()); while (newFireTime != null && cal != null && !cal.isTimeIncluded(newFireTime.getTime())) { newFireTime = getFireTimeAfter(newFireTime); setNextFireTime(newFireTime); } else if (instr == MISFIRE_INSTRUCTION_RESCHEDULE_NEXT_WITH_REMAINING_COUNT) { Date newFireTime = getFireTimeAfter(new Date()); while (newFireTime != null && cal != null && !cal.isTimeIncluded(newFireTime.getTime())) { newFireTime = getFireTimeAfter(newFireTime); int timesMissed = computeNumTimesFiredBetween(nextFireTime, newFireTime); setTimesTriggered(getTimesTriggered() + timesMissed);
/** * Build the actual Trigger -- NOT intended to be invoked by end users, * but will rather be invoked by a TriggerBuilder which this * ScheduleBuilder is given to. * * @see TriggerBuilder#withSchedule(ScheduleBuilder) */ @Override public MutableTrigger build() { SimpleTriggerImpl st = new SimpleTriggerImpl(); st.setRepeatInterval(interval); st.setRepeatCount(repeatCount); st.setMisfireInstruction(misfireInstruction); return st; }
super(name, group, jobName, jobGroup); setStartTime(startTime); setEndTime(endTime); setRepeatCount(repeatCount); setRepeatInterval(repeatInterval);
protected OperableTrigger createRecoveryTrigger(TriggerWrapper tw, JobWrapper jw, String name, FiredTrigger recovering) { final SimpleTriggerImpl recoveryTrigger = new SimpleTriggerImpl(name, Scheduler.DEFAULT_RECOVERY_GROUP, new Date(recovering.getScheduledFireTime())); recoveryTrigger.setJobName(jw.getKey().getName()); recoveryTrigger.setJobGroup(jw.getKey().getGroup()); recoveryTrigger.setMisfireInstruction(SimpleTrigger.MISFIRE_INSTRUCTION_IGNORE_MISFIRE_POLICY); recoveryTrigger.setPriority(tw.getPriority()); return recoveryTrigger; }
public static OperableTrigger newTrigger(CompositeData cData) throws ParseException { SimpleTriggerImpl result = new SimpleTriggerImpl(); result.setRepeatCount(((Integer) cData.get("repeatCount")).intValue()); result.setRepeatInterval(((Long) cData.get("repeatInterval")).longValue()); result.setTimesTriggered(((Integer) cData.get("timesTriggered")).intValue()); TriggerSupport.initializeTrigger(result, cData); return result; }
triggerNode.getPath(), HIPPOSCHED_STARTTIME); } else { final SimpleTriggerImpl simpleTrigger = new SimpleTriggerImpl(triggerNode.getIdentifier(), startTime.getTime()); if (endTime != null) { simpleTrigger.setEndTime(endTime.getTime()); simpleTrigger.setRepeatCount((int) repeatCount); simpleTrigger.setRepeatInterval(repeatInterval); simpleTrigger.setNextFireTime(nextFireTime.getTime()); simpleTrigger.setJobName(triggerNode.getParent().getParent().getIdentifier()); trigger = simpleTrigger;
SimpleTriggerImpl trigger = new SimpleTriggerImpl(); trigger.setStartTime(event.getStartdate()); trigger.setEndTime(event.getEnddate()); trigger.setRepeatInterval(Long.valueOf(event.getPeriod())); trigger.setName("trigger-" + event.getTitle());
SimpleTriggerImpl simpleTrigger=new SimpleTriggerImpl(); simpleTrigger.setRepeatCount(0); trigger=simpleTrigger; long executeTime=reminder.getStartDate().getTime()+10000;
private JobExecutionContext createContext(JobDetail jobDetail) { firedBundle = new TriggerFiredBundle(jobDetail, new SimpleTriggerImpl(), null, false, new Date(), new Date(), new Date(), new Date()); return new StubJobExecutionContext(); }
private Job buildSimpleJob(QuartzJobContext quartzJobContext) { SimpleTriggerImpl simpleTrigger = (SimpleTriggerImpl) quartzJobContext.getTrigger(); String description = simpleTrigger.getDescription(); int priority = simpleTrigger.getPriority(); String name = quartzJobContext.getName(); int repeatCount = simpleTrigger.getRepeatCount(); long repeatInterval = simpleTrigger.getRepeatInterval(); Job job = new Job(); job.setTaskId(name); job.setTriggerDate(simpleTrigger.getNextFireTime()); job.setRepeatCount(repeatCount); if (repeatCount != 0) { job.setRepeatInterval(repeatInterval); } job.setPriority(priority); job.setSubmitNodeGroup(quartzLTSConfig.getJobClientProperties().getNodeGroup()); job.setTaskTrackerNodeGroup(quartzLTSConfig.getTaskTrackerProperties().getNodeGroup()); job.setParam("description", description); setJobProp(job); return job; }
protected void scheduleMessage(PersistedMessageBO message) throws SchedulerException { LOG.debug("Scheduling execution of a delayed asynchronous message."); Scheduler scheduler = KSBServiceLocator.getScheduler(); JobDataMap jobData = new JobDataMap(); jobData.put(MessageServiceExecutorJob.MESSAGE_KEY, message); JobDetailImpl jobDetail = new JobDetailImpl("Delayed_Asynchronous_Call-" + Math.random(), "Delayed_Asynchronous_Call", MessageServiceExecutorJob.class); jobDetail.setJobDataMap(jobData); scheduler.getListenerManager().addJobListener( new MessageServiceExecutorJobListener()); SimpleTriggerImpl trigger = new SimpleTriggerImpl("Delayed_Asynchronous_Call_Trigger-" + Math.random(), "Delayed_Asynchronous_Call", message.getQueueDate()); trigger.setJobDataMap(jobData);// 1.6 bug required or derby will choke scheduler.scheduleJob(jobDetail, trigger); }
/** {@inheritDoc} */ @Override public String execute(String id, ReportParameters criteria, DeliveryOptions deliveryOptions, RequestContext context) { try { if (m_reportWrapperService.validate(criteria,id) == false ) { context.getMessageContext().addMessage(new MessageBuilder().error().defaultText(PARAMETER_ERROR).build()); return ERROR; } else { SimpleTriggerImpl trigger = new SimpleTriggerImpl(deliveryOptions.getInstanceId(), m_triggerGroup, new Date(), null, 0, 0L); trigger.setJobName(m_jobDetail.getKey().getName()); trigger.getJobDataMap().put("criteria", (ReportParameters) criteria); trigger.getJobDataMap().put("reportId", id); trigger.getJobDataMap().put("mode", ReportMode.IMMEDIATE); trigger.getJobDataMap().put("deliveryOptions", (DeliveryOptions) deliveryOptions); try { m_scheduler.scheduleJob(trigger); } catch (SchedulerException e) { LOG.warn(SCHEDULER_ERROR, e); context.getMessageContext().addMessage(new MessageBuilder().error().defaultText(SCHEDULER_ERROR).build()); return ERROR; } return SUCCESS; } } catch (ReportServiceLocatorException e) { LOG.error(REPORTID_ERROR, e); context.getMessageContext().addMessage(new MessageBuilder().error().defaultText(REPORTID_ERROR).build()); return ERROR; } }
Object repeatCount = dbObject.get(SIMPLE_TRIGGER_REPEAT_COUNT); if (repeatCount != null) { simple.setRepeatCount((Integer)repeatCount); simple.setRepeatInterval((Long)repeatInterval); simple.setTimesTriggered((Integer)timesTriggered);
/** * Get a {@link ScheduleBuilder} that is configured to produce a * schedule identical to this trigger's schedule. * * @see #getTriggerBuilder() */ @Override public ScheduleBuilder<SimpleTrigger> getScheduleBuilder() { SimpleScheduleBuilder sb = SimpleScheduleBuilder.simpleSchedule() .withIntervalInMilliseconds(getRepeatInterval()) .withRepeatCount(getRepeatCount()); switch(getMisfireInstruction()) { case MISFIRE_INSTRUCTION_FIRE_NOW : sb.withMisfireHandlingInstructionFireNow(); break; case MISFIRE_INSTRUCTION_RESCHEDULE_NEXT_WITH_EXISTING_COUNT : sb.withMisfireHandlingInstructionNextWithExistingCount(); break; case MISFIRE_INSTRUCTION_RESCHEDULE_NEXT_WITH_REMAINING_COUNT : sb.withMisfireHandlingInstructionNextWithRemainingCount(); break; case MISFIRE_INSTRUCTION_RESCHEDULE_NOW_WITH_EXISTING_REPEAT_COUNT : sb.withMisfireHandlingInstructionNowWithExistingCount(); break; case MISFIRE_INSTRUCTION_RESCHEDULE_NOW_WITH_REMAINING_REPEAT_COUNT : sb.withMisfireHandlingInstructionNowWithRemainingCount(); break; } return sb; }
@JsonProperty("repeat_interval") public void setRepeatInterval(long repeatInterval) { getTrigger().setRepeatInterval(repeatInterval); }
@JsonProperty("repeat_count") public void setRepeatCount(int repeatCount) { getTrigger().setRepeatCount(repeatCount); }
@JsonProperty("repeat_count") public int getRepeatCount() { return getTrigger().getRepeatCount(); }
@JsonProperty("repeat_interval") public long getRepeatInterval() { return getTrigger().getRepeatInterval(); }
protected OperableTrigger createRecoveryTrigger(TriggerWrapper tw, JobWrapper jw, String name, FiredTrigger recovering) { final SimpleTriggerImpl recoveryTrigger = new SimpleTriggerImpl(name, Scheduler.DEFAULT_RECOVERY_GROUP, new Date(recovering.getScheduledFireTime())); recoveryTrigger.setJobName(jw.getKey().getName()); recoveryTrigger.setJobGroup(jw.getKey().getGroup()); recoveryTrigger.setMisfireInstruction(SimpleTrigger.MISFIRE_INSTRUCTION_IGNORE_MISFIRE_POLICY); recoveryTrigger.setPriority(tw.getPriority()); return recoveryTrigger; }