Class QuartzJobScheduler

java.lang.Object
org.alfresco.heartbeat.jobs.QuartzJobScheduler
All Implemented Interfaces:
HeartBeatJobScheduler
Direct Known Subclasses:
LockingJobScheduler, NonLockingJobScheduler

public abstract class QuartzJobScheduler extends Object implements HeartBeatJobScheduler
  • Field Details

    • testMode

      protected boolean testMode
      schedule set for all jobs scheduled with this scheduler if testMode is on
    • testCronExpression

      protected final String testCronExpression
      See Also:
    • hbDataSenderService

      protected org.alfresco.heartbeat.datasender.HBDataSenderService hbDataSenderService
    • scheduler

      protected org.quartz.Scheduler scheduler
  • Constructor Details

    • QuartzJobScheduler

      public QuartzJobScheduler()
  • Method Details

    • 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 String getJobName(String collectorId)
    • getTriggerName

      public String getTriggerName(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 the Job returned from getHeartBeatJobClass() 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 JobDetail for the job that is being scheduled.
    • getHeartBeatJobClass

      protected abstract Class<? extends org.quartz.Job> getHeartBeatJobClass()
      Jobs scheduled by the scheduler will use the returned implementation of Job.
      The jobs are scheduled together with a JobDataMap returned from getJobDetailMap(HBBaseDataCollector)
      which will be accessible during job execution.
      Returns:
      Job implementation which this scheduler will use to schedule jobs for heartbeat collectors.
    • scheduleJob

      public void scheduleJob(HBBaseDataCollector collector)
      Specified by:
      scheduleJob in interface HeartBeatJobScheduler
    • unscheduleJob

      public void unscheduleJob(HBBaseDataCollector collector)
      Specified by:
      unscheduleJob in interface HeartBeatJobScheduler