Package org.alfresco.heartbeat.jobs
Class QuartzJobScheduler
- java.lang.Object
-
- org.alfresco.heartbeat.jobs.QuartzJobScheduler
-
- All Implemented Interfaces:
HeartBeatJobScheduler
- Direct Known Subclasses:
LockingJobScheduler,NonLockingJobScheduler
public abstract class QuartzJobScheduler extends java.lang.Object implements HeartBeatJobScheduler
-
-
Field Summary
Fields Modifier and Type Field Description protected org.alfresco.heartbeat.datasender.HBDataSenderServicehbDataSenderServiceprotected org.quartz.Schedulerschedulerprotected java.lang.StringtestCronExpressionprotected booleantestModeschedule set for all jobs scheduled with this scheduler if testMode is on
-
Constructor Summary
Constructors Constructor Description QuartzJobScheduler()
-
Method Summary
All Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description protected abstract java.lang.Class<? extends org.quartz.Job>getHeartBeatJobClass()Jobs scheduled by the scheduler will use the returned implementation ofJob.protected abstract org.quartz.JobDataMapgetJobDetailMap(HBBaseDataCollector collector)This method is called when a job is being scheduled by this scheduler for the given collector.java.lang.StringgetJobName(java.lang.String collectorId)java.lang.StringgetTriggerName(java.lang.String collectorId)voidscheduleJob(HBBaseDataCollector collector)voidsetHbDataSenderService(org.alfresco.heartbeat.datasender.HBDataSenderService hbDataSenderService)voidsetScheduler(org.quartz.Scheduler scheduler)voidsetTestMode(boolean testMode)voidunscheduleJob(HBBaseDataCollector collector)
-
-
-
Field Detail
-
testMode
protected boolean testMode
schedule set for all jobs scheduled with this scheduler if testMode is on
-
testCronExpression
protected final java.lang.String testCronExpression
- See Also:
- Constant Field Values
-
hbDataSenderService
protected org.alfresco.heartbeat.datasender.HBDataSenderService hbDataSenderService
-
scheduler
protected org.quartz.Scheduler scheduler
-
-
Method Detail
-
setScheduler
public void setScheduler(org.quartz.Scheduler scheduler)
-
setHbDataSenderService
public void setHbDataSenderService(org.alfresco.heartbeat.datasender.HBDataSenderService hbDataSenderService)
-
setTestMode
public void setTestMode(boolean testMode)
-
getJobName
public java.lang.String getJobName(java.lang.String collectorId)
-
getTriggerName
public java.lang.String getTriggerName(java.lang.String collectorId)
-
getJobDetailMap
protected abstract org.quartz.JobDataMap getJobDetailMap(HBBaseDataCollector collector)
This method is called when a job is being scheduled by this scheduler for the given collector.
The job is scheduled using theJobreturned fromgetHeartBeatJobClass()and the job map returned from this method, therefor the job map should provide what the job needs to execute.- Parameters:
collector- The collector whose job is being scheduled.- Returns:
- The job map returned from this method will be used to build up
JobDetailfor the job that is being scheduled.
-
getHeartBeatJobClass
protected abstract java.lang.Class<? extends org.quartz.Job> getHeartBeatJobClass()
Jobs scheduled by the scheduler will use the returned implementation ofJob.
The jobs are scheduled together with aJobDataMapreturned fromgetJobDetailMap(HBBaseDataCollector)
which will be accessible during job execution.- Returns:
Jobimplementation which this scheduler will use to schedule jobs for heartbeat collectors.
-
scheduleJob
public void scheduleJob(HBBaseDataCollector collector)
- Specified by:
scheduleJobin interfaceHeartBeatJobScheduler
-
unscheduleJob
public void unscheduleJob(HBBaseDataCollector collector)
- Specified by:
unscheduleJobin interfaceHeartBeatJobScheduler
-
-