public abstract class

SchedulerAccessor

extends Object
implements ResourceLoaderAware
java.lang.Object
   ↳ org.springframework.scheduling.quartz.SchedulerAccessor
Known Direct Subclasses

Class Overview

Common base class for accessing a Quartz Scheduler, i.e. for registering jobs, triggers and listeners on a org.quartz.Scheduler instance.

For concrete usage, check out the SchedulerFactoryBean and SchedulerAccessorBean classes.

Summary

Fields
protected final Log logger
protected ResourceLoader resourceLoader
Public Constructors
SchedulerAccessor()
Public Methods
void setCalendars(Map<String, Calendar> calendars)
Register a list of Quartz Calendar objects with the Scheduler that this FactoryBean creates, to be referenced by Triggers.
void setGlobalJobListeners(JobListener[] globalJobListeners)
Specify global Quartz JobListeners to be registered with the Scheduler.
void setGlobalTriggerListeners(TriggerListener[] globalTriggerListeners)
Specify global Quartz TriggerListeners to be registered with the Scheduler.
void setJobDetails(JobDetail[] jobDetails)
Register a list of JobDetail objects with the Scheduler that this FactoryBean creates, to be referenced by Triggers.
void setJobListeners(JobListener[] jobListeners)
Specify named Quartz JobListeners to be registered with the Scheduler.
void setJobSchedulingDataLocation(String jobSchedulingDataLocation)
Set the location of a Quartz job definition XML file that follows the "job_scheduling_data_1_5" XSD.
void setJobSchedulingDataLocations(String[] jobSchedulingDataLocations)
Set the locations of Quartz job definition XML files that follow the "job_scheduling_data_1_5" XSD.
void setOverwriteExistingJobs(boolean overwriteExistingJobs)
Set whether any jobs defined on this SchedulerFactoryBean should overwrite existing job definitions.
void setResourceLoader(ResourceLoader resourceLoader)
Set the ResourceLoader that this object runs in.
void setSchedulerListeners(SchedulerListener[] schedulerListeners)
Specify Quartz SchedulerListeners to be registered with the Scheduler.
void setTransactionManager(PlatformTransactionManager transactionManager)
Set the transaction manager to be used for registering jobs and triggers that are defined by this SchedulerFactoryBean.
void setTriggerListeners(TriggerListener[] triggerListeners)
Specify named Quartz TriggerListeners to be registered with the Scheduler.
void setTriggers(Trigger[] triggers)
Register a list of Trigger objects with the Scheduler that this FactoryBean creates.
Protected Methods
abstract Scheduler getScheduler()
Template method that determines the Scheduler to operate on.
void registerJobsAndTriggers()
Register jobs and triggers (within a transaction, if possible).
void registerListeners()
Register all specified listeners with the Scheduler.
[Expand]
Inherited Methods
From class java.lang.Object
From interface org.springframework.context.ResourceLoaderAware

Fields

protected final Log logger

protected ResourceLoader resourceLoader

Public Constructors

public SchedulerAccessor ()

Public Methods

public void setCalendars (Map<String, Calendar> calendars)

Register a list of Quartz Calendar objects with the Scheduler that this FactoryBean creates, to be referenced by Triggers.

Parameters
calendars Map with calendar names as keys as Calendar objects as values
See Also
  • org.quartz.Calendar
  • org.quartz.Trigger#setCalendarName

public void setGlobalJobListeners (JobListener[] globalJobListeners)

Specify global Quartz JobListeners to be registered with the Scheduler. Such JobListeners will apply to all Jobs in the Scheduler.

public void setGlobalTriggerListeners (TriggerListener[] globalTriggerListeners)

Specify global Quartz TriggerListeners to be registered with the Scheduler. Such TriggerListeners will apply to all Triggers in the Scheduler.

public void setJobDetails (JobDetail[] jobDetails)

Register a list of JobDetail objects with the Scheduler that this FactoryBean creates, to be referenced by Triggers.

This is not necessary when a Trigger determines the JobDetail itself: In this case, the JobDetail will be implicitly registered in combination with the Trigger.

See Also

public void setJobListeners (JobListener[] jobListeners)

Specify named Quartz JobListeners to be registered with the Scheduler. Such JobListeners will only apply to Jobs that explicitly activate them via their name.

See Also

public void setJobSchedulingDataLocation (String jobSchedulingDataLocation)

Set the location of a Quartz job definition XML file that follows the "job_scheduling_data_1_5" XSD. Can be specified to automatically register jobs that are defined in such a file, possibly in addition to jobs defined directly on this SchedulerFactoryBean.

See Also
  • org.quartz.xml.JobSchedulingDataProcessor

public void setJobSchedulingDataLocations (String[] jobSchedulingDataLocations)

Set the locations of Quartz job definition XML files that follow the "job_scheduling_data_1_5" XSD. Can be specified to automatically register jobs that are defined in such files, possibly in addition to jobs defined directly on this SchedulerFactoryBean.

See Also
  • org.quartz.xml.JobSchedulingDataProcessor

public void setOverwriteExistingJobs (boolean overwriteExistingJobs)

Set whether any jobs defined on this SchedulerFactoryBean should overwrite existing job definitions. Default is "false", to not overwrite already registered jobs that have been read in from a persistent job store.

public void setResourceLoader (ResourceLoader resourceLoader)

Set the ResourceLoader that this object runs in.

This might be a ResourcePatternResolver, which can be checked through instanceof ResourcePatternResolver. See also the ResourcePatternUtils.getResourcePatternResolver method.

Invoked after population of normal bean properties but before an init callback like InitializingBean's afterPropertiesSet or a custom init-method. Invoked before ApplicationContextAware's setApplicationContext.

Parameters
resourceLoader ResourceLoader object to be used by this object

public void setSchedulerListeners (SchedulerListener[] schedulerListeners)

Specify Quartz SchedulerListeners to be registered with the Scheduler.

public void setTransactionManager (PlatformTransactionManager transactionManager)

Set the transaction manager to be used for registering jobs and triggers that are defined by this SchedulerFactoryBean. Default is none; setting this only makes sense when specifying a DataSource for the Scheduler.

public void setTriggerListeners (TriggerListener[] triggerListeners)

Specify named Quartz TriggerListeners to be registered with the Scheduler. Such TriggerListeners will only apply to Triggers that explicitly activate them via their name.

See Also

public void setTriggers (Trigger[] triggers)

Register a list of Trigger objects with the Scheduler that this FactoryBean creates.

If the Trigger determines the corresponding JobDetail itself, the job will be automatically registered with the Scheduler. Else, the respective JobDetail needs to be registered via the "jobDetails" property of this FactoryBean.

Protected Methods

protected abstract Scheduler getScheduler ()

Template method that determines the Scheduler to operate on. To be implemented by subclasses.

protected void registerJobsAndTriggers ()

Register jobs and triggers (within a transaction, if possible).

Throws
SchedulerException

protected void registerListeners ()

Register all specified listeners with the Scheduler.

Throws
SchedulerException