Class ShutdownHookPlugin

  • All Implemented Interfaces:
    SchedulerPlugin

    public class ShutdownHookPlugin
    extends java.lang.Object
    implements SchedulerPlugin
    This plugin catches the event of the JVM terminating (such as upon a CTRL-C) and tells the scheduler to shutdown.
    Author:
    James House
    See Also:
    Scheduler.shutdown(boolean)
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      protected org.slf4j.Logger getLog()  
      void initialize​(java.lang.String name, Scheduler scheduler, ClassLoadHelper classLoadHelper)
      Called during creation of the Scheduler in order to give the SchedulerPlugin a chance to initialize.
      boolean isCleanShutdown()
      Determine whether or not the plug-in is configured to cause a clean shutdown of the scheduler.
      void setCleanShutdown​(boolean b)
      Set whether or not the plug-in is configured to cause a clean shutdown of the scheduler.
      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.
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Constructor Detail

      • ShutdownHookPlugin

        public ShutdownHookPlugin()
    • Method Detail

      • isCleanShutdown

        public boolean isCleanShutdown()
        Determine whether or not the plug-in is configured to cause a clean shutdown of the scheduler.

        The default value is true.

        See Also:
        Scheduler.shutdown(boolean)
      • setCleanShutdown

        public void setCleanShutdown​(boolean b)
        Set whether or not the plug-in is configured to cause a clean shutdown of the scheduler.

        The default value is true.

        See Also:
        Scheduler.shutdown(boolean)
      • getLog

        protected org.slf4j.Logger getLog()
      • initialize

        public void initialize​(java.lang.String name,
                               Scheduler scheduler,
                               ClassLoadHelper classLoadHelper)
                        throws SchedulerException

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

        Specified by:
        initialize in interface SchedulerPlugin
        Parameters:
        name - The name by which the plugin is identified.
        scheduler - The scheduler to which the plugin is registered.
        classLoadHelper - The classLoadHelper the SchedulerFactory is actually using
        Throws:
        SchedulerConfigException - if there is an error initializing.
        SchedulerException
      • start

        public void start()
        Description copied from interface: SchedulerPlugin

        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.

        Specified by:
        start in interface SchedulerPlugin
      • shutdown

        public 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.

        Specified by:
        shutdown in interface SchedulerPlugin