Overview | Package | Class | Use | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## org.quartz.spi
Interface SchedulerPlugin

All Known Implementing Classes:
  LoggingJobHistoryPlugin, LoggingTriggerHistoryPlugin, SchedulerPluginWithUserTransactionSupport, ShutdownHookPlugin, XMLSchedulingDataProcessorPlugin

    public interface SchedulerPlugin

Provides an interface for a class to become a "plugin" to Quartz.

Plugins can do virtually anything you wish, though the most interesting ones will obviously interact with the scheduler in some way - either actively: by invoking actions on the scheduler, or passively: by being a `JobListener`, `TriggerListener`, and/or `SchedulerListener`.

If you use ``StdSchedulerFactory`` to initialize your Scheduler, it can also create and initialize your plugins - look at the configuration docs for details.

If you need direct access your plugin, you can have it explicitly put a reference to itself in the `Scheduler`'s `SchedulerContext` as part of its ``#initialize(String, Scheduler)`` method.

Author:
  James House

Method Summary
`void` | `initialize(String name, Scheduler scheduler, ClassLoadHelper loadHelper)` Called during creation of the `Scheduler` in order to give the `SchedulerPlugin` a chance to initialize.
`void` | `shutdown()` Called in order to inform the `SchedulerPlugin` that it should free up all of it's resources because the scheduler is shutting down.
`void` | `start()` Called when the associated `Scheduler` is started, in order to let the plug-in know it can now make calls into the scheduler if it needs to.

Method Detail

### initialize

    void initialize(String name,
                    Scheduler scheduler,
                    ClassLoadHelper loadHelper)
                    throws SchedulerException

  Called during creation of the `Scheduler` in order to give the `SchedulerPlugin` a chance to initialize.

  At this point, the Scheduler's `JobStore` is not yet initialized.

  If you need direct access your plugin, for example during `Job` execution, you can have this method explicitly put a reference to this plugin in the `Scheduler`'s `SchedulerContext`.

  Parameters:
    `name` - The name by which the plugin is identified.
    `scheduler` - The scheduler to which the plugin is registered.
    `loadHelper` - The classLoadHelper the `SchedulerFactory` is actually using
  Throws:
    `SchedulerConfigException` - if there is an error initializing.
    `SchedulerException`

### start

    void start()

  Called when the associated `Scheduler` is started, in order to let the plug-in know it can now make calls into the scheduler if it needs to.

### shutdown

    void shutdown()

  Called in order to inform the `SchedulerPlugin` that it should free up all of it's resources because the scheduler is shutting down.

Overview | Package | Class | Use | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

Copyright 2001-2013, Terracotta, Inc.