Class InMemoryJobSchedulerStore

  • All Implemented Interfaces:
    JobSchedulerStore, org.apache.activemq.Service

    public class InMemoryJobSchedulerStore
    extends org.apache.activemq.util.ServiceSupport
    implements JobSchedulerStore
    An in-memory JobSchedulerStore implementation used for Brokers that have persistence disabled or when the JobSchedulerStore usage doesn't require a file or DB based store implementation allowing for better performance.
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      protected void doStart()  
      protected void doStop​(org.apache.activemq.util.ServiceStopper stopper)  
      File getDirectory()
      Gets the location where the Job Scheduler will write the persistent data used to preserve and recover scheduled Jobs.
      JobScheduler getJobScheduler​(String name)
      Returns the JobScheduler instance identified by the given name.
      boolean removeJobScheduler​(String name)
      Removes the named JobScheduler if it exists, purging all scheduled messages assigned to it.
      void setDirectory​(File directory)
      Sets the directory where persistent store data will be written.
      long size()
      The size of the current store on disk if the store utilizes a disk based store mechanism.
      • Methods inherited from class org.apache.activemq.util.ServiceSupport

        addServiceListener, dispose, isStarted, isStopped, isStopping, postStop, preStart, removeServiceListener, start, stop
      • Methods inherited from interface org.apache.activemq.Service

        start, stop
    • Constructor Detail

      • InMemoryJobSchedulerStore

        public InMemoryJobSchedulerStore()
    • Method Detail

      • doStop

        protected void doStop​(org.apache.activemq.util.ServiceStopper stopper)
                       throws Exception
        Specified by:
        doStop in class org.apache.activemq.util.ServiceSupport
        Throws:
        Exception
      • doStart

        protected void doStart()
                        throws Exception
        Specified by:
        doStart in class org.apache.activemq.util.ServiceSupport
        Throws:
        Exception
      • getJobScheduler

        public JobScheduler getJobScheduler​(String name)
                                     throws Exception
        Description copied from interface: JobSchedulerStore
        Returns the JobScheduler instance identified by the given name.
        Specified by:
        getJobScheduler in interface JobSchedulerStore
        Parameters:
        name - the name of the JobScheduler instance to lookup.
        Returns:
        the named JobScheduler or null if none exists with the given name.
        Throws:
        Exception - if an error occurs while loading the named scheduler.
      • removeJobScheduler

        public boolean removeJobScheduler​(String name)
                                   throws Exception
        Description copied from interface: JobSchedulerStore
        Removes the named JobScheduler if it exists, purging all scheduled messages assigned to it.
        Specified by:
        removeJobScheduler in interface JobSchedulerStore
        Parameters:
        name - the name of the scheduler instance to remove.
        Returns:
        true if there was a scheduler with the given name to remove.
        Throws:
        Exception - if an error occurs while removing the scheduler.
      • size

        public long size()
        Description copied from interface: JobSchedulerStore
        The size of the current store on disk if the store utilizes a disk based store mechanism.
        Specified by:
        size in interface JobSchedulerStore
        Returns:
        the current store size on disk.
      • getDirectory

        public File getDirectory()
        Description copied from interface: JobSchedulerStore
        Gets the location where the Job Scheduler will write the persistent data used to preserve and recover scheduled Jobs. If the scheduler implementation does not utilize a file system based store this method returns null.
        Specified by:
        getDirectory in interface JobSchedulerStore
        Returns:
        the directory where persistent store data is written.
      • setDirectory

        public void setDirectory​(File directory)
        Description copied from interface: JobSchedulerStore
        Sets the directory where persistent store data will be written. This method must be called before the scheduler store is started to have any effect.
        Specified by:
        setDirectory in interface JobSchedulerStore
        Parameters:
        directory - The directory where the job scheduler store is to be located.