org.springframework.scheduling.quartz

## Class SchedulerAccessorBean

- java.lang.Object
- - org.springframework.scheduling.quartz.SchedulerAccessor
  - - org.springframework.scheduling.quartz.SchedulerAccessorBean

- All Implemented Interfaces:
    Aware, BeanFactoryAware, InitializingBean, ResourceLoaderAware

      public class SchedulerAccessorBean
      extends SchedulerAccessor
      implements BeanFactoryAware, InitializingBean

  Spring bean-style class for accessing a Quartz Scheduler, i.e. for registering jobs, triggers and listeners on a given `Scheduler` instance.

  Compatible with Quartz 2.1.4 and higher, as of Spring 4.1.

  Since:
    2.5.6
  Author:
    Juergen Hoeller
  See Also:
    `setScheduler(org.quartz.Scheduler)`, `setSchedulerName(java.lang.String)`

- - ### Field Summary

    - ### Fields inherited from class org.springframework.scheduling.quartz.SchedulerAccessor

      `logger, resourceLoader`

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `SchedulerAccessorBean()`

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `void` | `afterPropertiesSet()` Invoked by the containing `BeanFactory` after it has set all bean properties and satisfied `BeanFactoryAware`, `ApplicationContextAware` etc.
    `protected org.quartz.Scheduler` | `findDefaultScheduler()`
    `protected org.quartz.Scheduler` | `findScheduler(String schedulerName)`
    `org.quartz.Scheduler` | `getScheduler()` Return the Quartz Scheduler instance that this accessor operates on.
    `void` | `setBeanFactory(BeanFactory beanFactory)` Callback that supplies the owning factory to a bean instance.
    `void` | `setScheduler(org.quartz.Scheduler scheduler)` Specify the Quartz `Scheduler` instance to operate on.
    `void` | `setSchedulerName(String schedulerName)` Specify the Quartz `Scheduler` to operate on via its scheduler name in the Spring application context or also in the Quartz `SchedulerRepository`.

    - ### Methods inherited from class org.springframework.scheduling.quartz.SchedulerAccessor

      `registerJobsAndTriggers, registerListeners, setCalendars, setGlobalJobListeners, setGlobalTriggerListeners, setJobDetails, setJobSchedulingDataLocation, setJobSchedulingDataLocations, setOverwriteExistingJobs, setResourceLoader, setSchedulerListeners, setTransactionManager, setTriggers`

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### Constructor Detail

    - #### SchedulerAccessorBean

          public SchedulerAccessorBean()

  - ### Method Detail

    - #### setSchedulerName

          public void setSchedulerName(String schedulerName)

      Specify the Quartz `Scheduler` to operate on via its scheduler name in the Spring application context or also in the Quartz `SchedulerRepository`.

      Schedulers can be registered in the repository through custom bootstrapping, e.g. via the `StdSchedulerFactory` or `DirectSchedulerFactory` factory classes. However, in general, it's preferable to use Spring's `SchedulerFactoryBean` which includes the job/trigger/listener capabilities of this accessor as well.

      If not specified, this accessor will try to retrieve a default `Scheduler` bean from the containing application context.

    - #### setScheduler

          public void setScheduler(org.quartz.Scheduler scheduler)

      Specify the Quartz `Scheduler` instance to operate on.

      If not specified, this accessor will try to retrieve a default `Scheduler` bean from the containing application context.

    - #### getScheduler

          public org.quartz.Scheduler getScheduler()

      Return the Quartz Scheduler instance that this accessor operates on.
      Specified by:
        `getScheduler` in class `SchedulerAccessor`

    - #### setBeanFactory

          public void setBeanFactory(BeanFactory beanFactory)

      Description copied from interface: `BeanFactoryAware`
      Callback that supplies the owning factory to a bean instance.

      Invoked after the population of normal bean properties but before an initialization callback such as `InitializingBean.afterPropertiesSet()` or a custom init-method.

      Specified by:
        `setBeanFactory` in interface `BeanFactoryAware`
      Parameters:
        `beanFactory` - owning BeanFactory (never `null`). The bean can immediately call methods on the factory.
      See Also:
        `BeanInitializationException`

    - #### afterPropertiesSet

          public void afterPropertiesSet()
                                  throws org.quartz.SchedulerException

      Description copied from interface: `InitializingBean`
      Invoked by the containing `BeanFactory` after it has set all bean properties and satisfied `BeanFactoryAware`, `ApplicationContextAware` etc.

      This method allows the bean instance to perform validation of its overall configuration and final initialization when all bean properties have been set.

      Specified by:
        `afterPropertiesSet` in interface `InitializingBean`
      Throws:
        `org.quartz.SchedulerException`

    - #### findScheduler

          protected org.quartz.Scheduler findScheduler(String schedulerName)
                                                throws org.quartz.SchedulerException

      Throws:
        `org.quartz.SchedulerException`

    - #### findDefaultScheduler

          protected org.quartz.Scheduler findDefaultScheduler()