diff --git a/lib/Net/3.5/Quartz.dll b/lib/Net/3.5/Quartz.dll
new file mode 100644
index 00000000..d0aeb954
Binary files /dev/null and b/lib/Net/3.5/Quartz.dll differ
diff --git a/lib/Net/3.5/Quartz.xml b/lib/Net/3.5/Quartz.xml
new file mode 100644
index 00000000..76eeeb5b
--- /dev/null
+++ b/lib/Net/3.5/Quartz.xml
@@ -0,0 +1,17105 @@
+
+
+
+ Quartz
+
+
+
+
+ Collection manipulation related utility methods.
+
+
+
+
+ Removes the specified item from list of items and returns
+ whether removal was success.
+
+ The items to remove from.
+ The item to remove.
+
+
+
+
+ A hash based set.
+
+
+
+
+ Represents a collection ob objects that contains no duplicate elements.
+
+
+
+
+ Adds a new element to the Collection if it is not already present.
+
+ The object to add to the collection.
+ Returns true if the object was added to the collection, otherwise false.
+
+
+
+ Adds all the elements of the specified collection to the Set.
+
+ Collection of objects to add.
+ true
+
+
+
+ Returns the first item in the set.
+
+ First object.
+
+
+
+ Initializes a new instance of the class.
+
+
+
+
+ Initializes a new instance of the class.
+
+ The whose elements are copied to the new list.
+
+ is .
+
+
+
+ Initializes a new instance of the class.
+
+ The capacity.
+
+
+
+ Unmodifiables the hash set.
+
+ The collection.
+
+
+
+
+ Adds a new element to the ArrayList if it is not already present.
+
+ Element to insert to the ArrayList.
+ Returns true if the new element was inserted, false otherwise.
+
+
+
+ Adds all the elements of the specified collection that are not present to the list.
+
+ Collection where the new elements will be added
+ Returns true if at least one element was added, false otherwise.
+
+
+
+ Returns the first item in the set.
+
+ First object.
+
+
+
+ Returns a copy of the HashSet instance.
+
+ Returns a shallow copy of the current HashSet.
+
+
+
+ A sorted set.
+
+
+
+
+ Returns a portion of the list whose elements are greater than the limit object parameter.
+
+ The start element of the portion to extract.
+ The portion of the collection whose elements are greater than the limit object parameter.
+
+
+
+ SupportClass for the TreeSet class.
+
+
+
+
+ Initializes a new instance of the class.
+
+
+
+
+ Initializes a new instance of the class.
+
+ The whose elements are copied to the new list.
+
+ is .
+
+
+
+ Initializes a new instance of the class.
+
+ The c.
+
+
+
+ Unmodifiables the tree set.
+
+ The collection.
+
+
+
+
+ Adds a new element to the ArrayList if it is not already present and sorts the ArrayList.
+
+ Element to insert to the ArrayList.
+ TRUE if the new element was inserted, FALSE otherwise.
+
+
+
+ Adds all the elements of the specified collection that are not present to the list.
+
+ Collection where the new elements will be added
+ Returns true if at least one element was added to the collection.
+
+
+
+ Returns the first item in the set.
+
+ First object.
+
+
+
+ Determines whether an element is in the the current TreeSetSupport collection. The IComparer defined for
+ the current set will be used to make comparisons between the elements already inserted in the collection and
+ the item specified.
+
+ The object to be locatet in the current collection.
+ true if item is found in the collection; otherwise, false.
+
+
+
+ Returns a portion of the list whose elements are greater than the limit object parameter.
+
+ The start element of the portion to extract.
+ The portion of the collection whose elements are greater than the limit object parameter.
+
+
+
+ Gets the IComparator object used to sort this set.
+
+
+
+
+ Responsible for creating the instances of
+ to be used within the instance.
+
+
+ Although this interface looks a lot like an 'object pool', implementations
+ do not have to support the re-use of instances. If an implementation does
+ not wish to pool instances, then the
+ method would simply create a new instance, and the
+ method would do nothing.
+
+ James House
+ Marko Lahma (.NET)
+
+
+
+ Initialize the factory, providing a handle to the
+ that should be made available within the and
+ the s within it, and a handle to the
+ that the shell will use in its own
+ operations with the .
+
+
+
+
+ Called by the
+ to obtain instances of .
+
+
+
+
+ Called by the
+ to return instances of .
+
+
+
+
+ JobRunShell instances are responsible for providing the 'safe' environment
+ for s to run in, and for performing all of the work of
+ executing the , catching ANY thrown exceptions, updating
+ the with the 's completion code,
+ etc.
+
+ A instance is created by a
+ on behalf of the which then runs the
+ shell in a thread from the configured when the
+ scheduler determines that a has been triggered.
+
+
+
+
+
+
+ James House
+ Marko Lahma (.NET)
+
+
+
+ This interface should be implemented by any class whose instances are intended
+ to be executed by a thread.
+
+
+
+
+ This method has to be implemented in order that starting of the thread causes the object's
+ run method to be called in that separately executing thread.
+
+
+
+
+ Create a JobRunShell instance with the given settings.
+
+ A handle to the that produced
+ this .
+ The instance that should be made
+ available within the .
+ the that should be used by the
+ when making updates to the .
+
+
+
+ Initializes the job execution context with given scheduler and bundle.
+
+ The scheduler.
+ The bundle offired triggers.
+
+
+
+ Requests the Shutdown.
+
+
+
+
+ This method has to be implemented in order that starting of the thread causes the object's
+ run method to be called in that separately executing thread.
+
+
+
+
+ Runs begin procedures on this instance.
+
+
+
+
+ Completes the execution.
+
+ if set to true [successful execution].
+
+
+
+ Passivates this instance.
+
+
+
+
+ Completes the trigger retry loop.
+
+ The trigger.
+ The job detail.
+ The inst code.
+
+
+
+
+ Vetoeds the job retry loop.
+
+ The trigger.
+ The job detail.
+ The inst code.
+
+
+
+
+ This is the heart of Quartz, an indirect implementation of the
+ interface, containing methods to schedule s,
+ register instances, etc.
+
+
+
+
+
+ James House
+ Marko Lahma (.NET)
+
+
+
+ Starts this instance.
+
+
+
+
+ Standbies this instance.
+
+
+
+
+ Shutdowns this instance.
+
+
+
+
+ returns true if the given JobGroup
+ is paused
+
+ The scheduling context.
+
+
+
+
+
+ returns true if the given TriggerGroup
+ is paused
+
+
+
+
+
+
+
+ Initializes the class.
+
+
+
+
+ Get the global
+ that has the given name.
+
+
+
+
+
+
+ Create a with the given configuration
+ properties.
+
+
+
+
+
+ Bind the scheduler to remoting infrastructure.
+
+
+
+
+ Un-bind the scheduler from remoting infrastructure.
+
+
+
+
+ Adds an object that should be kept as reference to prevent
+ it from being garbage collected.
+
+ The obj.
+
+
+
+ Removes the object from garbae collection protected list.
+
+ The obj.
+
+
+
+
+ Starts the 's threads that fire s.
+
+ All s that have misfired will
+ be passed to the appropriate TriggerListener(s).
+
+
+
+
+
+ Temporarily halts the 's firing of s.
+
+ The scheduler is not destroyed, and can be re-started at any time.
+
+
+
+
+
+ Halts the 's firing of s,
+ and cleans up all resources associated with the QuartzScheduler.
+ Equivalent to .
+
+ The scheduler cannot be re-started.
+
+
+
+
+
+ Halts the 's firing of s,
+ and cleans up all resources associated with the QuartzScheduler.
+
+ The scheduler cannot be re-started.
+
+
+
+ if the scheduler will not allow this method
+ to return until all currently executing jobs have completed.
+
+
+
+
+ Validates the state.
+
+
+
+
+ Add the identified by the given
+ to the Scheduler, and
+ associate the given with it.
+
+ If the given Trigger does not reference any , then it
+ will be set to reference the Job passed with it into this method.
+
+
+
+
+
+ Schedule the given with the
+ identified by the 's settings.
+
+
+
+
+ Add the given to the Scheduler - with no associated
+ . The will be 'dormant' until
+ it is scheduled with a , or
+ is called for it.
+
+ The must by definition be 'durable', if it is not,
+ SchedulerException will be thrown.
+
+
+
+
+
+ Delete the identified from the Scheduler - and any
+ associated s.
+
+ true if the Job was found and deleted.
+
+
+
+ Remove the indicated from the
+ scheduler.
+
+
+
+
+ Remove (delete) the with the
+ given name, and store the new given one - which must be associated
+ with the same job.
+
+ The scheduling context.
+ The name of the to be removed.
+ The group name of the to be removed.
+ The new to be stored.
+
+ if a with the given
+ name and group was not found and removed from the store, otherwise
+ the first fire time of the newly scheduled trigger.
+
+
+
+
+ Creates a new positive random number
+
+ The last random obtained
+ Returns a new positive random number
+
+
+
+ Trigger the identified (Execute it now) - with a non-volatile trigger.
+
+
+
+
+ Trigger the identified (Execute it
+ now) - with a volatile trigger.
+
+
+
+
+ Pause the with the given name.
+
+
+
+
+ Pause all of the s in the given group.
+
+
+
+
+ Pause the with the given
+ name - by pausing all of its current s.
+
+
+
+
+ Pause all of the s in the
+ given group - by pausing all of their s.
+
+
+
+
+ Resume (un-pause) the with the given
+ name.
+
+ If the missed one or more fire-times, then the
+ 's misfire instruction will be applied.
+
+
+
+
+
+ Resume (un-pause) all of the s in the
+ given group.
+
+ If any missed one or more fire-times, then the
+ 's misfire instruction will be applied.
+
+
+
+
+
+ Gets the paused trigger groups.
+
+ The the job scheduling context.
+
+
+
+
+ Resume (un-pause) the with
+ the given name.
+
+ If any of the 's s missed one
+ or more fire-times, then the 's misfire
+ instruction will be applied.
+
+
+
+
+
+ Resume (un-pause) all of the s
+ in the given group.
+
+ If any of the s had s that
+ missed one or more fire-times, then the 's
+ misfire instruction will be applied.
+
+
+
+
+
+ Pause all triggers - equivalent of calling
+ on every group.
+
+ When is called (to un-pause), trigger misfire
+ instructions WILL be applied.
+
+
+
+
+
+
+
+ Resume (un-pause) all triggers - equivalent of calling
+ on every group.
+
+ If any missed one or more fire-times, then the
+ 's misfire instruction will be applied.
+
+
+
+
+
+
+ Get the names of all known groups.
+
+
+
+
+ Get the names of all the s in the
+ given group.
+
+
+
+
+ Get all s that are associated with the
+ identified .
+
+
+
+
+ Get the names of all known
+ groups.
+
+
+
+
+ Get the names of all the s in
+ the given group.
+
+
+
+
+ Get the for the
+ instance with the given name and group.
+
+
+
+
+ Get the instance with the given name and
+ group.
+
+
+
+
+ Get the current state of the identified .
+
+
+
+
+
+
+
+
+ Add (register) the given to the Scheduler.
+
+
+
+
+ Delete the identified from the Scheduler.
+
+ true if the Calendar was found and deleted.
+
+
+
+ Get the instance with the given name.
+
+
+
+
+ Get the names of all registered s.
+
+
+
+
+ Add the given to the
+ 'sglobal list.
+
+ Listeners in the 'global' list receive notification of execution events
+ for ALL s.
+
+
+
+
+
+ Add the given to the
+ 's list, of registered s.
+
+
+
+
+ Remove the given from the
+ 's list of global listeners.
+
+
+ true if the identifed listener was found in the list, and removed.
+
+
+
+
+ Remove the identifed from the 's
+ list of global listeners.
+
+
+ true if the identifed listener was found in the list, and removed.
+
+
+
+ Remove the identifed from
+ the 's list of registered listeners.
+
+
+ true if the identifed listener was found in the list, and removed.
+
+
+
+
+ Get the non-global that has the given name.
+
+
+
+
+ Add the given to the
+ 'sglobal list.
+
+ Listeners in the 'global' list receive notification of execution events
+ for ALL s.
+
+
+
+
+
+ Add the given to the
+ 's list, of registered s.
+
+
+
+
+ Remove the given from
+ the 's list of global listeners.
+
+
+ true if the identifed listener was found in the list, and removed.
+
+
+
+
+ Remove the identifed from the 's
+ list of global listeners.
+
+
+ true if the identifed listener was found in the list, and removed
+
+
+
+ Remove the identifed
+ from the 's list of registered listeners.
+
+
+ true if the identifed listener was found in the list, and removed.
+
+
+
+
+ Get the non-global
+ that has the given name.
+
+
+
+
+ Get the global that
+ has the given name.
+
+
+
+
+
+
+ Register the given with the
+ .
+
+
+
+
+ Remove the given from the
+ .
+
+
+ true if the identifed listener was found in the list, and removed.
+
+
+
+
+ Notifies the job store job complete.
+
+ The job scheduling context.
+ The trigger.
+ The detail.
+ The instruction code.
+
+
+
+ Notifies the scheduler thread.
+
+
+
+
+ Notifies the trigger listeners about fired trigger.
+
+ The job execution context.
+
+
+
+
+ Notifies the trigger listeners about misfired trigger.
+
+ The trigger.
+
+
+
+ Notifies the trigger listeners of completion.
+
+ The job executution context.
+ The instruction code to report to triggers.
+
+
+
+ Notifies the job listeners about job to be executed.
+
+ The jec.
+
+
+
+ Notifies the job listeners that job exucution was vetoed.
+
+ The job execution context.
+
+
+
+ Notifies the job listeners that job was executed.
+
+ The jec.
+ The je.
+
+
+
+ Notifies the scheduler listeners about scheduler error.
+
+ The MSG.
+ The se.
+
+
+
+ Notifies the scheduler listeners about job that was scheduled.
+
+ The trigger.
+
+
+
+ Notifies the scheduler listeners about job that was unscheduled.
+
+ Name of the trigger.
+ The trigger group.
+
+
+
+ Notifies the scheduler listeners about finalized trigger.
+
+ The trigger.
+
+
+
+ Notifies the scheduler listeners about paused trigger.
+
+ The name.
+ The group.
+
+
+
+ Notifies the scheduler listeners resumed trigger.
+
+ The name.
+ The group.
+
+
+
+ Notifies the scheduler listeners about paused job.
+
+ The name.
+ The group.
+
+
+
+ Notifies the scheduler listeners about resumed job.
+
+ The name.
+ The group.
+
+
+
+ Notifies the scheduler listeners about scheduler shutdown.
+
+
+
+
+ Interrupt all instances of the identified InterruptableJob.
+
+
+
+
+ Obtains a lifetime service object to control the lifetime policy for this instance.
+
+
+
+
+ Gets the version of the Quartz Scheduler.
+
+ The version.
+
+
+
+ Gets the version major.
+
+ The version major.
+
+
+
+ Gets the version minor.
+
+ The version minor.
+
+
+
+ Gets the version iteration.
+
+ The version iteration.
+
+
+
+ Gets the scheduler signaler.
+
+ The scheduler signaler.
+
+
+
+ Returns the name of the .
+
+
+
+
+ Returns the instance Id of the .
+
+
+
+
+ Returns the of the .
+
+
+
+
+ Gets or sets a value indicating whether to signal on scheduling change.
+
+
+ true if schduler should signal on scheduling change; otherwise, false.
+
+
+
+
+ Reports whether the is paused.
+
+
+
+
+ Gets the job store class.
+
+ The job store class.
+
+
+
+ Gets the thread pool class.
+
+ The thread pool class.
+
+
+
+ Gets the size of the thread pool.
+
+ The size of the thread pool.
+
+
+
+ Reports whether the has been Shutdown.
+
+
+
+
+ Return a list of objects that
+ represent all currently executing Jobs in this Scheduler instance.
+
+ This method is not cluster aware. That is, it will only return Jobs
+ currently executing in this Scheduler instance, not across the entire
+ cluster.
+
+
+ Note that the list returned is an 'instantaneous' snap-shot, and that as
+ soon as it's returned, the true list of executing jobs may be different.
+
+
+
+
+
+ Get a List containing all of the
+ s in the 'sglobal list.
+
+
+
+
+ Get a Set containing the names of all the non-global
+ s registered with the .
+
+
+
+
+ Get a list containing all of the
+ s in the 'sglobal list.
+
+
+
+
+ Get a Set containing the names of all the non-global
+ s registered with the .
+
+
+
+
+ Get a List containing all of the
+ s registered with the .
+
+
+
+
+ Gets or sets the job factory.
+
+ The job factory.
+
+
+
+ Gets the running since.
+
+ The running since.
+
+
+
+ Gets the number of jobs executed.
+
+ The number of jobs executed.
+
+
+
+ Gets a value indicating whether this scheduler supports persistence.
+
+ true if supports persistence; otherwise, false.
+
+
+
+ Helper class to start scheduler in a delayed fashion.
+
+
+
+
+ ErrorLogger - Scheduler Listener Class
+
+
+
+
+ A helpful abstract base class for implementors of
+ .
+
+
+ The methods in this class are empty so you only need to override the
+ subset for the events you care about.
+
+
+
+
+
+ The interface to be implemented by classes that want to be informed of major
+ events.
+
+
+
+
+ James House
+
+
+
+ Called by the when a
+ is scheduled.
+
+
+
+
+ Called by the when a
+ is unscheduled.
+
+
+
+
+ Called by the when a
+ has reached the condition in which it will never fire again.
+
+
+
+
+ Called by the when a
+ or group of s has been paused.
+
+ If a group was paused, then the parameter
+ will be null.
+
+
+ Name of the trigger.
+ The trigger group.
+
+
+
+ Called by the when a
+ or group of s has been un-paused.
+
+ If a group was resumed, then the parameter
+ will be null.
+
+
+ Name of the trigger.
+ The trigger group.
+
+
+
+ Called by the when a
+ or group of s has been paused.
+
+ If a group was paused, then the parameter will be
+ null. If all jobs were paused, then both parameters will be null.
+
+
+ Name of the job.
+ The job group.
+
+
+
+ Called by the when a
+ or group of s has been un-paused.
+
+ If a group was resumed, then the parameter will
+ be null. If all jobs were paused, then both parameters will be null.
+
+
+ The job group.
+
+
+
+ Called by the when a serious error has
+ occured within the scheduler - such as repeated failures in the ,
+ or the inability to instantiate a instance when its
+ has fired.
+
+ The property of the given SchedulerException
+ can be used to determine more specific information about the type of
+ error that was encountered.
+
+
+
+
+
+ Called by the to inform the listener
+ that it has Shutdown.
+
+
+
+
+ Get the for this
+ type's category. This should be used by subclasses for logging.
+
+
+
+
+ The interface to be implemented by classes that want to be informed when a
+ executes. In general, applications that use a
+ will not have use for this mechanism.
+
+
+
+
+
+
+ James House
+
+
+
+ Called by the when a
+ is about to be executed (an associated
+ has occured).
+
+ This method will not be invoked if the execution of the Job was vetoed
+ by a .
+
+
+
+
+
+
+ Called by the when a
+ was about to be executed (an associated
+ has occured), but a vetoed it's
+ execution.
+
+
+
+
+
+ Called by the after a
+ has been executed, and be for the associated 's
+ method has been called.
+
+
+
+
+ Get the name of the .
+
+
+
+
+ Contains all of the resources (,,
+ etc.) necessary to create a instance.
+
+
+ James House
+ Marko Lahma (.NET)
+
+
+
+ Gets the unique identifier.
+
+ Name of the scheduler.
+ The scheduler instance id.
+
+
+
+
+ Gets the unique identifier.
+
+
+
+
+
+ Add the given for the
+ to use. This method expects the plugin's
+ "initialize" method to be invoked externally (either before or after
+ this method is called).
+
+
+
+
+
+ Get or set the name for the .
+
+
+ if name is null or empty.
+
+
+
+
+ Get or set the instance Id for the .
+
+
+ if name is null or empty.
+
+
+
+
+ Get or set the name for the .
+
+
+ if name is null or empty.
+
+
+
+
+ Get or set the for the
+ to use.
+
+
+ if threadPool is null.
+
+
+
+
+ Get or set the for the
+ to use.
+
+
+ if jobStore is null.
+
+
+
+
+ Get or set the for the
+ to use.
+
+
+ if jobRunShellFactory is null.
+
+
+
+
+ Get the of all
+ s for the
+ to use.
+
+
+
+
+
+ Gets or sets a value indicating whether to make scheduler thread daemon.
+
+
+ true if scheduler should be thread daemon; otherwise, false.
+
+
+
+
+ Gets or sets the scheduler exporter.
+
+ The scheduler exporter.
+
+
+
+ The thread responsible for performing the work of firing
+ s that are registered with the .
+
+
+
+
+ James House
+ Marko Lahma (.NET)
+
+
+
+ Support class used to handle threads
+
+
+
+
+ The instance of System.Threading.Thread
+
+
+
+
+ Initializes a new instance of the QuartzThread class
+
+
+
+
+ Initializes a new instance of the Thread class.
+
+ The name of the thread
+
+
+
+ Initializes a new instance of the Thread class.
+
+ A ThreadStart delegate that references the methods to be invoked when this thread begins executing
+
+
+
+ Initializes a new instance of the Thread class.
+
+ A ThreadStart delegate that references the methods to be invoked when this thread begins executing
+ The name of the thread
+
+
+
+ This method has no functionality unless the method is overridden
+
+
+
+
+ Causes the operating system to change the state of the current thread instance to ThreadState.Running
+
+
+
+
+ Interrupts a thread that is in the WaitSleepJoin thread state
+
+
+
+
+ Blocks the calling thread until a thread terminates
+
+
+
+
+ Blocks the calling thread until a thread terminates or the specified time elapses
+
+ Time of wait in milliseconds
+
+
+
+ Blocks the calling thread until a thread terminates or the specified time elapses
+
+ Time of wait in milliseconds
+ Time of wait in nanoseconds
+
+
+
+ Resumes a thread that has been suspended
+
+
+
+
+ Raises a ThreadAbortException in the thread on which it is invoked,
+ to begin the process of terminating the thread. Calling this method
+ usually terminates the thread
+
+
+
+
+ Raises a ThreadAbortException in the thread on which it is invoked,
+ to begin the process of terminating the thread while also providing
+ exception information about the thread termination.
+ Calling this method usually terminates the thread.
+
+ An object that contains application-specific information, such as state, which can be used by the thread being aborted
+
+
+
+ Suspends the thread, if the thread is already suspended it has no effect
+
+
+
+
+ Obtain a string that represents the current object
+
+ A string that represents the current object
+
+
+
+ Gets the currently running thread
+
+ The currently running thread
+
+
+
+ Gets the current thread instance
+
+
+
+
+ Gets or sets the name of the thread
+
+
+
+
+ Gets or sets a value indicating the scheduling priority of a thread
+
+
+
+
+ Gets a value indicating the execution status of the current thread
+
+
+
+
+ Gets or sets a value indicating whether or not a thread is a background thread.
+
+
+
+
+ Gets the randomized idle wait time.
+
+ The randomized idle wait time.
+
+
+
+ Construct a new for the given
+ as a non-daemon
+ with normal priority.
+
+
+
+
+ Construct a new for the given
+ as a with the given
+ attributes.
+
+
+
+
+ Signals the main processing loop to pause at the next possible point.
+
+
+
+
+ Signals the main processing loop to pause at the next possible point.
+
+
+
+
+ Signals the main processing loop that a change in scheduling has been
+ made - in order to interrupt any sleeping that may be occuring while
+ waiting for the fire time to arrive.
+
+
+ the time when the newly scheduled trigger
+ will fire. If this method is being called do to some other even (rather
+ than scheduling a trigger), the caller should pass null.
+
+
+
+
+ The main processing loop of the .
+
+
+
+
+ Trigger retry loop that is executed on error condition.
+
+ The bndle.
+
+
+
+ Releases the trigger retry loop.
+
+ The trigger.
+
+
+
+ Gets the log.
+
+ The log.
+
+
+
+ Sets the idle wait time.
+
+ The idle wait time.
+
+
+
+ Gets a value indicating whether this is paused.
+
+ true if paused; otherwise, false.
+
+
+
+ Gets or sets the db failure retry interval.
+
+ The db failure retry interval.
+
+
+
+ An interface to be used by instances in order to
+ communicate signals back to the .
+
+ James House
+ Marko Lahma (.NET)
+
+
+
+ An interface to be used by instances in order to
+ communicate signals back to the .
+
+ James House
+
+
+
+ Notifies the scheduler about misfired trigger.
+
+ The trigger that misfired.
+
+
+
+ Notifies the scheduler about finalized trigger.
+
+ The trigger that has finalized.
+
+
+
+ Signals the scheduling change.
+
+
+
+
+ Notifies the scheduler about misfired trigger.
+
+ The trigger that misfired.
+
+
+
+ Notifies the scheduler about finalized trigger.
+
+ The trigger that has finalized.
+
+
+
+ Signals the scheduling change.
+
+
+
+
+ An object used to pass information about the 'client' to the .
+
+
+ James House
+ Marko Lahma (.NET)
+
+
+
+ get the instanceId in the cluster.
+
+
+ Set the instanceId.
+
+
+
+
+
+ Metadata information about specific ADO.NET driver library. Metadata is used to
+ create correct types of object instances to interact with the underlying
+ database.
+
+
+
+
+ Initializes this instance. Parses information and initializes startup
+ values.
+
+
+
+
+ Gets the name of the parameter which includes the parameter prefix for this
+ database.
+
+ Name of the parameter.
+
+
+ Gets or sets the name of the assembly that holds the connection library.
+ The name of the assembly.
+
+
+
+ Gets or sets the name of the product.
+
+ The name of the product.
+
+
+
+ Gets or sets the type of the connection.
+
+ The type of the connection.
+
+
+
+ Gets or sets the type of the command.
+
+ The type of the command.
+
+
+
+ Gets or sets the type of the parameter.
+
+ The type of the parameter.
+
+
+
+ Gets the type of the command builder.
+
+ The type of the command builder.
+
+
+ Gets the command builder's derive parameters method.
+ The command builder derive parameters method.
+
+
+
+ Gets or sets the parameter name prefix.
+
+ The parameter name prefix.
+
+
+
+ Gets or sets the type of the exception that is thrown when using driver
+ library.
+
+ The type of the exception.
+
+
+
+ Gets or sets a value indicating whether parameters are bind by name when using
+ ADO.NET parameters.
+
+ true if parameters are bind by name; otherwise, false.
+
+
+ Gets or sets the type of the database parameters.
+ The type of the parameter db.
+
+
+
+ Gets the parameter db type property.
+
+ The parameter db type property.
+
+
+
+ Gets the parameter is nullable property.
+
+ The parameter is nullable property.
+
+
+
+ Gets or sets the type of the db binary column. This is a string representation of
+ Enum element because this information is database driver specific.
+
+ The type of the db binary.
+
+
+ Gets the type of the db binary.
+ The type of the db binary.
+
+
+
+ Sets the name of the parameter db type property.
+
+ The name of the parameter db type property.
+
+
+
+ Gets or sets a value indicating whether [use parameter name prefix in parameter collection].
+
+
+ true if [use parameter name prefix in parameter collection]; otherwise, false.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Returns a new command object for executing SQL statments/Stored Procedures
+ against the database.
+
+ An new
+
+
+
+ Returns a new instance of the providers CommandBuilder class.
+
+ In .NET 1.1 there was no common base class or interface
+ for command builders, hence the return signature is object to
+ be portable (but more loosely typed) across .NET 1.1/2.0
+ A new Command Builder
+
+
+
+ Returns a new connection object to communicate with the database.
+
+ A new
+
+
+
+ Returns a new parameter object for binding values to parameter
+ placeholders in SQL statements or Stored Procedure variables.
+
+ A new
+
+
+
+ Shutdowns this instance.
+
+
+
+
+ Connection string used to create connections.
+
+
+
+
+ Registers DB metadata information for given provider name.
+
+
+
+
+
+
+ Initializes a new instance of the class.
+
+ Name of the db provider.
+ The connection string.
+
+
+
+ Returns a new command object for executing SQL statments/Stored Procedures
+ against the database.
+
+ An new
+
+
+
+ Returns a new instance of the providers CommandBuilder class.
+
+ A new Command Builder
+ In .NET 1.1 there was no common base class or interface
+ for command builders, hence the return signature is object to
+ be portable (but more loosely typed) across .NET 1.1/2.0
+
+
+
+ Returns a new connection object to communicate with the database.
+
+ A new
+
+
+
+ Returns a new parameter object for binding values to parameter
+ placeholders in SQL statements or Stored Procedure variables.
+
+ A new
+
+
+
+ Shutdowns this instance.
+
+
+
+
+ Connection string used to create connections.
+
+
+
+
+
+ Gets the metadata.
+
+ The metadata.
+
+
+
+ Summary description for DbProviderFactory.
+
+
+
+
+ This interface can be implemented by any
+ class that needs to use the constants contained herein.
+
+ Jeffrey Wescott
+ James House
+
+
+ @deprecated Whether a trigger has misfired is no longer a state, but
+ rather now identified dynamically by whether the trigger's next fire
+ time is more than the misfire threshold time in the past.
+
+
+
+ This class contains utility functions for use in all delegate classes.
+
+ Jeffrey Wescott
+
+
+
+ Replace the table prefix in a query by replacing any occurrences of
+ "{0}" with the table prefix.
+
+ The unsubstitued query
+ The table prefix
+ The query, with proper table prefix substituted
+
+
+
+ Obtain a unique key for a given job.
+
+ The job name
+ The group containing the job
+
+ A unique key
+
+
+
+ Obtain a unique key for a given trigger.
+
+ The trigger name
+ The group containing the trigger
+ A unique key
+
+
+
+ Base class for database based lock handlers for providing thread/resource locking
+ in order to protect resources from being altered by multiple threads at the
+ same time.
+
+
+
+
+ This class extends
+ to include the query string constants in use by the
+ class.
+
+ Jeffrey Wescott
+
+
+
+ An interface for providing thread/resource locking in order to protect
+ resources from being altered by multiple threads at the same time.
+
+ James House
+
+
+
+ Grants a lock on the identified resource to the calling thread (blocking
+ until it is available).
+
+ true if the lock was obtained.
+
+
+
+ Release the lock on the identified resource if it is held by the calling
+ thread.
+
+
+
+
+ Determine whether the calling thread owns a lock on the identified
+ resource.
+
+
+
+
+ Whether this Semaphore implementation requires a database connection for
+ its lock management operations.
+
+
+
+
+
+
+
+ Interface for Quartz objects that need to know what the table prefix of
+ the tables used by a ADO.NET JobStore is.
+
+
+
+
+ Initializes a new instance of the class.
+
+ The table prefix.
+ The SQL.
+ The default SQL.
+ The db provider.
+
+
+
+ Execute the SQL that will lock the proper database row.
+
+
+
+
+
+
+
+ Grants a lock on the identified resource to the calling thread (blocking
+ until it is available).
+
+
+
+
+ true if the lock was obtained.
+
+
+
+ Release the lock on the identified resource if it is held by the calling
+ thread.
+
+
+
+
+
+
+ Determine whether the calling thread owns a lock on the identified
+ resource.
+
+
+
+
+
+
+
+ Gets or sets the lock owners.
+
+ The lock owners.
+
+
+
+ Gets the log.
+
+ The log.
+
+
+
+ This Semaphore implementation does use the database.
+
+
+
+
+ Gets or sets the table prefix.
+
+ The table prefix.
+
+
+
+ A FirebirdDelegate specific driver delegate.
+
+ Marko Lahma
+
+
+
+ This is meant to be an abstract base class for most, if not all,
+ implementations. Subclasses should override only those methods that need
+ special handling for the DBMS driver in question.
+
+ Jeffrey Wescott
+ James House
+ Marko Lahma (.NET)
+
+
+
+ This is the base interface for all driver delegate classes.
+
+
+
+ This interface is very similar to the
+ interface except each method has an additional
+ parameter.
+
+
+ Unless a database driver has some extremely-DB-specific
+ requirements, any IDriverDelegate implementation classes should extend the
+ class.
+
+
+ Jeffrey Wescott
+ James House
+ Marko Lahma (.NET)
+
+
+
+ Update all triggers having one of the two given states, to the given new
+ state.
+
+ The DB Connection
+ The new state for the triggers
+ The first old state to update
+ The second old state to update
+ Number of rows updated
+
+
+
+ Get the names of all of the triggers that have misfired - according to
+ the given timestamp.
+
+ The DB Connection
+ The timestamp.
+ An array of objects
+
+
+
+ Get the names of all of the triggers in the given state that have
+ misfired - according to the given timestamp.
+
+ The DB Connection
+ The state.
+ The time stamp.
+ An array of objects
+
+
+
+ Get the names of all of the triggers in the given group and state that
+ have misfired - according to the given timestamp.
+
+ The DB Connection
+ Name of the group.
+ The state.
+ The timestamp.
+ An array of objects
+
+
+
+ Select all of the triggers for jobs that are requesting recovery. The
+ returned trigger objects will have unique "recoverXXX" trigger names and
+ will be in the trigger group.
+
+
+ In order to preserve the ordering of the triggers, the fire time will be
+ set from the ColumnFiredTime column in the TableFiredTriggers
+ table. The caller is responsible for calling
+ on each returned trigger. It is also up to the caller to insert the
+ returned triggers to ensure that they are fired.
+
+ The DB Connection
+ An array of objects
+
+
+
+ Delete all fired triggers.
+
+ The DB Connection
+ The number of rows deleted
+
+
+
+ Delete all fired triggers of the given instance.
+
+ The DB Connection
+ The instance id.
+ The number of rows deleted
+
+
+
+ Delete all volatile fired triggers.
+
+ The DB Connection
+ The number of rows deleted
+
+
+
+ Get the names of all of the triggers that are volatile.
+
+ The DB Connection
+ An array of see cref="Key" /> objects.
+
+
+
+ Get the names of all of the jobs that are volatile.
+
+ The DB Connection
+ An array of objects.
+
+
+
+ Insert the job detail record.
+
+ The DB Connection
+ The job to insert.
+ Number of rows inserted.
+
+
+
+ Update the job detail record.
+
+ The DB Connection.
+ The job to update.
+ Number of rows updated.
+
+
+
+ Get the names of all of the triggers associated with the given job.
+
+
+
+ The DB Connection
+ The job name
+ The job group
+
+
+
+ Delete all job listeners for the given job.
+
+ The DB Connection
+ The name of the job
+ The group containing the job
+ The number of rows deleted
+
+
+
+ Delete the job detail record for the given job.
+
+ The DB Connection
+ the name of the job
+ Name of the group.
+ the number of rows deleted
+
+
+
+ Check whether or not the given job is stateful.
+
+ The DB Connection
+ The name of the job
+ The group containing the job
+ true if the job exists and is stateful, false otherwise
+
+
+
+ Check whether or not the given job exists.
+
+ The DB Connection
+ Name of the job.
+ Name of the group.
+ true if the job exists, false otherwise
+
+
+
+ Update the job data map for the given job.
+
+ The DB Connection
+ The job.
+ the number of rows updated
+
+
+
+ Associate a listener with a job.
+
+ The DB Connection
+ The job to associate with the listener.
+ The listener to insert.
+ The number of rows inserted.
+
+
+
+ Get all of the listeners for a given job.
+
+
+
+ The DB Connection
+ The job name whose listeners are wanted
+ The group containing the job
+ array of listener names
+
+
+
+ Select the JobDetail object for a given job name / group name.
+
+ The DB Connection
+ The job name whose listeners are wanted
+ The group containing the job
+ The class load helper.
+ The populated JobDetail object
+
+
+
+ Select the total number of jobs stored.
+
+ The DB Connection
+ the total number of jobs stored
+
+
+
+ Select all of the job group names that are stored.
+
+ The DB Connection.
+ an array of group names
+
+
+
+ Select all of the jobs contained in a given group.
+
+ The DB Connection
+ The group containing the jobs
+ an array of job names
+
+
+
+ Insert the base trigger data.
+
+ The DB Connection
+ The trigger to insert.
+ The state that the trigger should be stored in.
+ The job detail.
+ The number of rows inserted
+
+
+
+ Insert the simple trigger data.
+
+ The DB Connection
+ The trigger to insert
+ The number of rows inserted
+
+
+
+ Insert the blob trigger data.
+
+ The DB Connection
+ The trigger to insert
+ The number of rows inserted
+
+
+
+ Insert the cron trigger data.
+
+ the DB Connection
+ The trigger.
+ the number of rows inserted
+
+
+
+ Update the base trigger data.
+
+ the DB Connection
+ The trigger.
+ The state.
+ The job detail.
+ the number of rows updated
+
+
+
+ Update the simple trigger data.
+
+ the DB Connection
+ The trigger.
+ the number of rows updated
+
+
+
+ Update the cron trigger data.
+
+ the DB Connection
+ The trigger.
+ the number of rows updated
+
+
+
+ Update the blob trigger data.
+
+ the DB Connection
+ The trigger.
+ the number of rows updated
+
+
+
+ Check whether or not a trigger exists.
+
+ the DB Connection
+ Name of the trigger.
+ Name of the group.
+ the number of rows updated
+
+
+
+ Update the state for a given trigger.
+
+ The DB Connection
+ The name of the trigger.
+ The group containing the trigger.
+ The new state for the trigger.
+ the number of rows updated
+
+
+
+ Update the given trigger to the given new state, if it is in the given
+ old state.
+
+ The DB connection
+ The name of the trigger.
+ The group containing the trigger
+ The new state for the trigger
+ The old state the trigger must be in
+ int the number of rows updated
+
+
+
+ Update the given trigger to the given new state, if it is one of the
+ given old states.
+
+ The DB connection
+ The name of the trigger
+ The group containing the trigger
+ The new state for the trigger
+ One of the old state the trigger must be in
+ One of the old state the trigger must be in
+ One of the old state the trigger must be in
+
+ int the number of rows updated
+
+ SQLException
+
+
+
+ Update the all triggers to the given new state, if they are in one of
+ the given old states AND its next fire time is before the given time.
+
+ The DB connection
+ The new state for the trigger
+ One of the old state the trigger must be in
+ One of the old state the trigger must be in
+ The time before which the trigger's next fire time must be
+ int the number of rows updated
+
+
+
+ Update all triggers in the given group to the given new state, if they
+ are in one of the given old states.
+
+ The DB connection
+ The group containing the trigger
+ The new state for the trigger
+ One of the old state the trigger must be in
+ One of the old state the trigger must be in
+ One of the old state the trigger must be in
+ The number of rows updated
+
+
+
+ Update all of the triggers of the given group to the given new state, if
+ they are in the given old state.
+
+ The DB connection
+ The group containing the triggers
+ The new state for the trigger group
+ The old state the triggers must be in.
+ int the number of rows updated
+
+
+
+ Update the states of all triggers associated with the given job.
+
+ The DB Connection
+ The name of the job.
+ The group containing the job.
+ The new state for the triggers.
+ The number of rows updated
+
+
+
+ Update the states of any triggers associated with the given job, that
+ are the given current state.
+
+ The DB Connection
+ The name of the job
+ The group containing the job
+ The new state for the triggers
+ The old state of the triggers
+ the number of rows updated
+
+
+
+ Delete all of the listeners associated with a given trigger.
+
+ The DB Connection
+ The name of the trigger whose listeners will be deleted
+ The name of the group containing the trigger
+ the number of rows deleted
+
+
+
+ Associate a listener with the given trigger.
+
+ The DB Connectio
+ The trigger
+ The name of the listener to associate with the trigger
+ the number of rows inserted
+
+
+
+ Select the listeners associated with a given trigger.
+
+ The DB Connection
+ The name of the trigger
+ The group containing the trigger
+ array of trigger listener names
+
+
+
+ Delete the simple trigger data for a trigger.
+
+ The DB Connection
+ The name of the trigger
+ The group containing the trigger
+ The number of rows deleted
+
+
+
+ Delete the BLOB trigger data for a trigger.
+
+ The DB Connection
+ The name of the trigger
+ The group containing the trigger
+ The number of rows deleted
+
+
+
+ Delete the cron trigger data for a trigger.
+
+ The DB Connection
+ The name of the trigger
+ The group containing the trigger
+ the number of rows deleted
+
+
+
+ Delete the base trigger data for a trigger.
+
+ The DB Connection
+ The name of the trigger
+ The group containing the trigger
+ the number of rows deleted
+
+
+
+ Select the number of triggers associated with a given job.
+
+ The DB Connection
+ The name of the job
+ The group containing the job
+ the number of triggers for the given job
+
+
+
+ Select the job to which the trigger is associated.
+
+ The DB Connection
+ The name of the trigger
+ The group containing the trigger
+ The load helper.
+
+ The object associated with the given trigger
+
+
+
+
+ Select the stateful jobs which are referenced by triggers in the given
+ trigger group.
+
+ The DB Connection
+ The trigger group.
+ a List of Keys to jobs.
+
+
+
+ Select the triggers for a job>
+
+ The DB Connection
+ The name of the trigger
+ The group containing the trigger
+ an array of objects associated with a given job.
+
+
+
+ Select the triggers for a calendar
+
+ The DB Connection.
+ Name of the calendar.
+
+ An array of objects associated with a given job.
+
+
+
+
+ Select a trigger.
+
+ The DB Connection.
+ The name of the trigger.
+ The group containing the trigger.
+ The object.
+
+
+
+
+ Select a trigger's JobDataMap.
+
+ The DB Connection.
+ The name of the trigger.
+ The group containing the trigger.
+ The of the Trigger, never null, but possibly empty.
+
+
+
+ Select a trigger's state value.
+
+ The DB Connection.
+ The name of the trigger.
+ The group containing the trigger.
+ The object.
+
+
+
+ Select a triggers status (state and next fire time).
+
+ The DB Connection.
+ The name of the trigger.
+ The group containing the trigger.
+ A object, or null
+
+
+
+ Select the total number of triggers stored.
+
+ The DB Connection.
+ The total number of triggers stored.
+
+
+
+ Select all of the trigger group names that are stored.
+
+ The DB Connection.
+ An array of group names.
+
+
+
+ Select all of the triggers contained in a given group.
+
+ The DB Connection.
+ The group containing the triggers.
+ An array of trigger names.
+
+
+
+ Select all of the triggers in a given state.
+
+ The DB Connection.
+ The state the triggers must be in.
+ An array of trigger s.
+
+
+
+ Inserts the paused trigger group.
+
+ The conn.
+ Name of the group.
+
+
+
+
+ Deletes the paused trigger group.
+
+ The conn.
+ Name of the group.
+
+
+
+
+ Deletes all paused trigger groups.
+
+ The conn.
+
+
+
+
+ Determines whether the specified trigger group is paused.
+
+ The conn.
+ Name of the group.
+
+ true if trigger group is paused; otherwise, false.
+
+
+
+
+ Selects the paused trigger groups.
+
+ The DB Connection.
+
+
+
+
+ Determines whether given trigger group already exists.
+
+ The conn.
+ Name of the group.
+
+ true if trigger group exists; otherwise, false.
+
+
+
+
+ Insert a new calendar.
+
+ The DB Connection.
+ The name for the new calendar.
+ The calendar.
+ The number of rows inserted.
+
+
+
+ Update a calendar.
+
+ The DB Connection.
+ The name for the new calendar.
+ The calendar.
+ The number of rows updated.
+
+
+
+ Check whether or not a calendar exists.
+
+ The DB Connection.
+ The name of the calendar.
+ true if the trigger exists, false otherwise.
+
+
+
+ Select a calendar.
+
+ The DB Connection.
+ The name of the calendar.
+ The Calendar.
+
+
+
+ Check whether or not a calendar is referenced by any triggers.
+
+ The DB Connection.
+ The name of the calendar.
+ true if any triggers reference the calendar, false otherwise
+
+
+
+ Delete a calendar.
+
+ The DB Connection
+ The name of the trigger.
+ The number of rows deleted.
+
+
+
+ Select the total number of calendars stored.
+
+ The DB Connection
+ The total number of calendars stored.
+
+
+
+ Select all of the stored calendars.
+
+ The DB Connection
+ An array of calendar names.
+
+
+
+ Select the trigger that will be fired at the given fire time.
+
+ The DB Connection
+ The time that the trigger will be fired.
+
+ A representing the
+ trigger that will be fired at the given fire time, or null if no
+ trigger will be fired at that time
+
+
+
+
+ Insert a fired trigger.
+
+ The DB Connection
+ The trigger.
+ The state that the trigger should be stored in.
+ The job detail.
+ The number of rows inserted.
+
+
+
+ Select the states of all fired-trigger records for a given trigger, or
+ trigger group if trigger name is .
+
+ The DB Connection
+ Name of the trigger.
+ Name of the group.
+ A list of FiredTriggerRecord objects.
+
+
+
+ Select the states of all fired-trigger records for a given job, or job
+ group if job name is .
+
+ The DB Connection
+ Name of the job.
+ Name of the group.
+ A List of FiredTriggerRecord objects.
+
+
+
+ Select the states of all fired-trigger records for a given scheduler
+ instance.
+
+ The DB Connection
+ Name of the instance.
+ A list of FiredTriggerRecord objects.
+
+
+
+ Delete a fired trigger.
+
+ The DB Connection
+ The fired trigger entry to delete.
+ The number of rows deleted.
+
+
+
+ Get the number instances of the identified job currently executing.
+
+ The DB Connection
+ Name of the job.
+ The job group.
+
+ The number instances of the identified job currently executing.
+
+
+
+
+ Insert a scheduler-instance state record.
+
+ The DB Connection
+ The instance id.
+ The check in time.
+ The interval.
+ The number of inserted rows.
+
+
+
+ Delete a scheduler-instance state record.
+
+ The DB Connection
+ The instance id.
+ The number of deleted rows.
+
+
+
+ Update a scheduler-instance state record.
+
+ The DB Connection
+ The instance id.
+ The check in time.
+ The number of updated rows.
+
+
+
+ A List of all current s.
+
+ If instanceId is not null, then only the record for the identified
+ instance will be returned.
+
+
+ The DB Connection
+ The instance id.
+
+
+
+
+ Select the next trigger which will fire to fire between the two given timestamps
+ in ascending order of fire time, and then descending by priority.
+
+ The conn.
+ highest value of of the triggers (exclusive)
+ highest value of of the triggers (inclusive)
+ A (never null, possibly empty) list of the identifiers (Key objects) of the next triggers to be fired.
+
+
+
+ Select the distinct instance names of all fired-trigger records.
+
+
+ This is useful when trying to identify orphaned fired triggers (a
+ fired trigger without a scheduler state record.)
+
+ The conn.
+
+
+
+
+ Counts the misfired triggers in states.
+
+ The conn.
+ The state1.
+ The state2.
+ The ts.
+
+
+
+
+ Selects the misfired triggers in states.
+
+ The conn.
+ The state1.
+ The state2.
+ The ts.
+ The count.
+ The result list.
+
+
+
+
+ Create new StdAdoDelegate instance.
+
+ the logger to use during execution
+ the prefix of all table names
+ The instance id.
+ The db provider.
+
+
+
+ Create new StdAdoDelegate instance.
+
+ the logger to use during execution
+ the prefix of all table names
+ The instance id.
+ The db provider.
+ if set to true [use properties].
+
+
+
+ Insert the job detail record.
+
+ the DB Connection
+ the new state for the triggers
+ the first old state to update
+ the second old state to update
+ number of rows updated
+
+
+
+ Get the names of all of the triggers that have misfired.
+
+ the DB Connection
+ The ts.
+ an array of objects
+
+
+
+ Select all of the triggers in a given state.
+
+ The DB Connection
+ The state the triggers must be in
+ an array of trigger s
+
+
+
+ Get the names of all of the triggers in the given state that have
+ misfired - according to the given timestamp.
+
+ The DB Connection
+ The state.
+ The time stamp.
+ An array of objects
+
+
+
+ Get the names of all of the triggers in the given states that have
+ misfired - according to the given timestamp. No more than count will
+ be returned.
+
+ The conn.
+ The state1.
+ The state2.
+ The ts.
+ The most misfired triggers to return, negative for all
+
+ Output parameter. A List of objects. Must not be null
+
+ Whether there are more misfired triggers left to find beyond the given count.
+
+
+
+ Get the number of triggers in the given states that have
+ misfired - according to the given timestamp.
+
+
+
+
+
+
+
+
+
+ Get the names of all of the triggers in the given group and state that
+ have misfired.
+
+ The DB Connection
+ Name of the group.
+ The state.
+ The timestamp.
+ an array of objects
+
+
+
+ Select all of the triggers for jobs that are requesting recovery. The
+ returned trigger objects will have unique "recoverXXX" trigger names and
+ will be in the
+ trigger group.
+
+
+ In order to preserve the ordering of the triggers, the fire time will be
+ set from the ColumnFiredTime column in the TableFiredTriggers
+ table. The caller is responsible for calling
+ on each returned trigger. It is also up to the caller to insert the
+ returned triggers to ensure that they are fired.
+
+ The DB Connection
+ an array of objects
+
+
+
+ Delete all fired triggers.
+
+ The DB Connection.
+ The number of rows deleted.
+
+
+
+ Delete all fired triggers of the given instance.
+
+ The DB Connection
+ The instance id.
+ The number of rows deleted
+
+
+
+ Insert the job detail record.
+
+ The DB Connection.
+ The job to insert.
+ Number of rows inserted.
+
+
+
+ Gets the db presentation for boolean value. Subclasses can overwrite this behaviour.
+
+ Value to map to database.
+
+
+
+
+ Update the job detail record.
+
+ The DB Connection.
+ The job to update.
+ Number of rows updated.
+
+
+
+ Get the names of all of the triggers associated with the given job.
+
+ The DB Connection.
+ The name of the job.
+ The group containing the job.
+ An array of objects
+
+
+
+ Delete all job listeners for the given job.
+
+ The DB Connection.
+ The name of the job.
+ The group containing the job.
+ The number of rows deleted.
+
+
+
+ Delete the job detail record for the given job.
+
+ the DB Connection
+ the name of the job
+ the group containing the job
+ the number of rows deleted
+
+
+
+ Check whether or not the given job is stateful.
+
+ the DB Connection
+ the name of the job
+ the group containing the job
+
+ true if the job exists and is stateful, false otherwise
+
+
+
+
+ Check whether or not the given job exists.
+
+ the DB Connection
+ the name of the job
+ the group containing the job
+ true if the job exists, false otherwise
+
+
+
+ Update the job data map for the given job.
+
+ The conn.
+ the job to update
+ the number of rows updated
+
+
+
+ Associate a listener with a job.
+
+ The DB Connection.
+ The job to associate with the listener.
+ The listener to insert.
+ The number of rows inserted.
+
+
+
+ Get all of the listeners for a given job.
+
+ The DB Connection.
+ The job name whose listeners are wanted.
+ The group containing the job.
+ Array of listener names.
+
+
+
+ Select the JobDetail object for a given job name / group name.
+
+ The DB Connection.
+ The job name whose listeners are wanted.
+ The group containing the job.
+ The load helper.
+ The populated JobDetail object.
+
+
+ build Map from java.util.Properties encoding.
+
+
+
+ Select the total number of jobs stored.
+
+ The DB Connection.
+ The total number of jobs stored.
+
+
+
+ Select all of the job group names that are stored.
+
+ The DB Connection.
+ An array of group names.
+
+
+
+ Select all of the jobs contained in a given group.
+
+ The DB Connection.
+ The group containing the jobs.
+ An array of job names.
+
+
+
+ Insert the base trigger data.
+
+ the DB Connection
+ the trigger to insert
+ the state that the trigger should be stored in
+ The job detail.
+ the number of rows inserted
+
+
+
+ Insert the simple trigger data.
+
+ The DB Connection.
+ The trigger to insert.
+ The number of rows inserted.
+
+
+
+ Insert the cron trigger data.
+
+ the DB Connection
+ the trigger to insert
+ the number of rows inserted
+
+
+
+ Insert the blob trigger data.
+
+ The DB Connection.
+ The trigger to insert.
+ The number of rows inserted.
+
+
+
+ Update the base trigger data.
+
+ The DB Connection.
+ The trigger to insert.
+ The state that the trigger should be stored in.
+ The job detail.
+ The number of rows updated.
+
+
+
+ Update the simple trigger data.
+
+ The DB Connection.
+ The trigger to insert.
+ The number of rows updated.
+
+
+
+ Update the cron trigger data.
+
+ The DB Connection.
+ The trigger to insert.
+ The number of rows updated.
+
+
+
+ Update the blob trigger data.
+
+ The DB Connection.
+ The trigger to insert.
+ The number of rows updated.
+
+
+
+ Check whether or not a trigger exists.
+
+ The DB Connection.
+ The name of the trigger.
+ The group containing the trigger.
+ true if the trigger exists, false otherwise
+
+
+
+ Update the state for a given trigger.
+
+ The DB Connection.
+ The name of the trigger.
+ The group containing the trigger.
+ The new state for the trigger.
+ The number of rows updated.
+
+
+
+ Update the given trigger to the given new state, if it is one of the
+ given old states.
+
+ The DB connection.
+ The name of the trigger.
+ The group containing the trigger.
+ The new state for the trigger.
+ One of the old state the trigger must be in.
+ One of the old state the trigger must be in.
+ One of the old state the trigger must be in.
+ The number of rows updated.
+
+
+
+ Update the all triggers to the given new state, if they are in one of
+ the given old states AND its next fire time is before the given time.
+
+ The DB connection
+ The new state for the trigger
+ One of the old state the trigger must be in
+ One of the old state the trigger must be in
+ The time before which the trigger's next fire time must be
+ int the number of rows updated
+
+
+
+ Update all triggers in the given group to the given new state, if they
+ are in one of the given old states.
+
+ The DB connection.
+ The group containing the trigger.
+ The new state for the trigger.
+ One of the old state the trigger must be in.
+ One of the old state the trigger must be in.
+ One of the old state the trigger must be in.
+ The number of rows updated.
+
+
+
+ Update the given trigger to the given new state, if it is in the given
+ old state.
+
+ the DB connection
+ the name of the trigger
+ the group containing the trigger
+ the new state for the trigger
+ the old state the trigger must be in
+ int the number of rows updated
+
+
+
+ Update all of the triggers of the given group to the given new state, if
+ they are in the given old state.
+
+ the DB connection
+ the group containing the triggers
+ the new state for the trigger group
+ the old state the triggers must be in
+ int the number of rows updated
+
+
+
+ Update the states of all triggers associated with the given job.
+
+ the DB Connection
+ the name of the job
+ the group containing the job
+ the new state for the triggers
+ the number of rows updated
+
+
+
+ Updates the state of the trigger states for job from other.
+
+ The conn.
+ Name of the job.
+ Name of the group.
+ The state.
+ The old state.
+
+
+
+
+ Delete all of the listeners associated with a given trigger.
+
+ the DB Connection
+ the name of the trigger whose listeners will be deleted
+ the name of the group containing the trigger
+ the number of rows deleted
+
+
+
+ Associate a listener with the given trigger.
+
+ the DB Connection
+ the trigger
+ the name of the listener to associate with the trigger
+ the number of rows inserted
+
+
+
+ Select the listeners associated with a given trigger.
+
+ the DB Connection
+ the name of the trigger
+ the group containing the trigger
+
+ array of trigger listener names
+
+
+
+
+ Delete the simple trigger data for a trigger.
+
+ the DB Connection
+ the name of the trigger
+ the group containing the trigger
+ the number of rows deleted
+
+
+
+ Delete the cron trigger data for a trigger.
+
+ the DB Connection
+ the name of the trigger
+ the group containing the trigger
+ the number of rows deleted
+
+
+
+ Delete the cron trigger data for a trigger.
+
+ the DB Connection
+ the name of the trigger
+ the group containing the trigger
+ the number of rows deleted
+
+
+
+ Delete the base trigger data for a trigger.
+
+ the DB Connection
+ the name of the trigger
+ the group containing the trigger
+ the number of rows deleted
+
+
+
+ Select the number of triggers associated with a given job.
+
+ the DB Connection
+ the name of the job
+ the group containing the job
+ the number of triggers for the given job
+
+
+
+ Select the job to which the trigger is associated.
+
+ the DB Connection
+ the name of the trigger
+ the group containing the trigger
+ The load helper.
+ The object associated with the given trigger
+
+
+
+ Select the triggers for a job
+
+ the DB Connection
+ the name of the trigger
+ the group containing the trigger
+
+ an array of objects
+ associated with a given job.
+
+
+
+
+ Select the triggers for a calendar
+
+ The DB Connection.
+ Name of the calendar.
+
+ An array of objects associated with a given job.
+
+
+
+
+ Selects the stateful jobs of trigger group.
+
+ The database connection.
+ Name of the group.
+
+
+
+
+ Select a trigger.
+
+ the DB Connection
+ the name of the trigger
+ the group containing the trigger
+ The object
+
+
+
+ Select a trigger's JobDataMap.
+
+ the DB Connection
+ the name of the trigger
+ the group containing the trigger
+ The of the Trigger, never null, but possibly empty.
+
+
+
+ Select a trigger's state value.
+
+ the DB Connection
+ the name of the trigger
+ the group containing the trigger
+ The object
+
+
+
+ Select a trigger status (state and next fire time).
+
+ the DB Connection
+ the name of the trigger
+ the group containing the trigger
+
+ a object, or null
+
+
+
+
+ Select the total number of triggers stored.
+
+ the DB Connection
+ the total number of triggers stored
+
+
+
+ Select all of the trigger group names that are stored.
+
+ the DB Connection
+
+ an array of group names
+
+
+
+
+ Select all of the triggers contained in a given group.
+
+ the DB Connection
+ the group containing the triggers
+
+ an array of trigger names
+
+
+
+
+ Inserts the paused trigger group.
+
+ The conn.
+ Name of the group.
+
+
+
+
+ Deletes the paused trigger group.
+
+ The conn.
+ Name of the group.
+
+
+
+
+ Deletes all paused trigger groups.
+
+ The conn.
+
+
+
+
+ Determines whether the specified trigger group is paused.
+
+ The conn.
+ Name of the group.
+
+ true if trigger group is paused; otherwise, false.
+
+
+
+
+ Determines whether given trigger group already exists.
+
+ The conn.
+ Name of the group.
+
+ true if trigger group exists; otherwise, false.
+
+
+
+
+ Insert a new calendar.
+
+ the DB Connection
+ The name for the new calendar.
+ The calendar.
+ the number of rows inserted
+ IOException
+
+
+
+ Update a calendar.
+
+ the DB Connection
+ The name for the new calendar.
+ The calendar.
+ the number of rows updated
+ IOException
+
+
+
+ Check whether or not a calendar exists.
+
+ the DB Connection
+ The name of the calendar.
+
+ true if the trigger exists, false otherwise
+
+
+
+
+ Select a calendar.
+
+ the DB Connection
+ The name of the calendar.
+ the Calendar
+ ClassNotFoundException
+ IOException
+
+
+
+ Check whether or not a calendar is referenced by any triggers.
+
+ the DB Connection
+ The name of the calendar.
+
+ true if any triggers reference the calendar, false otherwise
+
+
+
+
+ Delete a calendar.
+
+ the DB Connection
+ The name of the trigger.
+ the number of rows deleted
+
+
+
+ Select the total number of calendars stored.
+
+ the DB Connection
+ the total number of calendars stored
+
+
+
+ Select all of the stored calendars.
+
+ the DB Connection
+
+ an array of calendar names
+
+
+
+
+ Select the trigger that will be fired at the given fire time.
+
+ the DB Connection
+ the time that the trigger will be fired
+
+ a representing the
+ trigger that will be fired at the given fire time, or null if no
+ trigger will be fired at that time
+
+
+
+
+ Select the next trigger which will fire to fire between the two given timestamps
+ in ascending order of fire time, and then descending by priority.
+
+ The conn.
+ highest value of of the triggers (exclusive)
+ highest value of of the triggers (inclusive)
+ A (never null, possibly empty) list of the identifiers (Key objects) of the next triggers to be fired.
+
+
+
+ Gets the select next trigger to acquire SQL clause.
+ This can be overriden for a more performant, result limiting
+ SQL. For Example SQL Server, MySQL and SQLite support limiting returned rows.
+
+
+
+
+
+ Insert a fired trigger.
+
+ the DB Connection
+ the trigger
+ the state that the trigger should be stored in
+ The job.
+ the number of rows inserted
+
+
+
+ Select the states of all fired-trigger records for a given trigger, or
+ trigger group if trigger name is .
+
+ The DB connection.
+ Name of the trigger.
+ Name of the group.
+ a List of objects.
+
+
+
+ Select the states of all fired-trigger records for a given job, or job
+ group if job name is .
+
+ The DB connection.
+ Name of the job.
+ Name of the group.
+ a List of objects.
+
+
+
+ Select the states of all fired-trigger records for a given scheduler
+ instance.
+
+ The DB Connection
+ Name of the instance.
+ A list of FiredTriggerRecord objects.
+
+
+
+ Select the distinct instance names of all fired-trigger records.
+
+ The conn.
+
+
+ This is useful when trying to identify orphaned fired triggers (a
+ fired trigger without a scheduler state record.)
+
+
+
+
+ Delete a fired trigger.
+
+ the DB Connection
+ the fired trigger entry to delete
+ the number of rows deleted
+
+
+
+ Selects the job execution count.
+
+ The DB connection.
+ Name of the job.
+ The job group.
+
+
+
+
+ Delete all volatile fired triggers.
+
+ The DB Connection
+ The number of rows deleted
+
+
+
+ Inserts the state of the scheduler.
+
+ The conn.
+ The instance id.
+ The check in time.
+ The interval.
+
+
+
+
+ Deletes the state of the scheduler.
+
+ The database connection.
+ The instance id.
+
+
+
+
+ Updates the state of the scheduler.
+
+ The database connection.
+ The instance id.
+ The check in time.
+
+
+
+
+ A List of all current s.
+
+ If instanceId is not null, then only the record for the identified
+ instance will be returned.
+
+
+ The DB Connection
+ The instance id.
+
+
+
+
+ Replace the table prefix in a query by replacing any occurrences of
+ "{0}" with the table prefix.
+
+ The unsubstitued query
+ The query, with proper table prefix substituted
+
+
+
+ Create a serialized version of an Object.
+
+ the object to serialize
+ Serialized object as byte array.
+
+
+
+ Remove the transient data from and then create a serialized
+ version of a and returns the underlying bytes.
+
+ The data.
+ the serialized data as byte array
+
+
+
+ serialize
+
+ The data.
+
+
+
+
+ Convert the JobDataMap into a list of properties.
+
+
+
+
+ Convert the JobDataMap into a list of properties.
+
+
+
+
+ This method should be overridden by any delegate subclasses that need
+ special handling for BLOBs. The default implementation uses standard
+ ADO.NET operations.
+
+ The data reader, already queued to the correct row.
+ The column index for the BLOB.
+ The deserialized object from the DataReader BLOB.
+
+
+
+ Get the names of all of the triggers that are volatile.
+
+ The DB Connection
+ An array of objects.
+
+
+
+ Get the names of all of the jobs that are volatile.
+
+ The DB Connection
+ An array of objects.
+
+
+
+ This method should be overridden by any delegate subclasses that need
+ special handling for BLOBs for job details.
+
+ The result set, already queued to the correct row.
+ The column index for the BLOB.
+ The deserialized Object from the ResultSet BLOB.
+
+
+
+ Selects the paused trigger groups.
+
+ The DB Connection.
+
+
+
+
+ Gets the triggers to acquire limit.
+
+ The triggers to acquire limit.
+
+
+
+ Initializes a new instance of the class.
+
+ the logger to use during execution
+ the prefix of all table names
+ The instance id.
+ The db provider.
+
+
+
+ Initializes a new instance of the class.
+
+ The logger.
+ The table prefix.
+ The instance id.
+ The db provider.
+ if set to true [use properties].
+
+
+
+ Creates the SQL for select next trigger to acquire.
+
+
+
+
+ Gets the select next trigger to acquire SQL clause.
+ Firebird specific version with FIRST functionality
+
+
+
+
+
+ Conveys the state of a fired-trigger record.
+
+ James House
+
+
+
+ Gets or sets the fire instance id.
+
+ The fire instance id.
+
+
+
+ Gets or sets the fire timestamp.
+
+ The fire timestamp.
+
+
+
+ Gets or sets a value indicating whether [job is stateful].
+
+ true if [job is stateful]; otherwise, false.
+
+
+
+ Gets or sets the job key.
+
+ The job key.
+
+
+
+ Gets or sets the scheduler instance id.
+
+ The scheduler instance id.
+
+
+
+ Gets or sets the trigger key.
+
+ The trigger key.
+
+
+
+ Gets or sets the state of the fire instance.
+
+ The state of the fire instance.
+
+
+
+ Gets or sets a value indicating whether [job requests recovery].
+
+ true if [job requests recovery]; otherwise, false.
+
+
+
+ Gets or sets a value indicating whether [trigger is volatile].
+
+ true if [trigger is volatile]; otherwise, false.
+
+
+
+ Gets or sets the priority.
+
+ The priority.
+
+
+
+ Exception class for when a driver delegate cannot be found for a given
+ configuration, or lack thereof.
+
+ Jeffrey Wescott
+
+
+
+
+ Base class for exceptions thrown by the Quartz .
+
+
+ SchedulerExceptions may contain a reference to another
+ , which was the underlying cause of the SchedulerException.
+
+ James House
+
+
+
+ Initializes a new instance of the class.
+
+
+
+
+ Initializes a new instance of the class.
+
+ The MSG.
+
+
+
+ Initializes a new instance of the class.
+
+ The that holds the serialized object data about the exception being thrown.
+ The that contains contextual information about the source or destination.
+ The class name is null or is zero (0).
+ The info parameter is null.
+
+
+
+ Initializes a new instance of the class.
+
+ The MSG.
+ The error code.
+
+
+
+ Initializes a new instance of the class.
+
+ The cause.
+
+
+
+ Initializes a new instance of the class.
+
+ The MSG.
+ The cause.
+
+
+
+ Initializes a new instance of the class.
+
+ The MSG.
+ The cause.
+ The error code.
+
+
+
+ Creates and returns a string representation of the current exception.
+
+
+ A string representation of the current exception.
+
+
+
+
+
+ Return the exception that is the underlying cause of this exception.
+ This may be used to find more detail about the cause of the error.
+
+ The underlying exception, or if there is not
+ one.
+
+
+
+
+ Get the error code associated with this exception.
+ This may be used to find more detail about the cause of the error.
+
+
+ One of the ERR_XXX constants defined in this class.
+
+
+
+
+ Determine if the specified error code is in the
+ category of errors.
+
+
+
+
+
+ Determine if the specified error code is in the
+ category of errors.
+
+
+
+
+
+ Determine if the specified error code is in the
+ category of errors.
+
+
+
+
+ Determine if the specified error code is in the
+ category of errors.
+
+
+
+
+ Determine if the specified error code is in the
+ category of errors.
+
+
+
+
+ Determine if the specified error code is in the
+ category of errors.
+
+
+
+
+ Initializes a new instance of the class.
+
+ The that holds the serialized object data about the exception being thrown.
+ The that contains contextual information about the source or destination.
+ The class name is null or is zero (0).
+ The info parameter is null.
+
+
+
+ is meant to be used in an application-server
+ or other software framework environment that provides
+ container-managed-transactions. No commit / rollback will be handled by this class.
+
+
+ If you need commit / rollback, use
+ instead.
+
+ Jeffrey Wescott
+ James House
+ Srinivas Venkatarangaiah
+
+
+
+ Contains base functionality for ADO.NET-based JobStore implementations.
+
+ Jeffrey Wescott
+ James House
+ Marko Lahma (.NET)
+
+
+
+ The interface to be implemented by classes that want to provide a
+ and storage mechanism for the
+ 's use.
+
+
+ Storage of s and s should be keyed
+ on the combination of their name and group for uniqueness.
+
+
+
+
+
+
+
+ James House
+
+
+
+ Called by the QuartzScheduler before the is
+ used, in order to give the it a chance to Initialize.
+
+
+
+
+ Called by the QuartzScheduler to inform the that
+ the scheduler has started.
+
+
+
+
+ Called by the QuartzScheduler to inform the that
+ it should free up all of it's resources because the scheduler is
+ shutting down.
+
+
+
+
+ Store the given and .
+
+ The scheduling context.
+ The to be stored.
+ The to be stored.
+ ObjectAlreadyExistsException
+
+
+
+ returns true if the given JobGroup
+ is paused
+
+
+
+
+
+
+
+ returns true if the given TriggerGroup
+ is paused
+
+
+
+
+
+
+
+ Store the given .
+
+ The context.
+ The to be stored.
+
+ If , any existing in the
+ with the same name and group should be
+ over-written.
+
+
+
+
+ Remove (delete) the with the given
+ name, and any s that reference
+ it.
+
+
+ If removal of the results in an empty group, the
+ group should be removed from the 's list of
+ known group names.
+
+ The context.
+ The name of the to be removed.
+ The group name of the to be removed.
+
+ if a with the given name and
+ group was found and removed from the store.
+
+
+
+
+ Retrieve the for the given
+ .
+
+ The context.
+ The name of the to be retrieved.
+ The group name of the to be retrieved.
+
+ The desired , or null if there is no match.
+
+
+
+
+ Store the given .
+
+ The context.
+ The to be stored.
+ If , any existing in
+ the with the same name and group should
+ be over-written.
+ ObjectAlreadyExistsException
+
+
+
+ Remove (delete) the with the
+ given name.
+
+
+
+ If removal of the results in an empty group, the
+ group should be removed from the 's list of
+ known group names.
+
+
+ If removal of the results in an 'orphaned'
+ that is not 'durable', then the should be deleted
+ also.
+
+
+ The context.
+ The name of the to be removed.
+ The group name of the to be removed.
+
+ if a with the given
+ name and group was found and removed from the store.
+
+
+
+
+ Remove (delete) the with the
+ given name, and store the new given one - which must be associated
+ with the same job.
+
+ The context.
+ The name of the to be removed.
+ The group name of the to be removed.
+ The new to be stored.
+
+ if a with the given
+ name and group was found and removed from the store.
+
+
+
+
+ Retrieve the given .
+
+ The context.
+ The name of the to be retrieved.
+ The group name of the to be retrieved.
+
+ The desired , or null if there is no
+ match.
+
+
+
+
+ Store the given .
+
+ The context.
+ The name.
+ The to be stored.
+ If , any existing
+ in the with the same name and group
+ should be over-written.
+ If , any s existing
+ in the that reference an existing
+ Calendar with the same name with have their next fire time
+ re-computed with the new .
+ ObjectAlreadyExistsException
+
+
+
+ Remove (delete) the with the
+ given name.
+
+
+ If removal of the would result in
+ s pointing to non-existent calendars, then a
+ will be thrown.
+
+ The context.
+ The name of the to be removed.
+
+ if a with the given name
+ was found and removed from the store.
+
+
+
+
+ Retrieve the given .
+
+ The context.
+ The name of the to be retrieved.
+
+ The desired , or null if there is no
+ match.
+
+
+
+
+ Get the number of s that are
+ stored in the .
+
+ The context.
+
+
+
+
+ Get the number of s that are
+ stored in the .
+
+ The context.
+
+
+
+
+ Get the number of s that are
+ stored in the .
+
+ The context.
+
+
+
+
+ Get the names of all of the s that
+ have the given group name.
+
+ If there are no jobs in the given group name, the result should be a
+ zero-length array (not ).
+
+
+ The CTX.
+ Name of the group.
+
+
+
+
+ Get the names of all of the s
+ that have the given group name.
+
+ If there are no triggers in the given group name, the result should be a
+ zero-length array (not ).
+
+
+
+
+
+ Get the names of all of the
+ groups.
+
+ If there are no known group names, the result should be a zero-length
+ array (not ).
+
+
+
+
+
+ Get the names of all of the
+ groups.
+
+ If there are no known group names, the result should be a zero-length
+ array (not ).
+
+
+
+
+
+ Get the names of all of the s
+ in the .
+
+
+ If there are no Calendars in the given group name, the result should be
+ a zero-length array (not ).
+
+
+
+
+
+ Get all of the Triggers that are associated to the given Job.
+
+
+ If there are no matches, a zero-length array should be returned.
+
+
+
+
+ Get the current state of the identified .
+
+
+
+
+
+
+
+
+
+ Pause the with the given name.
+
+
+
+
+ Pause all of the s in the
+ given group.
+
+
+ The JobStore should "remember" that the group is paused, and impose the
+ pause on any new triggers that are added to the group while the group is
+ paused.
+
+
+
+
+ Pause the with the given name - by
+ pausing all of its current s.
+
+
+
+
+ Pause all of the s in the given
+ group - by pausing all of their s.
+
+ The JobStore should "remember" that the group is paused, and impose the
+ pause on any new jobs that are added to the group while the group is
+ paused.
+
+
+
+
+
+
+
+ Resume (un-pause) the with the
+ given name.
+
+
+ If the missed one or more fire-times, then the
+ 's misfire instruction will be applied.
+
+
+
+
+
+
+
+ Resume (un-pause) all of the s
+ in the given group.
+
+ If any missed one or more fire-times, then the
+ 's misfire instruction will be applied.
+
+
+
+
+
+ Gets the paused trigger groups.
+
+ The context.
+
+
+
+
+ Resume (un-pause) the with the
+ given name.
+
+ If any of the 's s missed one
+ or more fire-times, then the 's misfire
+ instruction will be applied.
+
+
+
+
+
+ Resume (un-pause) all of the s in
+ the given group.
+
+ If any of the s had s that
+ missed one or more fire-times, then the 's
+ misfire instruction will be applied.
+
+
+
+
+
+ Pause all triggers - equivalent of calling
+ on every group.
+
+ When is called (to un-pause), trigger misfire
+ instructions WILL be applied.
+
+
+
+
+
+
+ Resume (un-pause) all triggers - equivalent of calling
+ on every group.
+
+ If any missed one or more fire-times, then the
+ 's misfire instruction will be applied.
+
+
+
+
+
+
+
+ Get a handle to the next trigger to be fired, and mark it as 'reserved'
+ by the calling scheduler.
+
+ The context.
+ If > 0, the JobStore should only return a Trigger
+ that will fire no later than the time represented in this value as
+ milliseconds.
+
+
+
+
+
+
+ Inform the that the scheduler no longer plans to
+ fire the given , that it had previously acquired
+ (reserved).
+
+
+
+
+ Inform the that the scheduler is now firing the
+ given (executing its associated ),
+ that it had previously acquired (reserved).
+
+ null if the trigger or it's job or calendar no longer exist, or
+ if the trigger was not successfully put into the 'executing'
+ state.
+
+
+
+
+ Inform the that the scheduler has completed the
+ firing of the given (and the execution its
+ associated ), and that the
+ in the given should be updated if the
+ is stateful.
+
+
+
+
+ Supports the persistence.
+
+
+
+
+
+ Initializes a new instance of the class.
+
+
+
+
+ Gets the connection and starts a new transaction.
+
+
+
+
+
+ Called by the QuartzScheduler before the is
+ used, in order to give it a chance to Initialize.
+
+
+
+
+
+
+
+ Called by the QuartzScheduler to inform the that
+ it should free up all of it's resources because the scheduler is
+ shutting down.
+
+
+
+
+ Removes all volatile data.
+
+
+
+
+ Removes all volatile data.
+
+
+
+
+ Will recover any failed or misfired jobs and clean up the data store as
+ appropriate.
+
+
+
+
+ Will recover any failed or misfired jobs and clean up the data store as
+ appropriate.
+
+
+
+
+ Store the given and .
+
+ SchedulingContext
+ Job to be stored.
+ Trigger to be stored.
+
+
+
+ returns true if the given JobGroup
+ is paused
+
+
+
+
+
+
+
+ returns true if the given TriggerGroup
+ is paused
+
+
+
+
+
+
+
+ Stores the given .
+
+
+ The to be stored.
+
+ If , any existing in the
+ with the same name & group should be over-written.
+
+
+
+
+ Insert or update a job.
+
+
+
+
+
+ Check existence of a given job.
+
+
+
+
+ Store the given .
+
+
+ The to be stored.
+
+ If , any existing in
+ the with the same name & group should
+ be over-written.
+
+
+ if a with the same name/group already
+ exists, and replaceExisting is set to false.
+
+
+
+
+ Insert or update a trigger.
+
+
+
+
+ Check existence of a given trigger.
+
+
+
+
+ Remove (delete) the with the given
+ name, and any s that reference
+ it.
+
+
+
+ If removal of the results in an empty group, the
+ group should be removed from the 's list of
+ known group names.
+
+
+ The name of the to be removed.
+ The group name of the to be removed.
+
+ if a with the given name &
+ group was found and removed from the store.
+
+
+
+
+ Delete a job and its listeners.
+
+
+
+
+
+
+ Delete a trigger, its listeners, and its Simple/Cron/BLOB sub-table entry.
+
+
+
+
+
+
+
+ Retrieve the for the given
+ .
+
+ The name of the to be retrieved.
+ The group name of the to be retrieved.
+ The desired , or null if there is no match.
+
+
+
+ Remove (delete) the with the
+ given name.
+
+
+
+
+ If removal of the results in an empty group, the
+ group should be removed from the 's list of
+ known group names.
+
+
+
+ If removal of the results in an 'orphaned'
+ that is not 'durable', then the should be deleted
+ also.
+
+
+ The name of the to be removed.
+ The group name of the to be removed.
+
+ if a with the given
+ name & group was found and removed from the store.
+
+
+
+
+
+
+
+ Retrieve the given .
+
+ The name of the to be retrieved.
+ The group name of the to be retrieved.
+ The desired , or null if there is no match.
+
+
+
+ Get the current state of the identified .
+
+
+
+
+
+
+
+
+
+ Gets the state of the trigger.
+
+ The conn.
+ The CTXT.
+ Name of the trigger.
+ Name of the group.
+
+
+
+
+ Store the given .
+
+ The name of the calendar.
+ The to be stored.
+
+ If , any existing
+ in the with the same name & group
+ should be over-written.
+
+
+ if a with the same name already
+ exists, and replaceExisting is set to false.
+
+
+
+
+ Remove (delete) the with the given name.
+
+
+ If removal of the would result in
+ s pointing to non-existent calendars, then a
+ will be thrown.
+
+ The name of the to be removed.
+
+ if a with the given name
+ was found and removed from the store.
+
+
+
+
+ Retrieve the given .
+
+ The name of the to be retrieved.
+ The desired , or null if there is no match.
+
+
+
+ Get the number of s that are
+ stored in the .
+
+
+
+
+ Get the number of s that are
+ stored in the .
+
+
+
+
+ Get the number of s that are
+ stored in the .
+
+
+
+
+ Get the names of all of the s that
+ have the given group name.
+
+
+ If there are no jobs in the given group name, the result should be a
+ zero-length array (not ).
+
+
+
+
+ Get the names of all of the s
+ that have the given group name.
+
+
+ If there are no triggers in the given group name, the result should be a
+ zero-length array (not ).
+
+
+
+
+ Get the names of all of the
+ groups.
+
+
+
+ If there are no known group names, the result should be a zero-length
+ array (not ).
+
+
+
+
+ Get the names of all of the
+ groups.
+
+
+
+ If there are no known group names, the result should be a zero-length
+ array (not ).
+
+
+
+
+ Get the names of all of the s
+ in the .
+
+
+ If there are no Calendars in the given group name, the result should be
+ a zero-length array (not ).
+
+
+
+
+ Get all of the Triggers that are associated to the given Job.
+
+
+ If there are no matches, a zero-length array should be returned.
+
+
+
+
+ Pause the with the given name.
+
+
+
+
+
+ Pause the with the given name.
+
+
+
+
+
+ Pause the with the given name - by
+ pausing all of its current s.
+
+
+
+
+
+ Pause all of the s in the given
+ group - by pausing all of their s.
+
+
+
+
+
+ Determines if a Trigger for the given job should be blocked.
+ State can only transition to StatePausedBlocked/StateBlocked from
+ StatePaused/StateWaiting respectively.
+
+ StatePausedBlocked, StateBlocked, or the currentState.
+
+
+
+ Resume (un-pause) the with the
+ given name.
+
+
+ If the missed one or more fire-times, then the
+ 's misfire instruction will be applied.
+
+
+
+
+
+ Resume (un-pause) the with the
+ given name.
+
+
+ If any of the 's s missed one
+ or more fire-times, then the 's misfire
+ instruction will be applied.
+
+
+
+
+
+ Resume (un-pause) all of the s in
+ the given group.
+
+
+ If any of the s had s that
+ missed one or more fire-times, then the 's
+ misfire instruction will be applied.
+
+
+
+
+
+ Pause all of the s in the given group.
+
+
+
+
+
+ Pause all of the s in the given group.
+
+
+
+
+
+ Pause all of the s in the
+ given group.
+
+
+
+
+
+ Resume (un-pause) all of the s
+ in the given group.
+
+ If any missed one or more fire-times, then the
+ 's misfire instruction will be applied.
+
+
+
+
+
+
+ Pause all triggers - equivalent of calling
+ on every group.
+
+ When is called (to un-pause), trigger misfire
+ instructions WILL be applied.
+
+
+
+
+
+
+
+ Resume (un-pause) all triggers - equivalent of calling
+ on every group.
+
+
+ If any missed one or more fire-times, then the
+ 's misfire instruction will be applied.
+
+
+
+
+
+ Resume (un-pause) all triggers - equivalent of calling
+ on every group.
+
+ If any missed one or more fire-times, then the
+ 's misfire instruction will be applied.
+
+
+
+
+
+
+ Get a handle to the next N triggers to be fired, and mark them as 'reserved'
+ by the calling scheduler.
+
+
+
+
+
+ Inform the that the scheduler no longer plans to
+ fire the given , that it had previously acquired
+ (reserved).
+
+
+
+
+ Inform the that the scheduler has completed the
+ firing of the given (and the execution its
+ associated ), and that the
+ in the given should be updated if the
+ is stateful.
+
+
+
+
+ Get a list of all scheduler instances in the cluster that may have failed.
+ This includes this scheduler if it is checking in for the first time.
+
+
+
+
+ Create dummy objects for fired triggers
+ that have no scheduler state record. Checkin timestamp and interval are
+ left as zero on these dummy objects.
+
+ List of all current s
+
+
+
+ Cleanup the given database connection. This means restoring
+ any modified auto commit or transaction isolation connection
+ attributes, and then closing the underlying connection.
+
+
+
+ This is separate from closeConnection() because the Spring
+ integration relies on being able to overload closeConnection() and
+ expects the same connection back that it originally returned
+ from the datasource.
+
+
+
+
+
+ Closes the supplied connection.
+
+ (Optional)
+
+
+
+ Rollback the supplied connection.
+
+ (Optional)
+
+ JobPersistenceException thrown if a SQLException occurs when the
+ connection is rolled back
+
+
+
+
+ Commit the supplied connection.
+
+ The CTH.
+ if set to true opens a new transaction.
+ JobPersistenceException thrown if a SQLException occurs when the
+
+
+
+ Execute the given callback in a transaction. Depending on the JobStore,
+ the surrounding transaction may be assumed to be already present
+ (managed).
+
+
+ This method just forwards to ExecuteInLock() with a null lockName.
+
+
+
+
+
+ Execute the given callback having aquired the given lock.
+ Depending on the JobStore, the surrounding transaction may be
+ assumed to be already present (managed). This version is just a
+ handy wrapper around executeInLock that doesn't require a return
+ value.
+
+
+ The name of the lock to aquire, for example
+ "TRIGGER_ACCESS". If null, then no lock is aquired, but the
+ lockCallback is still executed in a transaction.
+
+
+
+
+
+ Execute the given callback having aquired the given lock.
+ Depending on the JobStore, the surrounding transaction may be
+ assumed to be already present (managed).
+
+
+ The name of the lock to aquire, for example
+ "TRIGGER_ACCESS". If null, then no lock is aquired, but the
+ lockCallback is still executed in a transaction.
+
+
+
+
+ Execute the given callback having optionally aquired the given lock.
+ This uses the non-managed transaction connection. This version is just a
+ handy wrapper around executeInNonManagedTXLock that doesn't require a return
+ value.
+
+
+ The name of the lock to aquire, for example
+ "TRIGGER_ACCESS". If null, then no lock is aquired, but the
+ lockCallback is still executed in a non-managed transaction.
+
+
+
+
+
+ Execute the given callback having optionally aquired the given lock.
+ This uses the non-managed transaction connection.
+
+
+ The name of the lock to aquire, for example
+ "TRIGGER_ACCESS". If null, then no lock is aquired, but the
+ lockCallback is still executed in a non-managed transaction.
+
+
+
+
+ Get or set the datasource name.
+
+
+
+
+ Gets the log.
+
+ The log.
+
+
+
+ Get or sets the prefix that should be pre-pended to all table names.
+
+
+
+
+ Set whether string-only properties will be handled in JobDataMaps.
+
+
+
+
+ Get or set the instance Id of the Scheduler (must be unique within a cluster).
+
+
+
+
+ Get or set the instance Id of the Scheduler (must be unique within this server instance).
+
+
+
+
+ Get or set whether this instance is part of a cluster.
+
+
+
+
+ Get or set the frequency at which this instance "checks-in"
+ with the other instances of the cluster. -- Affects the rate of
+ detecting failed instances.
+
+
+
+
+ Get or set the maximum number of misfired triggers that the misfire handling
+ thread will try to recover at one time (within one transaction). The
+ default is 20.
+
+
+
+
+ Gets or sets the database retry interval.
+
+ The db retry interval.
+
+
+
+ Get or set whether this instance should use database-based thread
+ synchronization.
+
+
+
+
+ Whether or not to obtain locks when inserting new jobs/triggers.
+ Defaults to , which is safest - some db's (such as
+ MS SQLServer) seem to require this to avoid deadlocks under high load,
+ while others seem to do fine without.
+
+
+ Setting this property to will provide a
+ significant performance increase during the addition of new jobs
+ and triggers.
+
+
+
+
+ The time span by which a trigger must have missed its
+ next-fire-time, in order for it to be considered "misfired" and thus
+ have its misfire instruction applied.
+
+
+
+
+ Don't call set autocommit(false) on connections obtained from the
+ DataSource. This can be helpfull in a few situations, such as if you
+ have a driver that complains if it is called when it is already off.
+
+
+
+
+ Set the transaction isolation level of DB connections to sequential.
+
+
+
+
+ Whether or not the query and update to acquire a Trigger for firing
+ should be performed after obtaining an explicit DB lock (to avoid
+ possible race conditions on the trigger's db row). This is
+ is considered unnecessary for most databases (due to the nature of
+ the SQL update that is performed), and therefore a superfluous performance hit.
+
+
+
+
+ Get or set the ADO.NET driver delegate class name.
+
+
+
+
+ set the SQL statement to use to select and lock a row in the "locks"
+ table.
+
+
+
+
+
+ Get whether the threads spawned by this JobStore should be
+ marked as daemon. Possible threads include the
+ and the .
+
+
+
+
+
+ Get whether to check to see if there are Triggers that have misfired
+ before actually acquiring the lock to recover them. This should be
+ set to false if the majority of the time, there are are misfired
+ Triggers.
+
+
+
+
+
+ Get the driver delegate for DB operations.
+
+
+
+
+ Get whether String-only properties will be handled in JobDataMaps.
+
+
+
+
+ Indicates whether this job store supports persistence.
+
+
+
+
+
+
+ Implement this interface to provide the code to execute within
+ the a transaction template that has no return value.
+
+
+
+
+
+ Implement this interface to provide the code to execute within
+ the a transaction template. If no return value is required, execute
+ should just return null.
+
+
+
+
+
+
+
+ An interface for classes wishing to provide the service of loading classes
+ and resources within the scheduler...
+
+ James House
+
+
+
+ Called to give the ClassLoadHelper a chance to Initialize itself,
+ including the oportunity to "steal" the class loader off of the calling
+ thread, which is the thread that is initializing Quartz.
+
+
+
+
+ Return the class with the given name.
+
+
+
+
+ Finds a resource with a given name. This method returns null if no
+ resource with this name is found.
+
+ name of the desired resource
+
+ a java.net.URL object
+
+
+
+
+ Finds a resource with a given name. This method returns null if no
+ resource with this name is found.
+
+ name of the desired resource
+
+ a java.io.InputStream object
+
+
+
+
+ Helper class for returning the composite result of trying
+ to recover misfired jobs.
+
+
+
+
+ Initializes a new instance of the class.
+
+ if set to true [has more misfired triggers].
+ The processed misfired trigger count.
+
+
+
+
+ Gets a value indicating whether this instance has more misfired triggers.
+
+
+ true if this instance has more misfired triggers; otherwise, false.
+
+
+
+
+ Gets the processed misfired trigger count.
+
+ The processed misfired trigger count.
+
+
+
+ Called by the QuartzScheduler before the is
+ used, in order to give the it a chance to Initialize.
+
+
+
+
+
+
+ Called by the QuartzScheduler to inform the that
+ it should free up all of it's resources because the scheduler is
+ shutting down.
+
+
+
+
+ Gets the non managed TX connection.
+
+
+
+
+
+ Execute the given callback having optionally aquired the given lock.
+ Because CMT assumes that the connection is already part of a managed
+ transaction, it does not attempt to commit or rollback the
+ enclosing transaction.
+
+
+
+
+
+
+ The name of the lock to aquire, for example
+ "TRIGGER_ACCESS". If null, then no lock is aquired, but the
+ txCallback is still executed in a transaction.
+
+ Callback to execute.
+
+
+
+ Utility class to keep track of both active transaction
+ and connection.
+
+
+
+
+ Initializes a new instance of the class.
+
+ The connection.
+ The transaction.
+
+
+
+ Gets or sets the connection.
+
+ The connection.
+
+
+
+ Gets or sets the transaction.
+
+ The transaction.
+
+
+
+ is meant to be used in a standalone environment.
+ Both commit and rollback will be handled by this class.
+
+ Jeffrey Wescott
+ James House
+
+
+
+ Called by the QuartzScheduler before the is
+ used, in order to give the it a chance to Initialize.
+
+
+
+
+
+
+ For , the non-managed TX connection is just
+ the normal connection because it is not CMT.
+
+
+
+
+
+ Execute the given callback having optionally aquired the given lock.
+ For , because it manages its own transactions
+ and only has the one datasource, this is the same behavior as
+ .
+
+
+ The name of the lock to aquire, for example "TRIGGER_ACCESS".
+ If null, then no lock is aquired, but the lockCallback is still
+ executed in a transaction.
+
+ Callback to execute.
+
+
+
+
+
+
+
+
+ Exception class for when there is a failure obtaining or releasing a
+ resource lock.
+
+
+ James House
+
+
+
+ An exception that is thrown to indicate that there has been a failure in the
+ scheduler's underlying persistence mechanism.
+
+ James House
+
+
+
+
+ Create a with the given message.
+
+
+
+
+
+ Initializes a new instance of the class.
+
+ The that holds the serialized object data about the exception being thrown.
+ The that contains contextual information about the source or destination.
+ The class name is null or is zero (0).
+ The info parameter is null.
+
+
+
+ Create a with the given message
+ and error code.
+
+
+
+
+
+ Create a with the given message
+ and cause.
+
+
+
+
+
+ Create a with the given message,
+ cause and error code.
+
+
+
+
+
+ Initializes a new instance of the class.
+
+ The that holds the serialized object data about the exception being thrown.
+ The that contains contextual information about the source or destination.
+ The class name is null or is zero (0).
+ The info parameter is null.
+
+
+
+ This is a driver delegate for the MySQL ADO.NET driver.
+
+ Marko Lahma
+
+
+
+ Initializes a new instance of the class.
+
+ the logger to use during execution
+ the prefix of all table names
+ The instance id.
+ The db provider.
+
+
+
+ Initializes a new instance of the class.
+
+ The logger.
+ The table prefix.
+ The instance id.
+ The db provider.
+ if set to true [use properties].
+
+
+
+ Gets the select next trigger to acquire SQL clause.
+ MySQL version with LIMIT support.
+
+
+
+
+
+ Exception class for when a driver delegate cannot be found for a given
+ configuration, or lack thereof.
+
+ Jeffrey Wescott
+
+
+
+ Initializes a new instance of the class.
+
+ The that holds the serialized object data about the exception being thrown.
+ The that contains contextual information about the source or destination.
+ The class name is null or is zero (0).
+ The info parameter is null.
+
+
+
+ This is a driver delegate for the Oracle database.
+
+ Marko Lahma
+
+
+
+ Initializes a new instance of the class.
+
+ the logger to use during execution
+ the prefix of all table names
+ The instance id.
+ The db provider.
+
+
+
+ Initializes a new instance of the class.
+
+ The logger.
+ The table prefix.
+ The instance id.
+ The db provider.
+ if set to true [use properties].
+
+
+
+ Creates the SQL for select next trigger to acquire.
+
+
+
+
+ Gets the select next trigger to acquire SQL clause.
+ Oracle version with rownum support.
+
+
+
+
+
+ This is a driver delegate for the PostgreSQL ADO.NET driver.
+
+ Marko Lahma
+
+
+
+ Initializes a new instance of the class.
+
+ The log.
+ The table prefix.
+ The instance id.
+ The db provider.
+
+
+
+ Initializes a new instance of the class.
+
+ The log.
+ The table prefix.
+ The instance id.
+ The db provider.
+ if set to true [use properties].
+
+
+
+ Gets the select next trigger to acquire SQL clause.
+ PostgreSQL version with LIMIT support.
+
+
+
+
+
+ Conveys a scheduler-instance state record.
+
+ James House
+
+
+
+ Gets or sets the checkin interval.
+
+ The checkin interval.
+
+
+
+ Gets or sets the checkin timestamp.
+
+ The checkin timestamp.
+
+
+
+ Gets or sets the scheduler instance id.
+
+ The scheduler instance id.
+
+
+
+ Internal in-memory lock handler for providing thread/resource locking in
+ order to protect resources from being altered by multiple threads at the
+ same time.
+
+ James House
+
+
+
+ Grants a lock on the identified resource to the calling thread (blocking
+ until it is available).
+
+ True if the lock was obtained.
+
+
+ Release the lock on the identified resource if it is held by the calling
+ thread.
+
+
+
+
+ Determine whether the calling thread owns a lock on the identified
+ resource.
+
+
+
+
+ Gets the thread locks.
+
+ The thread locks.
+
+
+
+ Whether this Semaphore implementation requires a database connection for
+ its lock management operations.
+
+
+
+
+
+
+
+
+ This is a driver delegate for the SQLiteDelegate ADO.NET driver.
+
+ Marko Lahma
+
+
+
+ Initializes a new instance of the class.
+
+ the logger to use during execution
+ the prefix of all table names
+ The instance id.
+ The db provider.
+
+
+
+ Initializes a new instance of the class.
+
+ The logger.
+ The table prefix.
+ The instance id.
+ The db provider.
+ if set to true [use properties].
+
+
+
+ Gets the select next trigger to acquire SQL clause.
+ SQLite version with LIMIT support.
+
+
+
+
+
+ A SQL Server specific driver delegate.
+
+ Marko Lahma
+
+
+
+ Initializes a new instance of the class.
+
+ the logger to use during execution
+ the prefix of all table names
+ The instance id.
+ The db provider.
+
+
+
+ Initializes a new instance of the class.
+
+ The logger.
+ The table prefix.
+ The instance id.
+ The db provider.
+ if set to true [use properties].
+
+
+
+ Creates the SQL for select next trigger to acquire.
+
+
+
+
+ Gets the select next trigger to acquire SQL clause.
+ SQL Server specific version with TOP functionality
+
+
+
+
+
+ Internal database based lock handler for providing thread/resource locking
+ in order to protect resources from being altered by multiple threads at the
+ same time.
+
+ James House
+
+
+
+ Initializes a new instance of the class.
+
+ The table prefix.
+ The select with lock SQL.
+
+
+
+ Execute the SQL select for update that will lock the proper database row.
+
+
+
+ Provide thread/resource locking in order to protect
+ resources from being altered by multiple threads at the same time using
+ a db row update.
+
+
+ Note: This Semaphore implementation is useful for databases that do
+ not support row locking via "SELECT FOR UPDATE" type syntax, for example
+ Microsoft SQLServer (MSSQL).
+
+
+
+
+ Initializes a new instance of the class.
+
+
+
+
+ Execute the SQL that will lock the proper database row.
+
+
+
+
+
+
+
+ This implementation of the Calendar excludes a set of days of the year. You
+ may use it to exclude bank holidays which are on the same date every year.
+
+
+
+ Juergen Donnerstag
+
+
+
+ This implementation of the Calendar may be used (you don't have to) as a
+ base class for more sophisticated one's. It merely implements the base
+ functionality required by each Calendar.
+
+
+ Regarded as base functionality is the treatment of base calendars. Base
+ calendar allow you to chain (stack) as much calendars as you may need. For
+ example to exclude weekends you may use WeeklyCalendar. In order to exclude
+ holidays as well you may define a WeeklyCalendar instance to be the base
+ calendar for HolidayCalendar instance.
+
+
+ Juergen Donnerstag
+ James House
+
+
+
+ An interface to be implemented by objects that define spaces of time during
+ which an associated may fire.
+
+
+ Calendars do not define actual fire times, but rather are used to limit a
+ from firing on its normal schedule if necessary. Most
+ Calendars include all times by default and allow the user to specify times to
+ exclude. As such, it is often useful to think of Calendars as being used to
+ exclude a block of time, as opposed to include
+ a block of time. (i.e. the schedule "fire every five minutes except on Sundays" could be
+ implemented with a and a which excludes Sundays)
+
+ James House
+ Juergen Donnerstag
+
+
+
+ Determine whether the given UTC time is 'included' by the
+ Calendar.
+
+
+
+
+ Determine the next UTC time that is 'included' by the
+ Calendar after the given UTC time.
+
+
+
+
+ Gets or sets a description for the instance - may be
+ useful for remembering/displaying the purpose of the calendar, though
+ the description has no meaning to Quartz.
+
+
+
+
+ Set a new base calendar or remove the existing one.
+ Get the base calendar.
+
+
+
+
+ Initializes a new instance of the class.
+
+
+
+
+ Initializes a new instance of the class.
+
+ The base calendar.
+
+
+
+ Initializes a new instance of the class.
+
+ The time zone.
+
+
+
+ Initializes a new instance of the class.
+
+ The base calendar.
+ The time zone.
+
+
+
+ checks whether two arrays have
+ the same length and
+ for any given place there are equal elements
+ in both arrays
+
+
+
+
+
+ Get the base calendar. Will be null, if not set.
+
+
+
+
+ Check if date/time represented by timeStamp is included. If included
+ return true. The implementation of BaseCalendar simply calls the base
+ calendars IsTimeIncluded() method if base calendar is set.
+
+
+
+
+
+ Determine the next UTC time (in milliseconds) that is 'included' by the
+ Calendar after the given time. Return the original value if timeStamp is
+ included. Return 0 if all days are excluded.
+
+
+
+
+
+ Gets or sets the time zone.
+
+ The time zone.
+
+
+
+ Gets or sets the description given to the instance by
+ its creator (if any).
+
+
+
+
+ Set a new base calendar or remove the existing one
+
+
+
+
+
+ Constructor
+
+
+
+
+ Constructor
+
+ The base calendar.
+
+
+
+ Return true, if day is defined to be exluded.
+
+
+
+
+ Redefine a certain day to be excluded (true) or included (false).
+
+
+
+
+ Determine whether the given UTC time (in milliseconds) is 'included' by the
+ Calendar.
+
+ Note that this Calendar is only has full-day precision.
+
+
+
+
+
+ Determine the next UTC time (in milliseconds) that is 'included' by the
+ Calendar after the given time. Return the original value if timeStampUtc is
+ included. Return 0 if all days are excluded.
+
+ Note that this Calendar is only has full-day precision.
+
+
+
+
+
+ Get or the array which defines the exclude-value of each day of month.
+ Setting will redefine the array of days excluded. The array must of size greater or
+ equal 31.
+
+
+
+
+ This implementation of the Calendar excludes the set of times expressed by a
+ given CronExpression.
+
+
+ For example, you could use this calendar to exclude all but business hours (8AM - 5PM) every
+ day using the expression "* * 0-7,18-23 ? * *".
+
+ It is important to remember that the cron expression here describes a set of
+ times to be excluded from firing. Whereas the cron expression in
+ CronTrigger describes a set of times that can
+ be included for firing. Thus, if a has a
+ given cron expression and is associated with a with
+ the same expression, the calendar will exclude all the times the
+ trigger includes, and they will cancel each other out.
+
+
+ Aaron Craven
+
+
+
+ Initializes a new instance of the class.
+
+ a String representation of the desired cron expression
+
+
+
+ Create a with the given cron expression and
+ .
+
+
+ the base calendar for this calendar instance
+ see BaseCalendar for more information on base
+ calendar functionality
+
+ a String representation of the desired cron expression
+
+
+
+ Create a with the given cron expression and
+ .
+
+
+ the base calendar for this calendar instance
+ see BaseCalendar for more information on base
+ calendar functionality
+
+ a String representation of the desired cron expression
+
+
+
+
+ Determine whether the given time is 'included' by the
+ Calendar.
+
+ the time to test
+ a boolean indicating whether the specified time is 'included' by the CronCalendar
+
+
+
+ Determine the next time that is 'included' by the
+ Calendar after the given time. Return the original value if timeStamp is
+ included. Return 0 if all days are excluded.
+
+
+
+
+
+
+ Returns a that represents the current .
+
+
+ A that represents the current .
+
+
+
+
+ Sets the cron expression for the calendar to a new value.
+
+ The expression.
+
+
+
+ Returns the object representation of the cron expression that defines the
+ dates and times this calendar excludes.
+
+
+
+
+ This implementation of the Calendar excludes (or includes - see below) a
+ specified time range each day.
+
+
+ For example, you could use this calendar to
+ exclude business hours (8AM - 5PM) every day. Each
+ only allows a single time range to be specified, and that time range may not
+ * cross daily boundaries (i.e. you cannot specify a time range from 8PM - 5AM).
+ If the property is (default),
+ the time range defines a range of times in which triggers are not allowed to
+ * fire. If is , the time range
+ is inverted: that is, all times outside the defined time range
+ are excluded.
+
+ Note when using , it behaves on the same principals
+ as, for example, WeeklyCalendar defines a set of days that are
+ excluded every week. Likewise, defines a
+ set of times that are excluded every day.
+
+
+ Mike Funk
+ Aaron Craven
+
+
+
+ Create a with a time range defined by the
+ specified strings and no baseCalendar.
+ and
+ must be in the format "HH:MM[:SS[:mmm]]" where:
+
+ -
+ HH is the hour of the specified time. The hour should be
+ specified using military (24-hour) time and must be in the range
+ 0 to 23.
+
+ -
+ MM is the minute of the specified time and must be in the range
+ 0 to 59.
+
+ -
+ SS is the second of the specified time and must be in the range
+ 0 to 59.
+
+ -
+ mmm is the millisecond of the specified time and must be in the
+ range 0 to 999.
+
+ - items enclosed in brackets ('[', ']') are optional.
+ -
+ The time range starting time must be before the time range ending
+ time. Note this means that a time range may not cross daily
+ boundaries (10PM - 2AM)
+
+
+
+
+
+
+ Create a with a time range defined by the
+ specified strings and the specified baseCalendar.
+ and
+ must be in the format "HH:MM[:SS[:mmm]]" where:
+
+ -
+ HH is the hour of the specified time. The hour should be
+ specified using military (24-hour) time and must be in the range
+ 0 to 23.
+
+ -
+ MM is the minute of the specified time and must be in the range
+ 0 to 59.
+
+ -
+ SS is the second of the specified time and must be in the range
+ 0 to 59.
+
+ -
+ mmm is the millisecond of the specified time and must be in the
+ range 0 to 999.
+
+ -
+ items enclosed in brackets ('[', ']') are optional.
+
+ -
+ The time range starting time must be before the time range ending
+ time. Note this means that a time range may not cross daily
+ boundaries (10PM - 2AM)
+
+
+
+ The base calendar for this calendar instance see BaseCalendar for more
+ information on base calendar functionality.
+
+
+
+ Create a with a time range defined by the
+ specified values and no baseCalendar. Values are subject to
+ the following validations:
+
+ -
+ Hours must be in the range 0-23 and are expressed using military
+ (24-hour) time.
+
+ - Minutes must be in the range 0-59
+ - Seconds must be in the range 0-59
+ - Milliseconds must be in the range 0-999
+ -
+ The time range starting time must be before the time range ending
+ time. Note this means that a time range may not cross daily
+ boundaries (10PM - 2AM)
+
+
+
+ The range starting hour of day.
+ The range starting minute.
+ The range starting second.
+ The range starting millis.
+ The range ending hour of day.
+ The range ending minute.
+ The range ending second.
+ The range ending millis.
+
+
+
+ Create a with a time range defined by the
+ specified values and the specified . Values are
+ subject to the following validations:
+
+ -
+ Hours must be in the range 0-23 and are expressed using military
+ (24-hour) time.
+
+ - Minutes must be in the range 0-59
+ - Seconds must be in the range 0-59
+ - Milliseconds must be in the range 0-999
+ -
+ The time range starting time must be before the time range ending
+ time. Note this means that a time range may not cross daily
+ boundaries (10PM - 2AM)
+
+
+
+ The range starting hour of day.
+ The range starting minute.
+ The range starting second.
+ The range starting millis.
+ The range ending hour of day.
+ The range ending minute.
+ The range ending second.
+ The range ending millis.
+
+
+
+ Create a with a time range defined by the
+ specified s and no
+ baseCalendar. The Calendars are subject to the following
+ considerations:
+
+ -
+ Only the time-of-day fields of the specified Calendars will be
+ used (the date fields will be ignored)
+
+ -
+ The starting time must be before the ending time of the defined
+ time range. Note this means that a time range may not cross
+ daily boundaries (10PM - 2AM). (because only time fields are
+ are used, it is possible for two Calendars to represent a valid
+ time range and
+ rangeStartingCalendar.after(rangeEndingCalendar) == true)
+
+
+
+
+ The range starting calendar.
+ The range ending calendar.
+
+
+
+ Create a with a time range defined by the
+ specified s and the specified
+ . The Calendars are subject to the following
+ considerations:
+
+ -
+ Only the time-of-day fields of the specified Calendars will be
+ used (the date fields will be ignored)
+
+ -
+ The starting time must be before the ending time of the defined
+ time range. Note this means that a time range may not cross
+ daily boundaries (10PM - 2AM). (because only time fields are
+ are used, it is possible for two Calendars to represent a valid
+ time range and
+ rangeStartingCalendarUtc > rangeEndingCalendarUtc == true)
+
+
+
+ The range starting calendar.
+ The range ending calendar.
+
+
+
+ Create a with a time range defined by the
+ specified values and no baseCalendar. The values are
+ subject to the following considerations:
+
+ -
+ Only the time-of-day portion of the specified values will be
+ used
+
+ -
+ The starting time must be before the ending time of the defined
+ time range. Note this means that a time range may not cross
+ daily boundaries (10PM - 2AM). (because only time value are
+ are used, it is possible for the two values to represent a valid
+ time range and rangeStartingTime > rangeEndingTime)
+
+
+
+ The range starting time in millis.
+ The range ending time in millis.
+
+
+
+ Create a with a time range defined by the
+ specified values and the specified . The values
+ are subject to the following considerations:
+
+ -
+ Only the time-of-day portion of the specified values will be
+ used
+
+ -
+ The starting time must be before the ending time of the defined
+ time range. Note this means that a time range may not cross
+ daily boundaries (10PM - 2AM). (because only time value are
+ are used, it is possible for the two values to represent a valid
+ time range and rangeStartingTime > rangeEndingTime)
+
+
+
+ The range starting time in millis.
+ The range ending time in millis.
+
+
+
+ Determine whether the given time is 'included' by the
+ Calendar.
+
+
+
+
+
+
+ Determine the next time (in milliseconds) that is 'included' by the
+ Calendar after the given time. Return the original value if timeStamp is
+ included. Return 0 if all days are excluded.
+
+
+
+
+
+
+
+ Returns the start time of the time range of the day
+ specified in .
+
+
+ a DateTime representing the start time of the
+ time range for the specified date.
+
+
+
+
+ Returns the end time of the time range of the day
+ specified in
+
+
+ A DateTime representing the end time of the
+ time range for the specified date.
+
+
+
+
+ Returns a that represents the current .
+
+
+ A that represents the current .
+
+
+
+
+ Sets the time range for the to the times
+ represented in the specified Strings.
+
+ The range starting time string.
+ The range ending time string.
+
+
+
+ Sets the time range for the to the times
+ represented in the specified values.
+
+ The range starting hour of day.
+ The range starting minute.
+ The range starting second.
+ The range starting millis.
+ The range ending hour of day.
+ The range ending minute.
+ The range ending second.
+ The range ending millis.
+
+
+
+ Sets the time range for the to the times
+ represented in the specified s.
+
+ The range starting calendar.
+ The range ending calendar.
+
+
+
+ Sets the time range for the to the times
+ represented in the specified values.
+
+ The range starting time.
+ The range ending time.
+
+
+
+ Gets the start of day, practically zeroes time part.
+
+ The time.
+
+
+
+
+ Gets the end of day, pratically sets time parts to maximum allowed values.
+
+ The time.
+
+
+
+
+ Checks the specified values for validity as a set of time values.
+
+ The hour of day.
+ The minute.
+ The second.
+ The millis.
+
+
+
+ Indicates whether the time range represents an inverted time range (see
+ class description).
+
+ true if invert time range; otherwise, false.
+
+
+
+ This implementation of the Calendar stores a list of holidays (full days
+ that are excluded from scheduling).
+
+
+ The implementation DOES take the year into consideration, so if you want to
+ exclude July 4th for the next 10 years, you need to add 10 entries to the
+ exclude list.
+
+ Sharada Jambula
+ Juergen Donnerstag
+
+
+
+ Initializes a new instance of the class.
+
+
+
+
+ Initializes a new instance of the class.
+
+ The base calendar.
+
+
+
+ Determine whether the given time (in milliseconds) is 'included' by the
+ Calendar.
+
+ Note that this Calendar is only has full-day precision.
+
+
+
+
+
+ Determine the next time (in milliseconds) that is 'included' by the
+ Calendar after the given time.
+
+ Note that this Calendar is only has full-day precision.
+
+
+
+
+
+ Add the given Date to the list of excluded days. Only the month, day and
+ year of the returned dates are significant.
+
+
+
+
+ Removes the excluded date.
+
+ The date to remove.
+
+
+
+ Returns a of Dates representing the excluded
+ days. Only the month, day and year of the returned dates are
+ significant.
+
+
+
+
+ This implementation of the Calendar excludes a set of days of the month. You
+ may use it to exclude every 1. of each month for example. But you may define
+ any day of a month.
+
+
+
+ Juergen Donnerstag
+
+
+
+ Initializes a new instance of the class.
+
+
+
+
+ Constructor
+
+ The base calendar.
+
+
+
+ Initialize internal variables
+
+
+
+
+ Return true, if mday is defined to be exluded.
+
+
+
+
+ Redefine a certain day of the month to be excluded (true) or included
+ (false).
+
+
+
+
+ Check if all days are excluded. That is no day is included.
+
+ boolean
+
+
+
+
+ Determine whether the given time (in milliseconds) is 'included' by the
+ Calendar.
+
+ Note that this Calendar is only has full-day precision.
+
+
+
+
+
+ Determine the next time (in milliseconds) that is 'included' by the
+ Calendar after the given time. Return the original value if timeStamp is
+ included. Return DateTime.MinValue if all days are excluded.
+
+ Note that this Calendar is only has full-day precision.
+
+
+
+
+
+ Get or set the array which defines the exclude-value of each day of month
+ Setting will redefine the array of days excluded. The array must of size greater or
+ equal 31.
+
+
+
+
+ This implementation of the Calendar excludes a set of days of the week. You
+ may use it to exclude weekends for example. But you may define any day of
+ the week.
+
+
+
+ Juergen Donnerstag
+
+
+
+ Initializes a new instance of the class.
+
+
+
+
+ Initializes a new instance of the class.
+
+ The base calendar.
+
+
+
+ Initialize internal variables
+
+
+
+
+ Return true, if wday is defined to be exluded. E. g.
+ saturday and sunday.
+
+
+
+
+ Redefine a certain day of the week to be excluded (true) or included
+ (false). Use java.util.Calendar's constants like MONDAY to determine the
+ wday.
+
+
+
+
+ Check if all week ays are excluded. That is no day is included.
+
+
+
+
+ Determine whether the given time (in milliseconds) is 'included' by the
+ Calendar.
+
+ Note that this Calendar is only has full-day precision.
+
+
+
+
+
+ Determine the next time (in milliseconds) that is 'included' by the
+ Calendar after the given time. Return the original value if timeStamp is
+ included. Return DateTime.MinValue if all days are excluded.
+
+ Note that this Calendar is only has full-day precision.
+
+
+
+
+
+ Get the array with the week days.
+ Setting will redefine the array of days excluded. The array must of size greater or
+ equal 8. java.util.Calendar's constants like MONDAY should be used as
+ index. A value of true is regarded as: exclude it.
+
+
+
+
+ A singleton implementation of .
+
+
+ Here are some examples of using this class:
+
+ To create a scheduler that does not write anything to the database (is not
+ persistent), you can call :
+
+
+ DirectSchedulerFactory.Instance.CreateVolatileScheduler(10); // 10 threads
+ // don't forget to start the scheduler:
+ DirectSchedulerFactory.Instance.GetScheduler().Start();
+
+
+ Several create methods are provided for convenience. All create methods
+ eventually end up calling the create method with all the parameters:
+
+
+ public void createScheduler(String schedulerName, string schedulerInstanceId, ThreadPool threadPool, JobStore jobStore, string rmiRegistryHost, int rmiRegistryPort)
+
+
+ Here is an example of using this method:
+
+
+ // create the thread pool
+ SimpleThreadPool threadPool = new SimpleThreadPool(maxThreads, Thread.NORM_PRIORITY);
+ threadPool.Initialize();
+ // create the job store
+ JobStore jobStore = new RAMJobStore();
+ jobStore.Initialize();
+
+ DirectSchedulerFactory.Instance.CreateScheduler("My Quartz Scheduler", "My Instance", threadPool, jobStore, "localhost", 1099);
+ // don't forget to start the scheduler:
+ DirectSchedulerFactory.Instance.GetScheduler("My Quartz Scheduler", "My Instance").start();
+
+ >
+ Mohammad Rezaei
+ James House
+
+
+
+
+
+ Provides a mechanism for obtaining client-usable handles to
+ instances.
+
+
+
+ James House
+
+
+
+ Returns a client-usable handle to a .
+
+
+
+
+ Returns a handle to the Scheduler with the given name, if it exists.
+
+
+
+
+ Returns handles to all known Schedulers (made by any SchedulerFactory
+ within this app domain.).
+
+
+
+
+ Initializes a new instance of the class.
+
+
+
+
+ Creates an in memory job store ()
+ The thread priority is set to Thread.NORM_PRIORITY
+
+ The number of threads in the thread pool
+
+
+
+ Creates a proxy to a remote scheduler. This scheduler can be retrieved
+ via .
+
+ SchedulerException
+
+
+
+ Same as ,
+ with the addition of specifying the scheduler name and instance ID. This
+ scheduler can only be retrieved via .
+
+ The name for the scheduler.
+ The instance ID for the scheduler.
+
+ SchedulerException
+
+
+
+ Creates a scheduler using the specified thread pool and job store. This
+ scheduler can be retrieved via DirectSchedulerFactory#GetScheduler()
+
+
+ The thread pool for executing jobs
+
+
+ The type of job store
+
+ SchedulerException
+ if initialization failed
+
+
+
+
+ Same as DirectSchedulerFactory#createScheduler(ThreadPool threadPool, JobStore jobStore),
+ with the addition of specifying the scheduler name and instance ID. This
+ scheduler can only be retrieved via DirectSchedulerFactory#getScheduler(String)
+
+ The name for the scheduler.
+ The instance ID for the scheduler.
+ The thread pool for executing jobs
+ The type of job store
+
+
+
+ Creates a scheduler using the specified thread pool and job store and
+ binds it to RMI.
+
+ The name for the scheduler.
+ The instance ID for the scheduler.
+ The thread pool for executing jobs
+ The type of job store
+ The idle wait time. You can specify "-1" for
+ the default value, which is currently 30000 ms.
+ The db failure retry interval.
+
+
+
+ Creates a scheduler using the specified thread pool and job store and
+ binds it to RMI.
+
+ The name for the scheduler.
+ The instance ID for the scheduler.
+ The thread pool for executing jobs
+ The type of job store
+
+ The idle wait time. You can specify TimeSpan.Zero for
+ the default value, which is currently 30000 ms.
+ The db failure retry interval.
+
+
+
+ Returns a handle to the Scheduler produced by this factory.
+
+ you must call createRemoteScheduler or createScheduler methods before
+ calling getScheduler()
+
+
+
+ SchedulerException
+
+
+
+ Returns a handle to the Scheduler with the given name, if it exists.
+
+
+
+
+ Gets the log.
+
+ The log.
+
+
+
+ Gets the instance.
+
+ The instance.
+
+
+
+ Returns a handle to all known Schedulers (made by any
+ StdSchedulerFactory instance.).
+
+
+
+
+
+ An implementation of the interface that remotely
+ proxies all method calls to the equivalent call on a given
+ instance, via remoting or similar technology.
+
+
+
+
+ James House
+
+
+
+ This is the main interface of a Quartz Scheduler.
+
+
+
+ A maintains a registry of
+ s and s. Once
+ registered, the is responsible for executing
+ s when their associated s
+ fire (when their scheduled time arrives).
+
+
+ instances are produced by a
+ . A scheduler that has already been
+ created/initialized can be found and used through the same factory that
+ produced it. After a has been created, it is in
+ "stand-by" mode, and must have its method
+ called before it will fire any s.
+
+
+ s are to be created by the 'client program', by
+ defining a class that implements the interface.
+ objects are then created (also by the client) to
+ define a individual instances of the .
+ instances can then be registered with the
+ via the %IScheduler.ScheduleJob(JobDetail,
+ Trigger)% or %IScheduler.AddJob(JobDetail, bool)% method.
+
+
+ s can then be defined to fire individual
+ instances based on given schedules.
+ s are most useful for one-time firings, or
+ firing at an exact moment in time, with N repeats with a given delay between
+ them. s allow scheduling based on time of day,
+ day of week, day of month, and month of year.
+
+
+ s and s have a name and
+ group associated with them, which should uniquely identify them within a single
+ . The 'group' feature may be useful for creating
+ logical groupings or categorizations of s and
+ s. If you don't have need for assigning a group to a
+ given s of s, then you can use
+ the constant defined on
+ this interface.
+
+
+ Stored s can also be 'manually' triggered through the
+ use of the %IScheduler.TriggerJob(string, string)% function.
+
+
+ Client programs may also be interested in the 'listener' interfaces that are
+ available from Quartz. The interface provides
+ notifications of executions. The
+ interface provides notifications of
+ firings. The
+ interface provides notifications of events and
+ errors.
+
+
+ The setup/configuration of a instance is very
+ customizable. Please consult the documentation distributed with Quartz.
+
+
+
+
+
+
+
+
+
+
+
+ returns true if the given JobGroup
+ is paused
+
+
+
+
+
+
+ returns true if the given TriggerGroup
+ is paused
+
+
+
+
+
+
+ Get a object describiing the settings
+ and capabilities of the scheduler instance.
+
+
+ Note that the data returned is an 'instantaneous' snap-shot, and that as
+ soon as it's returned, the meta data values may be different.
+
+
+
+
+ Return a list of objects that
+ represent all currently executing Jobs in this Scheduler instance.
+
+
+
+ This method is not cluster aware. That is, it will only return Jobs
+ currently executing in this Scheduler instance, not across the entire
+ cluster.
+
+
+ Note that the list returned is an 'instantaneous' snap-shot, and that as
+ soon as it's returned, the true list of executing jobs may be different.
+ Also please read the doc associated with -
+ especially if you're using remoting.
+
+
+
+
+
+
+ Get the names of all groups that are paused.
+
+
+
+
+ Get the global that has
+ the given name.
+
+ Global job listener's name
+
+
+
+
+ Get the global that
+ has the given name.
+
+ Global trigger listener's name
+
+
+
+
+ Starts the 's threads that fire s.
+ When a scheduler is first created it is in "stand-by" mode, and will not
+ fire triggers. The scheduler can also be put into stand-by mode by
+ calling the method.
+
+
+ The misfire/recovery process will be started, if it is the initial call
+ to this method on this scheduler instance.
+
+
+
+
+
+
+
+ Calls after the indicated delay.
+ (This call does not block). This can be useful within applications that
+ have initializers that create the scheduler immediately, before the
+ resources needed by the executing jobs have been fully initialized.
+
+
+
+
+
+
+
+ Temporarily halts the 's firing of s.
+
+
+
+ When is called (to bring the scheduler out of
+ stand-by mode), trigger misfire instructions will NOT be applied
+ during the execution of the method - any misfires
+ will be detected immediately afterward (by the 's
+ normal process).
+
+
+ The scheduler is not destroyed, and can be re-started at any time.
+
+
+
+
+
+
+
+ Halts the 's firing of s,
+ and cleans up all resources associated with the Scheduler. Equivalent to
+ .
+
+
+ The scheduler cannot be re-started.
+
+
+
+
+
+ Halts the 's firing of s,
+ and cleans up all resources associated with the Scheduler.
+
+
+ The scheduler cannot be re-started.
+
+
+ if the scheduler will not allow this method
+ to return until all currently executing jobs have completed.
+
+
+
+
+
+ Add the given to the
+ Scheduler, and associate the given with
+ it.
+
+
+ If the given Trigger does not reference any , then it
+ will be set to reference the Job passed with it into this method.
+
+
+
+
+ Schedule the given with the
+ identified by the 's settings.
+
+
+
+
+ Remove the indicated from the scheduler.
+
+
+
+
+ Remove (delete) the with the
+ given name, and store the new given one - which must be associated
+ with the same job (the new trigger must have the job name & group specified)
+ - however, the new trigger need not have the same name as the old trigger.
+
+
+ The name of the to be replaced.
+
+
+ The group name of the to be replaced.
+
+
+ The new to be stored.
+
+
+ if a with the given
+ name and group was not found and removed from the store, otherwise
+ the first fire time of the newly scheduled trigger.
+
+
+
+
+ Add the given to the Scheduler - with no associated
+ . The will be 'dormant' until
+ it is scheduled with a , or
+ is called for it.
+
+
+ The must by definition be 'durable', if it is not,
+ SchedulerException will be thrown.
+
+
+
+
+ Delete the identified from the Scheduler - and any
+ associated s.
+
+ true if the Job was found and deleted.
+
+
+
+ Trigger the identified
+ (Execute it now) - the generated trigger will be non-volatile.
+
+
+
+
+ Trigger the identified
+ (Execute it now) - the generated trigger will be volatile.
+
+
+
+
+ Trigger the identified
+ (Execute it now) - the generated trigger will be non-volatile.
+
+ the name of the Job to trigger
+ the group name of the Job to trigger
+
+ the (possibly ) JobDataMap to be
+ associated with the trigger that fires the job immediately.
+
+
+
+
+ Trigger the identified
+ (Execute it now) - the generated trigger will be volatile.
+
+ the name of the Job to trigger
+ the group name of the Job to trigger
+
+ the (possibly ) JobDataMap to be
+ associated with the trigger that fires the job immediately.
+
+
+
+
+ Pause the with the given
+ name - by pausing all of its current s.
+
+
+
+
+ Pause all of the s in the
+ given group - by pausing all of their s.
+
+
+ The Scheduler will "remember" that the group is paused, and impose the
+ pause on any new jobs that are added to the group while the group is
+ paused.
+
+
+
+
+
+ Pause the with the given name.
+
+
+
+
+ Pause all of the s in the given group.
+
+
+ The Scheduler will "remember" that the group is paused, and impose the
+ pause on any new triggers that are added to the group while the group is
+ paused.
+
+
+
+
+
+ Resume (un-pause) the with
+ the given name.
+
+
+ If any of the 's s missed one
+ or more fire-times, then the 's misfire
+ instruction will be applied.
+
+
+
+
+ Resume (un-pause) all of the s
+ in the given group.
+
+
+ If any of the s had s that
+ missed one or more fire-times, then the 's
+ misfire instruction will be applied.
+
+
+
+
+
+ Resume (un-pause) the with the given
+ name.
+
+
+ If the missed one or more fire-times, then the
+ 's misfire instruction will be applied.
+
+
+
+
+ Resume (un-pause) all of the s in the
+ given group.
+
+
+ If any missed one or more fire-times, then the
+ 's misfire instruction will be applied.
+
+
+
+
+
+ Pause all triggers - similar to calling
+ on every group, however, after using this method
+ must be called to clear the scheduler's state of 'remembering' that all
+ new triggers will be paused as they are added.
+
+
+ When is called (to un-pause), trigger misfire
+ instructions WILL be applied.
+
+
+
+
+
+
+
+ Resume (un-pause) all triggers - similar to calling
+ on every group.
+
+
+ If any missed one or more fire-times, then the
+ 's misfire instruction will be applied.
+
+
+
+
+
+ Get the names of all the s in the given group.
+
+
+
+
+ Get all s that are associated with the
+ identified .
+
+
+
+
+ Get the names of all the s in the given
+ group.
+
+
+
+
+ Get the for the
+ instance with the given name and group.
+
+
+
+
+ Get the instance with the given name and
+ group.
+
+
+
+
+ Get the current state of the identified .
+
+
+
+
+
+
+
+
+
+
+ Add (register) the given to the Scheduler.
+
+ Name of the calendar.
+ The calendar.
+ if set to true [replace].
+ whether or not to update existing triggers that
+ referenced the already existing calendar so that they are 'correct'
+ based on the new trigger.
+
+
+
+ Delete the identified from the Scheduler.
+
+ Name of the calendar.
+
+ true if the Calendar was found and deleted.
+
+
+
+
+ Get the instance with the given name.
+
+
+
+
+ Get the names of all registered .
+
+ An array of calendar names.
+
+
+
+ Request the interruption, within this Scheduler instance, of all
+ currently executing instances of the identified , which
+ must be an implementor of the interface.
+
+
+
+ If more than one instance of the identified job is currently executing,
+ the method will be called on
+ each instance. However, there is a limitation that in the case that
+ on one instances throws an exception, all
+ remaining instances (that have not yet been interrupted) will not have
+ their method called.
+
+
+
+ If you wish to interrupt a specific instance of a job (when more than
+ one is executing) you can do so by calling
+ to obtain a handle
+ to the job instance, and then invoke on it
+ yourself.
+
+
+ This method is not cluster aware. That is, it will only interrupt
+ instances of the identified InterruptableJob currently executing in this
+ Scheduler instance, not across the entire cluster.
+
+
+
+
+
+ true is at least one instance of the identified job was found and interrupted.
+
+
+
+
+
+
+ Add the given to the 's
+ global list.
+
+
+ Listeners in the 'global' list receive notification of execution events
+ for ALL s.
+
+
+
+
+ Add the given to the 's
+ list, of registered s.
+
+
+
+
+ Remove the given from the 's
+ list of global listeners.
+
+
+ true if the identifed listener was found in the list, and removed.
+
+
+
+
+ Remove the identifed from the 's
+ list of global listeners.
+
+ Global job listener's name
+ true if the identifed listener was found in the list, and removed
+
+
+
+ Remove the identifed from the 's
+ list of registered listeners.
+
+
+ true if the identifed listener was found in the list, and removed.
+
+
+
+
+ Get the non-global that has
+ the given name.
+
+
+
+
+ Add the given to the 's
+ global list.
+
+
+ Listeners in the 'global' list receive notification of execution events
+ for ALL s.
+
+
+
+
+ Add the given to the 's
+ list, of registered s.
+
+
+
+
+ Remove the given from the 's
+ list of global listeners.
+
+
+ true if the identifed listener was found in the list, and removed.
+
+
+
+
+ Remove the identifed from the 's
+ list of global listeners.
+
+ The name.
+ true if the identifed listener was found in the list, and removed.
+
+
+
+ Remove the identifed from the
+ 's list of registered listeners.
+
+
+ true if the identifed listener was found in the list, and removed.
+
+
+
+
+ Get the non-global that
+ has the given name.
+
+
+
+
+ Register the given with the
+
+
+
+
+ Remove the given from the
+ .
+
+ true if the identifed listener was found in the list, and
+ removed.
+
+
+
+
+ Returns the name of the .
+
+
+
+
+ Returns the instance Id of the .
+
+
+
+
+ Returns the of the .
+
+
+
+
+ Reports whether the is in stand-by mode.
+
+
+
+
+
+
+ Reports whether the has been Shutdown.
+
+
+
+
+ Set the that will be responsible for producing
+ instances of classes.
+
+
+ JobFactories may be of use to those wishing to have their application
+ produce instances via some special mechanism, such as to
+ give the opertunity for dependency injection.
+
+
+
+
+
+ Get the names of all known groups.
+
+
+
+
+ Get the names of all known groups.
+
+
+
+
+ Get the names of all registered s.
+
+
+
+
+ Get a List containing all of the s in
+ the 'sglobal list.
+
+
+
+
+ Get a Set containing the names of all the non-global
+ s registered with the .
+
+
+
+
+ Get a List containing all of the
+ s in the 'sglobal list.
+
+
+
+
+ Get a Set containing the names of all the non-global
+ s registered with the .
+
+
+
+
+ Get a List containing all of the
+ s registered with the .
+
+
+
+
+ Whether the scheduler has been started.
+
+
+ Note: This only reflects whether has ever
+ been called on this Scheduler, so it will return even
+ if the is currently in standby mode or has been
+ since shutdown.
+
+
+
+
+
+
+
+ Construct a instance to proxy the given
+ RemoteableQuartzScheduler instance, and with the given
+ .
+
+
+
+
+ returns true if the given JobGroup
+ is paused
+
+
+
+
+
+
+ returns true if the given TriggerGroup
+ is paused
+
+
+
+
+
+
+ Get a object describiing the settings
+ and capabilities of the scheduler instance.
+
+ Note that the data returned is an 'instantaneous' snap-shot, and that as
+ soon as it's returned, the meta data values may be different.
+
+
+
+
+
+
+ Calls the equivalent method on the 'proxied' .
+
+
+
+
+ Get the global that has
+ the given name.
+
+
+
+
+
+
+ Get the global that
+ has the given name.
+
+
+
+
+
+
+ Get the names of all groups that are paused.
+
+
+
+
+
+ Calls the equivalent method on the 'proxied' .
+
+
+
+
+ Calls the equivalent method on the 'proxied' .
+
+
+
+
+ Calls the equivalent method on the 'proxied' .
+
+
+
+
+ Calls the equivalent method on the 'proxied' .
+
+
+
+
+ Calls the equivalent method on the 'proxied' .
+
+
+
+
+ Calls the equivalent method on the 'proxied' ,
+ passing the associated with this
+ instance.
+
+
+
+
+ Calls the equivalent method on the 'proxied' ,
+ passing the associated with this
+ instance.
+
+
+
+
+ Calls the equivalent method on the 'proxied' ,
+ passing the associated with this
+ instance.
+
+
+
+
+ Calls the equivalent method on the 'proxied' ,
+ passing the associated with this
+ instance.
+
+
+
+
+ Calls the equivalent method on the 'proxied' ,
+ passing the associated with this
+ instance.
+
+
+
+
+ Calls the equivalent method on the 'proxied' ,
+ passing the associated with this
+ instance.
+
+
+
+
+ Calls the equivalent method on the 'proxied' ,
+ passing the associated with this
+ instance.
+
+
+
+
+ Calls the equivalent method on the 'proxied' ,
+ passing the associated with this
+ instance.
+
+
+
+
+ Calls the equivalent method on the 'proxied' ,
+ passing the associated with this
+ instance.
+
+
+
+
+ Calls the equivalent method on the 'proxied' ,
+ passing the associated with this
+ instance.
+
+
+
+
+ Calls the equivalent method on the 'proxied' ,
+ passing the associated with this
+ instance.
+
+
+
+
+ Calls the equivalent method on the 'proxied' ,
+ passing the associated with this
+ instance.
+
+
+
+
+ Calls the equivalent method on the 'proxied' ,
+ passing the associated with this
+ instance.
+
+
+
+
+ Calls the equivalent method on the 'proxied' ,
+ passing the associated with this
+ instance.
+
+
+
+
+ Calls the equivalent method on the 'proxied' ,
+ passing the associated with this
+ instance.
+
+
+
+
+ Calls the equivalent method on the 'proxied' ,
+ passing the associated with this
+ instance.
+
+
+
+
+ Calls the equivalent method on the 'proxied' ,
+ passing the associated with this
+ instance.
+
+
+
+
+ Calls the equivalent method on the 'proxied' ,
+ passing the associated with this
+ instance.
+
+
+
+
+ Calls the equivalent method on the 'proxied' ,
+ passing the associated with this
+ instance.
+
+
+
+
+ Calls the equivalent method on the 'proxied' ,
+ passing the associated with this
+ instance.
+
+
+
+
+ Calls the equivalent method on the 'proxied' ,
+ passing the associated with this
+ instance.
+
+
+
+
+ Calls the equivalent method on the 'proxied' ,
+ passing the associated with this
+ instance.
+
+
+
+
+ Calls the equivalent method on the 'proxied' ,
+ passing the associated with this
+ instance.
+
+
+
+
+ Calls the equivalent method on the 'proxied' ,
+ passing the associated with this
+ instance.
+
+
+
+
+ Calls the equivalent method on the 'proxied' ,
+ passing the associated with this
+ instance.
+
+
+
+
+ Calls the equivalent method on the 'proxied' ,
+ passing the associated with this
+ instance.
+
+
+
+
+ Calls the equivalent method on the 'proxied' ,
+ passing the associated with this
+ instance.
+
+
+
+
+ Calls the equivalent method on the 'proxied' ,
+ passing the associated with this
+ instance.
+
+
+
+
+ Calls the equivalent method on the 'proxied' ,
+ passing the associated with this
+ instance.
+
+
+
+
+ Get the names of all registered .
+
+
+
+
+
+ Calls the equivalent method on the 'proxied' ,
+ passing the associated with this
+ instance.
+
+
+
+
+ Calls the equivalent method on the 'proxied' ,
+ passing the associated with this
+ instance.
+
+
+
+
+ Calls the equivalent method on the 'proxied' ,
+ passing the associated with this
+ instance.
+
+
+
+
+ Remove the identifed from the 's
+ list of global listeners.
+
+
+
+ true if the identifed listener was found in the list, and removed
+
+
+
+
+ Calls the equivalent method on the 'proxied' ,
+ passing the associated with this
+ instance.
+
+
+
+
+ Calls the equivalent method on the 'proxied' .
+
+
+
+
+ Calls the equivalent method on the 'proxied' .
+
+
+
+
+ Calls the equivalent method on the 'proxied' .
+
+
+
+
+ Calls the equivalent method on the 'proxied' .
+
+
+
+
+ Remove the identifed from the 's
+ list of global listeners.
+
+ The name.
+
+ true if the identifed listener was found in the list, and removed.
+
+
+
+
+ Calls the equivalent method on the 'proxied' .
+
+
+
+
+ Calls the equivalent method on the 'proxied' .
+
+
+
+
+ Calls the equivalent method on the 'proxied' .
+
+
+
+
+ Calls the equivalent method on the 'proxied' .
+
+
+
+
+ Calls the equivalent method on the 'proxied' .
+
+
+
+
+ Returns the name of the .
+
+
+
+
+ Returns the instance Id of the .
+
+
+
+
+ Gets or sets the remote scheduler address.
+
+ The remote scheduler address.
+
+
+
+ Returns the of the .
+
+
+
+
+ Calls the equivalent method on the 'proxied' .
+
+
+
+
+ Gets a value indicating whether this instance is paused.
+
+ true if this instance is paused; otherwise, false.
+
+
+
+ Calls the equivalent method on the 'proxied' .
+
+
+
+
+ Calls the equivalent method on the 'proxied' ,
+ passing the associated with this
+ instance.
+
+
+
+
+ Calls the equivalent method on the 'proxied' ,
+ passing the associated with this
+ instance.
+
+
+
+
+ Calls the equivalent method on the 'proxied' ,
+ passing the associated with this
+ instance.
+
+
+
+
+ Calls the equialent method on the 'proxied' .
+
+
+
+
+ Calls the equivalent method on the 'proxied' .
+
+
+
+
+ Calls the equivalent method on the 'proxied' .
+
+
+
+
+ Calls the equivalent method on the 'proxied' .
+
+
+
+
+ Calls the equivalent method on the 'proxied' .
+
+
+
+
+ Set the that will be responsible for producing
+ instances of classes.
+
+ JobFactories may be of use to those wishing to have their application
+ produce instances via some special mechanism, such as to
+ give the opertunity for dependency injection.
+
+
+
+
+ SchedulerException
+
+
+
+ Whether the scheduler has been started.
+
+
+
+ Note: This only reflects whether has ever
+ been called on this Scheduler, so it will return even
+ if the is currently in standby mode or has been
+ since shutdown.
+
+
+
+
+
+
+
+ Holds references to Scheduler instances - ensuring uniqueness, and
+ preventing garbage collection, and allowing 'global' lookups.
+
+ James House
+ Marko Lahma (.NET)
+
+
+
+ Binds the specified sched.
+
+ The sched.
+
+
+
+ Removes the specified sched name.
+
+ Name of the sched.
+
+
+
+
+ Lookups the specified sched name.
+
+ Name of the sched.
+
+
+
+
+ Lookups all.
+
+
+
+
+
+ Gets the singleton instance.
+
+ The instance.
+
+
+
+ Responsible for creating the instances of
+ to be used within the instance.
+
+ This implementation does not re-use any objects, it simply makes a new
+ JobRunShell each time is called.
+
+
+ James House
+
+
+
+ Initialize the factory, providing a handle to the
+ that should be made available within the and
+ the s within it, and a handle to the
+ that the shell will use in its own
+ operations with the .
+
+
+
+
+ Called by the to obtain instances of
+ .
+
+
+
+
+ Called by the to return instances of
+ .
+
+
+
+
+ An implementation of the interface that directly
+ proxies all method calls to the equivalent call on a given
+ instance.
+
+
+
+
+ James House
+
+
+
+ returns true if the given JobGroup
+ is paused
+
+
+
+
+
+
+ returns true if the given TriggerGroup
+ is paused
+
+
+
+
+
+
+ Get a object describiing the settings
+ and capabilities of the scheduler instance.
+
+ Note that the data returned is an 'instantaneous' snap-shot, and that as
+ soon as it's returned, the meta data values may be different.
+
+
+
+
+
+
+ Calls the equivalent method on the 'proxied' .
+
+
+
+
+
+
+
+
+ Get the global that has
+ the given name.
+
+
+
+
+
+
+ Get the global that
+ has the given name.
+
+
+
+
+
+
+ Construct a instance to proxy the given
+ instance, and with the given .
+
+
+
+
+ Calls the equivalent method on the 'proxied' .
+
+
+
+
+ Calls the equivalent method on the 'proxied' .
+
+
+
+
+ Calls the equivalent method on the 'proxied' .
+
+
+
+
+ Calls the equivalent method on the 'proxied' .
+
+
+
+
+ Calls the equivalent method on the 'proxied' .
+
+
+
+
+ Calls the equivalent method on the 'proxied' ,
+ passing the associated with this
+ instance.
+
+
+
+
+ Calls the equivalent method on the 'proxied' ,
+ passing the associated with this
+ instance.
+
+
+
+
+ Calls the equivalent method on the 'proxied' ,
+ passing the associated with this
+ instance.
+
+
+
+
+ Calls the equivalent method on the 'proxied' ,
+ passing the associated with this
+ instance.
+
+
+
+
+ Calls the equivalent method on the 'proxied' ,
+ passing the associated with this
+ instance.
+
+
+
+
+ Calls the equivalent method on the 'proxied' ,
+ passing the associated with this
+ instance.
+
+
+
+
+ Calls the equivalent method on the 'proxied' ,
+ passing the associated with this
+ instance.
+
+
+
+
+ Calls the equivalent method on the 'proxied' ,
+ passing the associated with this
+ instance.
+
+
+
+
+ Calls the equivalent method on the 'proxied' ,
+ passing the associated with this
+ instance.
+
+
+
+
+ Calls the equivalent method on the 'proxied' ,
+ passing the associated with this
+ instance.
+
+
+
+
+ Calls the equivalent method on the 'proxied' ,
+ passing the associated with this
+ instance.
+
+
+
+
+ Calls the equivalent method on the 'proxied' ,
+ passing the associated with this
+ instance.
+
+
+
+
+ Calls the equivalent method on the 'proxied' ,
+ passing the associated with this
+ instance.
+
+
+
+
+ Calls the equivalent method on the 'proxied' ,
+ passing the associated with this
+ instance.
+
+
+
+
+ Calls the equivalent method on the 'proxied' ,
+ passing the associated with this
+ instance.
+
+
+
+
+ Calls the equivalent method on the 'proxied' ,
+ passing the associated with this
+ instance.
+
+
+
+
+ Calls the equivalent method on the 'proxied' ,
+ passing the associated with this
+ instance.
+
+
+
+
+ Calls the equivalent method on the 'proxied' ,
+ passing the associated with this
+ instance.
+
+
+
+
+ Calls the equivalent method on the 'proxied' ,
+ passing the associated with this
+ instance.
+
+
+
+
+ Calls the equivalent method on the 'proxied' ,
+ passing the associated with this
+ instance.
+
+
+
+
+ Calls the equivalent method on the 'proxied' ,
+ passing the associated with this
+ instance.
+
+
+
+
+ Calls the equivalent method on the 'proxied' ,
+ passing the associated with this
+ instance.
+
+
+
+
+ Calls the equivalent method on the 'proxied' ,
+ passing the associated with this
+ instance.
+
+
+
+
+ Calls the equivalent method on the 'proxied' ,
+ passing the associated with this
+ instance.
+
+
+
+
+ Calls the equivalent method on the 'proxied' ,
+ passing the associated with this
+ instance.
+
+
+
+
+ Calls the equivalent method on the 'proxied' ,
+ passing the associated with this
+ instance.
+
+
+
+
+ Calls the equivalent method on the 'proxied' ,
+ passing the associated with this
+ instance.
+
+
+
+
+ Calls the equivalent method on the 'proxied' ,
+ passing the associated with this
+ instance.
+
+
+
+
+ Calls the equivalent method on the 'proxied' ,
+ passing the associated with this
+ instance.
+
+
+
+
+ Get the names of all registered .
+
+
+
+
+
+ Calls the equivalent method on the 'proxied' .
+
+
+
+
+ Calls the equivalent method on the 'proxied' .
+
+
+
+
+ Calls the equivalent method on the 'proxied' .
+
+
+
+
+ Remove the identifed from the 's
+ list of global listeners.
+
+
+
+ true if the identifed listener was found in the list, and removed
+
+
+
+
+ Calls the equivalent method on the 'proxied' .
+
+
+
+
+ Calls the equivalent method on the 'proxied' .
+
+
+
+
+ Calls the equivalent method on the 'proxied' .
+
+
+
+
+ Calls the equivalent method on the 'proxied' .
+
+
+
+
+ Calls the equivalent method on the 'proxied' .
+
+
+
+
+ Remove the identifed from the 's
+ list of global listeners.
+
+ The name.
+
+ true if the identifed listener was found in the list, and removed.
+
+
+
+
+ Calls the equivalent method on the 'proxied' .
+
+
+
+
+ Calls the equivalent method on the 'proxied' .
+
+
+
+
+ Calls the equivalent method on the 'proxied' .
+
+
+
+
+ Calls the equivalent method on the 'proxied' .
+
+
+
+
+ Request the interruption, within this Scheduler instance, of all
+ currently executing instances of the identified , which
+ must be an implementor of the interface.
+
+
+
+ If more than one instance of the identified job is currently executing,
+ the method will be called on
+ each instance. However, there is a limitation that in the case that
+ on one instances throws an exception, all
+ remaining instances (that have not yet been interrupted) will not have
+ their method called.
+
+
+ If you wish to interrupt a specific instance of a job (when more than
+ one is executing) you can do so by calling
+ to obtain a handle
+ to the job instance, and then invoke on it
+ yourself.
+
+
+ This method is not cluster aware. That is, it will only interrupt
+ instances of the identified InterruptableJob currently executing in this
+ Scheduler instance, not across the entire cluster.
+
+
+
+
+ true is at least one instance of the identified job was found and interrupted.
+ UnableToInterruptJobException if the job does not implement
+
+
+
+
+
+ Returns the name of the .
+
+
+
+
+ Returns the instance Id of the .
+
+
+
+
+ Returns the of the .
+
+
+
+
+ Whether the scheduler has been started.
+
+
+
+ Note: This only reflects whether has ever
+ been called on this Scheduler, so it will return even
+ if the is currently in standby mode or has been
+ since shutdown.
+
+
+
+
+
+
+
+ Calls the equivalent method on the 'proxied' .
+
+
+
+
+ Calls the equivalent method on the 'proxied' .
+
+
+
+
+ Calls the equivalent method on the 'proxied' ,
+ passing the associated with this
+ instance.
+
+
+
+
+ Calls the equivalent method on the 'proxied' ,
+ passing the associated with this
+ instance.
+
+
+
+
+ Calls the equivalent method on the 'proxied' ,
+ passing the associated with this
+ instance.
+
+
+
+
+ Calls the equivalent method on the 'proxied' .
+
+
+
+
+ Calls the equivalent method on the 'proxied' .
+
+
+
+
+ Calls the equivalent method on the 'proxied' .
+
+
+
+
+ Calls the equivalent method on the 'proxied' .
+
+
+
+
+ Calls the equivalent method on the 'proxied' .
+
+
+
+
+
+
+
+
+ An implementation of that
+ does all of it's work of creating a instance
+ based on the contenents of a properties file.
+
+
+
+ By default a properties are loaded from App.config's quartz section.
+ If that fails, then the "quartz.properties"
+ file located (as a embedded resource) in Quartz.dll is loaded. If you
+ wish to use a file other than these defaults, you must define the system
+ property 'quartz.properties' to point to the file you want.
+
+
+
+ See the sample properties that are distributed with Quartz for
+ information about the various settings available within the file.
+
+
+
+ Alternativly, you can explicitly Initialize the factory by calling one of
+ the methods before calling .
+
+
+
+ Instances of the specified ,
+ , classes will be created
+ by name, and then any additional properties specified for them in the config
+ file will be set on the instance by calling an equivalent 'set' method. For
+ example if the properties file contains the property 'quartz.jobStore.
+ myProp = 10' then after the JobStore class has been instantiated, the property
+ 'MyProp' will be set with the value. Type conversion to primitive CLR types
+ (int, long, float, double, boolean, enum and string) are performed before calling
+ the property's setter method.
+
+
+ James House
+ Anthony Eden
+ Mohammad Rezaei
+ Marko Lahma (.NET)
+
+
+
+ Initializes a new instance of the class.
+
+
+
+
+ Initializes a new instance of the class.
+
+ The props.
+
+
+
+ Initialize the with
+ the contenents of a Properties file.
+
+
+ By default a properties file named "quartz.properties" is loaded from
+ the 'current working directory'. If that fails, then the
+ "quartz.properties" file located (as a resource) in the org/quartz
+ package is loaded. If you wish to use a file other than these defaults,
+ you must define the system property 'quartz.properties' to point to
+ the file you want.
+
+
+
+
+
+ Creates a new name value collection and overrides its values
+ with system values (environment variables).
+
+ The base properties to override.
+ A new NameValueCollection instance.
+
+
+
+ Initialize the with
+ the contenents of the given Properties object.
+
+
+
+
+
+
+
+ Returns a handle to the Scheduler produced by this factory.
+
+
+
+ If one of the methods has not be previously
+ called, then the default (no-arg) method
+ will be called by this method.
+
+
+
+
+ Returns a handle to the Scheduler with the given name, if it exists (if
+ it has already been instantiated).
+
+
+
+
+
+ Returns a handle to the default Scheduler, creating it if it does not
+ yet exist.
+
+
+
+
+
+
+ Returns a handle to all known Schedulers (made by any
+ StdSchedulerFactory instance.).
+
+
+
+
+
+ Inspects a file and compares whether it's "last modified date" has changed
+ since the last time it was inspected. If the file has been updated, the
+ job invokes a "call-back" method on an identified
+ that can be found in the
+ .
+
+ James House
+
+
+
+
+ A marker interface for s that
+ wish to have their state maintained between executions.
+
+
+ instances follow slightly different rules from
+ regular instances. The key difference is that their
+ associated is re-persisted after every
+ execution of the job, thus preserving state for the next execution. The
+ other difference is that stateful jobs are not allowed to Execute
+ concurrently, which means new triggers that occur before the completion of
+ the method will be delayed.
+
+
+
+
+
+ James House
+ Marko Lahma (.NET)
+
+
+
+ The interface to be implemented by classes which represent a 'job' to be
+ performed.
+
+
+ Instances of this interface must have a
+ no-argument constructor. provides a mechanism for 'instance member data'
+ that may be required by some implementations of this interface.
+
+
+
+
+
+ James House
+ Marko Lahma (.NET)
+
+
+
+ Called by the when a
+ fires that is associated with the .
+
+
+ The implementation may wish to set a result object on the
+ JobExecutionContext before this method exits. The result itself
+ is meaningless to Quartz, but may be informative to
+ s or
+ s that are watching the job's
+ execution.
+
+ The execution context.
+
+
+
+ Initializes a new instance of the class.
+
+
+
+
+ Called by the when a
+ fires that is associated with the .
+
+ The implementation may wish to set a result object on the
+ JobExecutionContext before this method exits. The result itself
+ is meaningless to Quartz, but may be informative to
+ s or
+ s that are watching the job's
+ execution.
+
+
+ The execution context.
+
+
+
+
+
+ Gets the last modified date.
+
+ Name of the file.
+
+
+
+
+ Gets the log.
+
+ The log.
+
+
+
+ Interface for objects wishing to receive a 'call-back' from a
+ .
+
+ James House
+
+
+
+
+ Ïnforms that certain file has been updated.
+
+ Name of the file.
+
+
+
+ Built in job for executing native executables in a separate process.
+
+ Matthew Payne
+ James House
+ Steinar Overbeck Cook
+
+
+
+ Required parameter that specifies the name of the command (executable)
+ to be ran.
+
+
+
+
+ Optional parameter that specifies the parameters to be passed to the
+ executed command.
+
+
+
+
+ Optional parameter (value should be 'true' or 'false') that specifies
+ whether the job should wait for the execution of the native process to
+ complete before it completes.
+
+ Defaults to .
+
+
+
+
+ Optional parameter (value should be 'true' or 'false') that specifies
+ whether the spawned process's stdout and stderr streams should be
+ consumed. If the process creates output, it is possible that it might
+ 'hang' if the streams are not consumed.
+
+ Defaults to .
+
+
+
+
+ Optional parameter that specifies the workling directory to be used by
+ the executed command.
+
+
+
+
+ Initializes a new instance of the class.
+
+
+
+
+ Called by the when a
+ fires that is associated with the .
+
+ The implementation may wish to set a result object on the
+ JobExecutionContext before this method exits. The result itself
+ is meaningless to Quartz, but may be informative to
+ s or
+ s that are watching the job's
+ execution.
+
+
+
+
+
+
+ Gets the log.
+
+ The log.
+
+
+
+ Consumes data from the given input stream until EOF and prints the data to stdout
+
+ cooste
+ James House
+
+
+
+ Initializes a new instance of the class.
+
+ The enclosing instance.
+ The input stream.
+ The type.
+
+
+
+ Runs this object as a separate thread, printing the contents of the input stream
+ supplied during instantiation, to either Console. or stderr
+
+
+
+
+ An implementation of Job, that does absolutely nothing - useful for system
+ which only wish to use s
+ and s, rather than writing
+ Jobs that perform work.
+
+ James House
+
+
+
+ Do nothing.
+
+
+
+
+ A Job which sends an e-mail with the configured content to the configured
+ recipient.
+
+ James House
+ Marko Lahma (.NET)
+
+
+ The host name of the smtp server. REQUIRED.
+
+
+ The e-mail address to send the mail to. REQUIRED.
+
+
+ The e-mail address to cc the mail to. Optional.
+
+
+ The e-mail address to claim the mail is from. REQUIRED.
+
+
+ The e-mail address the message should say to reply to. Optional.
+
+
+ The subject to place on the e-mail. REQUIRED.
+
+
+ The e-mail message body. REQUIRED.
+
+
+
+ Executes the job.
+
+ The job execution context.
+
+
+
+ Holds a List of references to SchedulerListener instances and broadcasts all
+ events to them (in order).
+
+
+ This may be more convenient than registering all of the listeners
+ directly with the Scheduler, and provides the flexibility of easily changing
+ which listeners get notified.
+
+
+
+ James House
+
+
+
+ Construct an instance with the given List of listeners.
+
+ The initial List of SchedulerListeners to broadcast to.
+
+
+
+ Holds a List of references to JobListener instances and broadcasts all
+ events to them (in order) - if the event is not excluded via filtering
+ (read on).
+
+
+
+ The broadcasting behavior of this listener to delegate listeners may be
+ more convenient than registering all of the listeners directly with the
+ Trigger, and provides the flexibility of easily changing which listeners
+ get notified.
+
+
+
+ You may also register a number of Regular Expression patterns to match
+ the events against. If one or more patterns are registered, the broadcast
+ will only take place if the event applies to a job who's name/group
+ matches one or more of the patterns.
+
+
+
+
+
+
+
+ James House
+
+
+ Construct an instance with the given name.
+
+ (Remember to add some delegate listeners!)
+
+ @param name the name of this instance
+
+
+ Construct an instance with the given name, and List of listeners.
+
+ @param name the name of this instance
+ @param listeners the initial List of JobListeners to broadcast to.
+
+
+
+ If one or more name patterns are specified, only events relating to
+ jobs who's name matches the given regular expression pattern
+ will be dispatched to the delegate listeners.
+
+
+
+
+
+ If one or more group patterns are specified, only events relating to
+ jobs who's group matches the given regular expression pattern
+ will be dispatched to the delegate listeners.
+
+
+
+
+
+ Holds a List of references to TriggerListener instances and broadcasts all
+ events to them (in order) - if the event is not excluded via filtering
+ (read on).
+
+
+
+ The broadcasting behavior of this listener to delegate listeners may be
+ more convenient than registering all of the listeners directly with the
+ Trigger, and provides the flexibility of easily changing which listeners
+ get notified.
+
+
+
+ You may also register a number of Regular Expression patterns to match
+ the events against. If one or more patterns are registered, the broadcast
+ will only take place if the event applies to a trigger who's name/group
+ matches one or more of the patterns.
+
+
+
+
+
+
+
+ James House
+
+
+
+ The interface to be implemented by classes that want to be informed when a
+ fires. In general, applications that use a
+ will not have use for this mechanism.
+
+
+
+
+
+ James House
+
+
+
+ Called by the when a
+ has fired, and it's associated
+ is about to be executed.
+
+ It is called before the method of this
+ interface.
+
+
+ The that has fired.
+
+ The that will be passed to the 's method.
+
+
+
+
+ Called by the when a
+ has fired, and it's associated
+ is about to be executed.
+
+ It is called after the method of this
+ interface.
+
+
+ The that has fired.
+ The that will be passed to
+ the 's method.
+ Returns true if job execution should be vetoed, false otherwise.
+
+
+
+ Called by the when a
+ has misfired.
+
+ Consideration should be given to how much time is spent in this method,
+ as it will affect all triggers that are misfiring. If you have lots
+ of triggers misfiring at once, it could be an issue it this method
+ does a lot.
+
+
+ The that has misfired.
+
+
+
+ Called by the when a
+ has fired, it's associated
+ has been executed, and it's method has been
+ called.
+
+ The that was fired.
+
+ The that was passed to the
+ 's method.
+
+
+ The result of the call on the 's method.
+
+
+
+
+ Get the name of the .
+
+
+
+
+ Construct an instance with the given name.
+
+ (Remember to add some delegate listeners!)
+
+ the name of this instance
+
+
+
+ Construct an instance with the given name, and List of listeners.
+
+ the name of this instance
+ the initial List of TriggerListeners to broadcast to
+
+
+
+ If one or more name patterns are specified, only events relating to
+ triggers who's name matches the given regular expression pattern
+ will be dispatched to the delegate listeners.
+
+
+
+
+
+ If one or more group patterns are specified, only events relating to
+ triggers who's group matches the given regular expression pattern
+ will be dispatched to the delegate listeners.
+
+
+
+
+
+ Keeps a collection of mappings of which Job to trigger after the completion
+ of a given job. If this listener is notified of a job completing that has a
+ mapping, then it will then attempt to trigger the follow-up job. This
+ achieves "job chaining", or a "poor man's workflow".
+
+
+
+ Generally an instance of this listener would be registered as a global
+ job listener, rather than being registered directly to a given job.
+
+
+ If for some reason there is a failure creating the trigger for the
+ follow-up job (which would generally only be caused by a rare serious
+ failure in the system, or the non-existence of the follow-up job), an error
+ messsage is logged, but no other action is taken. If you need more rigorous
+ handling of the error, consider scheduling the triggering of the flow-up
+ job within your job itself.
+
+
+ James House
+
+
+
+ A helpful abstract base class for implementors of .
+
+
+
+ The methods in this class are empty so you only need to override the
+ subset for the events you care about.
+
+
+
+ You are required to implement
+ to return the unique name of your .
+
+
+
+
+
+
+ Initializes a new instance of the class.
+
+
+
+
+ Called by the when a
+ is about to be executed (an associated
+ has occured).
+
+ This method will not be invoked if the execution of the Job was vetoed
+ by a .
+
+
+
+
+
+
+
+ Called by the when a
+ was about to be executed (an associated
+ has occured), but a vetoed it's
+ execution.
+
+
+
+
+
+
+ Called by the after a
+ has been executed, and be for the associated 's
+ method has been called.
+
+
+
+
+
+
+ Get the for this class's category.
+ This should be used by subclasses for logging.
+
+
+
+
+ Get the name of the .
+
+
+
+
+
+ Construct an instance with the given name.
+
+ The name of this instance.
+
+
+
+ Add a chain mapping - when the Job identified by the first key completes
+ the job identified by the second key will be triggered.
+
+ a Key with the name and group of the first job
+ a Key with the name and group of the follow-up job
+
+
+
+ A helpful abstract base class for implementors of
+ .
+
+
+
+ The methods in this class are empty so you only need to override the
+ subset for the events
+ you care about.
+
+
+
+ You are required to implement
+ to return the unique name of your .
+
+
+
+
+
+
+ Get the for this
+ class's category. This should be used by subclasses for logging.
+
+
+
+
+ Get the name of the .
+
+
+
+
+
+ Logs a history of all job executions (and execution vetos) via common
+ logging.
+
+
+
+ The logged message is customizable by setting one of the following message
+ properties to a string that conforms to the syntax of .
+
+
+ JobToBeFiredMessage - available message data are:
+
+ | Element |
+ Data Type |
+ Description |
+
+
+ | 0 |
+ String |
+ The Job's Name. |
+
+
+ | 1 |
+ String |
+ The Job's Group. |
+
+
+ | 2 |
+ Date |
+ The current time. |
+
+
+ | 3 |
+ String |
+ The Trigger's name. |
+
+
+ | 4 |
+ String |
+ The Triggers's group. |
+
+
+ | 5 |
+ Date |
+ The scheduled fire time. |
+
+
+ | 6 |
+ Date |
+ The next scheduled fire time. |
+
+
+ | 7 |
+ Integer |
+ The re-fire count from the JobExecutionContext. |
+
+
+ The default message text is "Job {1}.{0} fired (by trigger {4}.{3}) at:
+ {2, date, HH:mm:ss MM/dd/yyyy"
+
+
+ JobSuccessMessage - available message data are:
+
+ | Element |
+ Data Type |
+ Description |
+
+
+ | 0 |
+ String |
+ The Job's Name. |
+
+
+ | 1 |
+ String |
+ The Job's Group. |
+
+
+ | 2 |
+ Date |
+ The current time. |
+
+
+ | 3 |
+ String |
+ The Trigger's name. |
+
+
+ | 4 |
+ String |
+ The Triggers's group. |
+
+
+ | 5 |
+ Date |
+ The scheduled fire time. |
+
+
+ | 6 |
+ Date |
+ The next scheduled fire time. |
+
+
+ | 7 |
+ Integer |
+ The re-fire count from the JobExecutionContext. |
+
+
+ | 8 |
+ Object |
+ The string value (toString() having been called) of the result (if any)
+ that the Job set on the JobExecutionContext, with on it. "NULL" if no
+ result was set. |
+
+
+ The default message text is "Job {1}.{0} execution complete at {2, date,
+ HH:mm:ss MM/dd/yyyy} and reports: {8"
+
+
+ JobFailedMessage - available message data are:
+
+ | Element |
+ Data Type |
+ Description |
+
+
+ | 0 |
+ String |
+ The Job's Name. |
+
+
+ | 1 |
+ String |
+ The Job's Group. |
+
+
+ | 2 |
+ Date |
+ The current time. |
+
+
+ | 3 |
+ String |
+ The Trigger's name. |
+
+
+ | 4 |
+ String |
+ The Triggers's group. |
+
+
+ | 5 |
+ Date |
+ The scheduled fire time. |
+
+
+ | 6 |
+ Date |
+ The next scheduled fire time. |
+
+
+ | 7 |
+ Integer |
+ The re-fire count from the JobExecutionContext. |
+
+
+ | 8 |
+ String |
+ The message from the thrown JobExecution Exception.
+ |
+
+
+ The default message text is "Job {1}.{0} execution failed at {2, date,
+ HH:mm:ss MM/dd/yyyy} and reports: {8"
+
+
+ JobWasVetoedMessage - available message data are:
+
+ | Element |
+ Data Type |
+ Description |
+
+
+ | 0 |
+ String |
+ The Job's Name. |
+
+
+ | 1 |
+ String |
+ The Job's Group. |
+
+
+ | 2 |
+ Date |
+ The current time. |
+
+
+ | 3 |
+ String |
+ The Trigger's name. |
+
+
+ | 4 |
+ String |
+ The Triggers's group. |
+
+
+ | 5 |
+ Date |
+ The scheduled fire time. |
+
+
+ | 6 |
+ Date |
+ The next scheduled fire time. |
+
+
+ | 7 |
+ Integer |
+ The re-fire count from the JobExecutionContext. |
+
+
+ The default message text is "Job {1}.{0} was vetoed. It was to be fired
+ (by trigger {4}.{3}) at: {2, date, HH:mm:ss MM/dd/yyyy"
+
+
+
+
+
+ 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 ,
+ , and/or .
+
+ If you use 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 's
+ as part of its
+ method.
+
+
+ James House
+
+
+
+ Called during creation of the in order to give
+ the a chance to Initialize.
+
+
+ At this point, the Scheduler's is not yet
+
+ If you need direct access your plugin, you can have it explicitly put a
+ reference to itself in the 's
+ as part of its
+ method.
+
+
+
+ The name by which the plugin is identified.
+
+
+ The scheduler to which the plugin is registered.
+
+
+
+
+ Called when the associated is started, in order
+ to let the plug-in know it can now make calls into the scheduler if it
+ needs to.
+
+
+
+
+ Called in order to inform the that it
+ should free up all of it's resources because the scheduler is shutting
+ down.
+
+
+
+
+ Called during creation of the in order to give
+ the a chance to Initialize.
+
+
+
+
+ Called when the associated is started, in order
+ to let the plug-in know it can now make calls into the scheduler if it
+ needs to.
+
+
+
+
+ Called in order to inform the that it
+ should free up all of it's resources because the scheduler is shutting
+ down.
+
+
+
+
+ Called by the when a is
+ about to be executed (an associated has occurred).
+
+ This method will not be invoked if the execution of the Job was vetoed by a
+ .
+
+
+
+
+
+
+ Called by the after a
+ has been executed, and be for the associated 's
+ method has been called.
+
+
+
+
+
+
+ Called by the when a
+ was about to be executed (an associated
+ has occured), but a vetoed it's
+ execution.
+
+
+
+
+
+
+ Logger instance to use. Defaults to common logging.
+
+
+
+
+ Get or sets the message that is logged when a Job successfully completes its
+ execution.
+
+
+
+
+ Get or sets the message that is logged when a Job fails its
+ execution.
+
+
+
+
+ Gets or sets the message that is logged when a Job is about to Execute.
+
+
+
+
+ Gets or sets the message that is logged when a Job execution is vetoed by a
+ trigger listener.
+
+
+
+
+ Get the name of the .
+
+
+
+
+
+ Logs a history of all trigger firings via the Jakarta Commons-Logging
+ framework.
+
+
+
+ The logged message is customizable by setting one of the following message
+ properties to a string that conforms to the syntax of .
+
+
+
+ TriggerFiredMessage - available message data are:
+
+ | Element |
+ Data Type |
+ Description |
+
+
+ | 0 |
+ String |
+ The Trigger's Name. |
+
+
+ | 1 |
+ String |
+ The Trigger's Group. |
+
+
+ | 2 |
+ Date |
+ The scheduled fire time. |
+
+
+ | 3 |
+ Date |
+ The next scheduled fire time. |
+
+
+ | 4 |
+ Date |
+ The actual fire time. |
+
+
+ | 5 |
+ String |
+ The Job's name. |
+
+
+ | 6 |
+ String |
+ The Job's group. |
+
+
+ | 7 |
+ Integer |
+ The re-fire count from the JobExecutionContext. |
+
+
+
+ The default message text is "Trigger {1}.{0} fired job {6}.{5} at: {4,
+ date, HH:mm:ss MM/dd/yyyy"
+
+
+
+ TriggerMisfiredMessage - available message data are:
+
+ | Element |
+ Data Type |
+ Description |
+
+
+ | 0 |
+ String |
+ The Trigger's Name. |
+
+
+ | 1 |
+ String |
+ The Trigger's Group. |
+
+
+ | 2 |
+ Date |
+ The scheduled fire time. |
+
+
+ | 3 |
+ Date |
+ The next scheduled fire time. |
+
+
+ | 4 |
+ Date |
+ The actual fire time. (the time the misfire was detected/handled) |
+
+
+ | 5 |
+ String |
+ The Job's name. |
+
+
+ | 6 |
+ String |
+ The Job's group. |
+
+
+
+ The default message text is "Trigger {1}.{0} misfired job {6}.{5} at:
+ {4, date, HH:mm:ss MM/dd/yyyy}. Should have fired at: {3, date, HH:mm:ss
+ MM/dd/yyyy"
+
+
+
+ TriggerCompleteMessage - available message data are:
+
+ | Element |
+ Data Type |
+ Description |
+
+
+ | 0 |
+ String |
+ The Trigger's Name. |
+
+
+ | 1 |
+ String |
+ The Trigger's Group. |
+
+
+ | 2 |
+ Date |
+ The scheduled fire time. |
+
+
+ | 3 |
+ Date |
+ The next scheduled fire time. |
+
+
+ | 4 |
+ Date |
+ The job completion time. |
+
+
+ | 5 |
+ String |
+ The Job's name. |
+
+
+ | 6 |
+ String |
+ The Job's group. |
+
+
+ | 7 |
+ Integer |
+ The re-fire count from the JobExecutionContext. |
+
+
+ | 8 |
+ Integer |
+ The trigger's resulting instruction code. |
+
+
+ | 9 |
+ String |
+ A human-readable translation of the trigger's resulting instruction
+ code. |
+
+
+
+ The default message text is "Trigger {1}.{0} completed firing job
+ {6}.{5} at {4, date, HH:mm:ss MM/dd/yyyy} with resulting trigger instruction
+ code: {9"
+
+
+ James House
+
+
+
+ Called during creation of the in order to give
+ the a chance to Initialize.
+
+
+
+
+ Called when the associated is started, in order
+ to let the plug-in know it can now make calls into the scheduler if it
+ needs to.
+
+
+
+
+ Called in order to inform the that it
+ should free up all of it's resources because the scheduler is shutting
+ down.
+
+
+
+
+ Called by the when a
+ has fired, and it's associated
+ is about to be executed.
+
+ It is called before the method of this
+ interface.
+
+
+ The that has fired.
+ The that will be passed to the 's method.
+
+
+
+ Called by the when a
+ has misfired.
+
+ Consideration should be given to how much time is spent in this method,
+ as it will affect all triggers that are misfiring. If you have lots
+ of triggers misfiring at once, it could be an issue it this method
+ does a lot.
+
+
+ The that has misfired.
+
+
+
+ Called by the when a
+ has fired, it's associated
+ has been executed, and it's method has been
+ called.
+
+ The that was fired.
+ The that was passed to the
+ 's method.
+ The result of the call on the 's method.
+
+
+
+ Called by the when a
+ has fired, and it's associated
+ is about to be executed.
+
+ It is called after the method of this
+ interface.
+
+
+ The that has fired.
+ The that will be passed to
+ the 's method.
+
+
+
+
+ Logger instance to use. Defaults to common logging.
+
+
+
+
+ Get or set the message that is printed upon the completion of a trigger's
+ firing.
+
+
+
+
+ Get or set the message that is printed upon a trigger's firing.
+
+
+
+
+ Get or set the message that is printed upon a trigger's mis-firing.
+
+
+
+
+ Get the name of the .
+
+
+
+
+
+ This plugin catches the event of the VM terminating (such as upon a CRTL-C)
+ and tells the scheuler to Shutdown.
+
+
+ James House
+
+
+
+ Called during creation of the in order to give
+ the a chance to Initialize.
+
+
+
+
+ Called when the associated is started, in order
+ to let the plug-in know it can now make calls into the scheduler if it
+ needs to.
+
+
+
+
+ Called in order to inform the that it
+ should free up all of it's resources because the scheduler is shutting
+ down.
+
+
+
+
+ Determine whether or not the plug-in is configured to cause a clean
+ Shutdown of the scheduler.
+
+ The default value is .
+
+
+
+
+
+
+ Attribute to use with public properties that
+ can be set with Quartz configuration. Attribute can be used to advice
+ parsing to use correct type of time span (milliseconds, seconds, minutes, hours)
+ as it may depend on property.
+
+
+
+
+
+ Initializes a new instance of the class.
+
+ The rule.
+
+
+
+ Gets the rule.
+
+ The rule.
+
+
+
+ Possible parse rules for s.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ This plugin loads XML file(s) to add jobs and schedule them with triggers
+ as the scheduler is initialized, and can optionally periodically scan the
+ file for changes.
+
+
+ The periodically scanning of files for changes is not currently supported in a
+ clustered environment.
+
+ James House
+ Pierre Awaragi
+
+
+
+ Initializes a new instance of the class.
+
+
+
+
+
+
+
+
+
+
+ Called during creation of the in order to give
+ the a chance to initialize.
+
+ The name.
+ The scheduler.
+ SchedulerConfigException
+
+
+
+ Called when the associated is started, in order
+ to let the plug-in know it can now make calls into the scheduler if it
+ needs to.
+
+
+
+ Helper method for generating unique job/trigger name for the
+ file scanning jobs (one per FileJob). The unique names are saved
+ in jobTriggerNameSet.
+
+
+
+ Called in order to inform the that it
+ should free up all of it's resources because the scheduler is shutting
+ down.
+
+
+
+
+ Gets the log.
+
+ The log.
+
+
+
+ Comma separated list of file names (with paths) to the XML files that should be read.
+
+
+
+
+ Whether or not jobs defined in the XML file should be overwrite existing
+ jobs with the same name.
+
+
+
+
+ The interval at which to scan for changes to the file.
+ If the file has been changed, it is re-loaded and parsed. The default
+ value for the interval is 0, which disables scanning.
+
+
+
+
+ Whether or not initialization of the plugin should fail (throw an
+ exception) if the file cannot be found. Default is .
+
+
+
+
+ Whether or not the XML should be validated. Default is .
+
+
+
+
+ Whether or not the XML schema should be validated. Default is .
+
+
+
+
+ A uses all of the
+ types that are found in this package in its attempts to load a class, when
+ one scheme is found to work, it is promoted to the scheme that will be used
+ first the next time a class is loaded (in order to improve perfomance).
+
+
+ This approach is used because of the wide variance in class loader behavior
+ between the various environments in which Quartz runs (e.g. disparate
+ application servers, stand-alone, mobile devices, etc.). Because of this
+ disparity, Quartz ran into difficulty with a one class-load style fits-all
+ design. Thus, this class loader finds the approach that works, then
+ 'remembers' it.
+
+ James House
+
+
+
+ Called to give the ClassLoadHelper a chance to Initialize itself,
+ including the oportunity to "steal" the class loader off of the calling
+ thread, which is the thread that is initializing Quartz.
+
+
+
+
+ Return the class with the given name.
+
+
+
+ Finds a resource with a given name. This method returns null if no
+ resource with this name is found.
+
+ name of the desired resource
+
+ a java.net.URL object
+
+
+
+ Finds a resource with a given name. This method returns null if no
+ resource with this name is found.
+
+ name of the desired resource
+
+ a java.io.InputStream object
+
+
+
+
+ that names the scheduler instance using
+ just the machine hostname.
+
+ This class is useful when you know that your scheduler instance will be the
+ only one running on a particular machine. Each time the scheduler is
+ restarted, it will get the same instance id as long as the machine is not
+ renamed.
+
+
+
+
+
+
+
+
+ An IInstanceIdGenerator is responsible for generating the clusterwide unique
+ instance id for a nodde.
+
+ This interface may be of use to those wishing to have specific control over
+ the mechanism by which the instances in their
+ application are named.
+
+
+
+
+
+
+ Generate the instance id for a
+
+
+ The clusterwide unique instance id.
+
+
+
+
+ Generate the instance id for a
+
+ The clusterwide unique instance id.
+
+
+
+ A that uses either the loader of it's own
+ class.
+
+
+
+
+ James House
+
+
+
+ Called to give the ClassLoadHelper a chance to Initialize itself,
+ including the oportunity to "steal" the class loader off of the calling
+ thread, which is the thread that is initializing Quartz.
+
+
+
+ Return the class with the given name.
+
+
+ Finds a resource with a given name. This method returns null if no
+ resource with this name is found.
+
+ name of the desired resource
+
+ a java.net.URL object
+
+
+
+ Finds a resource with a given name. This method returns null if no
+ resource with this name is found.
+
+ name of the desired resource
+
+ a java.io.InputStream object
+
+
+
+
+ A JobFactory that instantiates the Job instance (using the default no-arg
+ constructor, or more specifically: ), and
+ then attempts to set all values in the 's
+ onto bean properties of the .
+
+
+
+
+
+
+ James Houser
+ Marko Lahma (.NET)
+
+
+
+ The default JobFactory used by Quartz - simply calls
+ on the job class.
+
+
+
+ James House
+ Marko Lahma (.NET)
+
+
+
+ A JobFactory is responsible for producing instances of
+ classes.
+
+
+ This interface may be of use to those wishing to have their application
+ produce instances via some special mechanism, such as to
+ give the opertunity for dependency injection.
+
+
+
+
+ James House
+
+
+
+ Called by the scheduler at the time of the trigger firing, in order to
+ produce a instance on which to call Execute.
+
+
+
+ It should be extremely rare for this method to throw an exception -
+ basically only the the case where there is no way at all to instantiate
+ and prepare the Job for execution. When the exception is thrown, the
+ Scheduler will move all triggers associated with the Job into the
+ state, which will require human
+ intervention (e.g. an application restart after fixing whatever
+ configuration problem led to the issue wih instantiating the Job.
+
+
+
+
+ The TriggerFiredBundle from which the
+ and other info relating to the trigger firing can be obtained.
+
+ SchedulerException if there is a problem instantiating the Job.
+ the newly instantiated Job
+
+
+
+
+ Called by the scheduler at the time of the trigger firing, in order to
+ produce a instance on which to call Execute.
+
+
+ It should be extremely rare for this method to throw an exception -
+ basically only the the case where there is no way at all to instantiate
+ and prepare the Job for execution. When the exception is thrown, the
+ Scheduler will move all triggers associated with the Job into the
+ state, which will require human
+ intervention (e.g. an application restart after fixing whatever
+ configuration problem led to the issue wih instantiating the Job.
+
+ The TriggerFiredBundle from which the
+ and other info relating to the trigger firing can be obtained.
+ the newly instantiated Job
+ SchedulerException if there is a problem instantiating the Job.
+
+
+
+ Called by the scheduler at the time of the trigger firing, in order to
+ produce a instance on which to call Execute.
+
+
+
+ It should be extremely rare for this method to throw an exception -
+ basically only the the case where there is no way at all to instantiate
+ and prepare the Job for execution. When the exception is thrown, the
+ Scheduler will move all triggers associated with the Job into the
+ state, which will require human
+ intervention (e.g. an application restart after fixing whatever
+ configuration problem led to the issue wih instantiating the Job.
+
+
+ The TriggerFiredBundle from which the
+ and other info relating to the trigger firing can be obtained.
+ the newly instantiated Job
+ SchedulerException if there is a problem instantiating the Job.
+
+
+
+ Sets the object properties.
+
+ The object to set properties to.
+ The data to set.
+
+
+
+ Whether the JobInstantiation should fail and throw and exception if
+ a key (name) and value (type) found in the JobDataMap does not
+ correspond to a proptery setter on the Job class.
+
+
+
+
+ Get or set whether a warning should be logged if
+ a key (name) and value (type) found in the JobDataMap does not
+ correspond to a proptery setter on the Job class.
+
+
+
+
+ This class implements a that
+ utilizes RAM as its storage device.
+
+ As you should know, the ramification of this is that access is extrememly
+ fast, but the data is completely volatile - therefore this
+ should not be used if true persistence between program shutdowns is
+ required.
+
+
+ James House
+ Sharada Jambula
+ Marko Lahma (.NET)
+
+
+
+ Initializes a new instance of the class.
+
+
+
+
+ Called by the QuartzScheduler before the is
+ used, in order to give the it a chance to Initialize.
+
+
+
+
+ Called by the QuartzScheduler to inform the that
+ the scheduler has started.
+
+
+
+
+ Called by the QuartzScheduler to inform the that
+ it should free up all of it's resources because the scheduler is
+ shutting down.
+
+
+
+
+ Store the given and .
+
+ The scheduling context.
+ The to be stored.
+ The to be stored.
+
+
+
+ Returns true if the given job group is paused.
+
+
+ Job group name
+
+
+
+
+ returns true if the given TriggerGroup is paused.
+
+
+
+
+
+
+
+ Store the given .
+
+ The scheduling context.
+ The to be stored.
+ If , any existing in the
+ with the same name and group should be
+ over-written.
+
+
+
+ Remove (delete) the with the given
+ name, and any s that reference
+ it.
+
+ The scheduling context.
+ The name of the to be removed.
+ The group name of the to be removed.
+
+ if a with the given name and
+ group was found and removed from the store.
+
+
+
+
+ Remove (delete) the with the
+ given name.
+
+ The scheduling context.
+ The name of the to be removed.
+ The group name of the to be removed.
+
+ if a with the given
+ name and group was found and removed from the store.
+
+
+
+
+ Store the given .
+
+ The scheduling context.
+ The to be stored.
+ If , any existing in
+ the with the same name and group should
+ be over-written.
+
+
+
+ Remove (delete) the with the
+ given name.
+
+ The scheduling context.
+ The name of the to be removed.
+ The group name of the to be removed.
+
+ if a with the given
+ name and group was found and removed from the store.
+
+ Whether to delete orpahaned job details from scheduler if job becomes orphaned from removing the trigger.
+
+
+
+ Replaces the trigger.
+
+ The scheduling context.
+ Name of the trigger.
+ Name of the group.
+ The new trigger.
+
+
+
+
+ Retrieve the for the given
+ .
+
+ The scheduling context.
+ The name of the to be retrieved.
+ The group name of the to be retrieved.
+
+ The desired , or null if there is no match.
+
+
+
+
+ Retrieve the given .
+
+ The scheduling context.
+ The name of the to be retrieved.
+ The group name of the to be retrieved.
+
+ The desired , or null if there is no match.
+
+
+
+
+ Get the current state of the identified .
+
+
+
+
+
+
+
+
+
+
+ Store the given .
+
+ The scheduling context.
+ The name.
+ The to be stored.
+ If , any existing
+ in the with the same name and group
+ should be over-written.
+ If , any s existing
+ in the that reference an existing
+ Calendar with the same name with have their next fire time
+ re-computed with the new .
+
+
+
+ Remove (delete) the with the
+ given name.
+
+ If removal of the would result in
+ s pointing to non-existent calendars, then a
+ will be thrown.
+
+ The scheduling context.
+ The name of the to be removed.
+
+ if a with the given name
+ was found and removed from the store.
+
+
+
+
+ Retrieve the given .
+
+ The scheduling context.
+ The name of the to be retrieved.
+
+ The desired , or null if there is no match.
+
+
+
+
+ Get the number of s that are
+ stored in the .
+
+
+
+
+ Get the number of s that are
+ stored in the .
+
+
+
+
+ Get the number of s that are
+ stored in the .
+
+
+
+
+ Get the names of all of the s that
+ have the given group name.
+
+
+
+
+ Get the names of all of the s
+ in the .
+
+ If there are no ICalendars in the given group name, the result should be
+ a zero-length array (not ).
+
+
+
+
+
+ Get the names of all of the s
+ that have the given group name.
+
+
+
+
+ Get the names of all of the
+ groups.
+
+
+
+
+ Get the names of all of the groups.
+
+
+
+
+ Get all of the Triggers that are associated to the given Job.
+
+ If there are no matches, a zero-length array should be returned.
+
+
+
+
+
+ Gets the trigger wrappers for job.
+
+ Name of the job.
+ Name of the group.
+
+
+
+
+ Gets the trigger wrappers for calendar.
+
+ Name of the cal.
+
+
+
+
+ Pause the with the given name.
+
+
+
+
+ Pause all of the s in the given group.
+
+ The JobStore should "remember" that the group is paused, and impose the
+ pause on any new triggers that are added to the group while the group is
+ paused.
+
+
+
+
+
+ Pause the with the given
+ name - by pausing all of its current s.
+
+
+
+
+ Pause all of the s in the
+ given group - by pausing all of their s.
+
+ The JobStore should "remember" that the group is paused, and impose the
+ pause on any new jobs that are added to the group while the group is
+ paused.
+
+
+
+
+
+ Resume (un-pause) the with the given name.
+
+
+ If the missed one or more fire-times, then the
+ 's misfire instruction will be applied.
+
+
+
+
+ Resume (un-pause) all of the s in the
+ given group.
+
+ If any missed one or more fire-times, then the
+ 's misfire instruction will be applied.
+
+
+
+
+
+ Resume (un-pause) the with
+ the given name.
+
+ If any of the 's s missed one
+ or more fire-times, then the 's misfire
+ instruction will be applied.
+
+
+
+
+
+ Resume (un-pause) all of the s
+ in the given group.
+
+ If any of the s had s that
+ missed one or more fire-times, then the 's
+ misfire instruction will be applied.
+
+
+
+
+
+ Pause all triggers - equivalent of calling
+ on every group.
+
+ When is called (to un-pause), trigger misfire
+ instructions WILL be applied.
+
+
+
+
+
+
+ Resume (un-pause) all triggers - equivalent of calling
+ on every trigger group and setting all job groups unpaused />.
+
+ If any missed one or more fire-times, then the
+ 's misfire instruction will be applied.
+
+
+
+
+
+
+ Applies the misfire.
+
+ The trigger wrapper.
+
+
+
+
+ Get a handle to the next trigger to be fired, and mark it as 'reserved'
+ by the calling scheduler.
+
+
+
+
+
+ Inform the that the scheduler no longer plans to
+ fire the given , that it had previously acquired
+ (reserved).
+
+
+
+
+ Inform the that the scheduler is now firing the
+ given (executing its associated ),
+ that it had previously acquired (reserved).
+
+
+
+
+ Inform the that the scheduler has completed the
+ firing of the given (and the execution its
+ associated ), and that the
+ in the given should be updated if the
+ is stateful.
+
+
+
+
+ Sets the state of all triggers of job to specified state.
+
+ Name of the job.
+ The job group.
+ The internal state to set.
+
+
+
+ Peeks the triggers.
+
+
+
+
+
+
+
+
+ The time span by which a trigger must have missed its
+ next-fire-time, in order for it to be considered "misfired" and thus
+ have its misfire instruction applied.
+
+
+
+
+ Gets the fired trigger record id.
+
+ The fired trigger record id.
+
+
+
+ Returns whether this instance supports persistence.
+
+
+
+
+
+
+ Comparer for triggers.
+
+
+
+
+ Possible internal trigger states
+ in RAMJobStore
+
+
+
+
+ Waiting
+
+
+
+
+ Acquired
+
+
+
+
+ Executing
+
+
+
+
+ Complete
+
+
+
+
+ Paused
+
+
+
+
+ Blocked
+
+
+
+
+ Paused and Blocked
+
+
+
+
+ Error
+
+
+
+
+ Helper wrapper class
+
+
+
+
+ The key used
+
+
+
+
+ Job's key
+
+
+
+
+ The trigger
+
+
+
+
+ Current state
+
+
+
+
+ Determines whether the specified is equal to the current .
+
+ The to compare with the current .
+
+ true if the specified is equal to the current ; otherwise, false.
+
+
+
+
+ Serves as a hash function for a particular type. is suitable for use in hashing algorithms and data structures like a hash table.
+
+
+ A hash code for the current .
+
+
+
+
+ Gets the trigger
+
+ The trigger
+
+
+
+ Scheduler exporter that exports scheduler to remoting context.
+
+ Marko Lahma
+
+
+
+ Service interface for scheduler exporters.
+
+ Marko Lahma
+
+
+
+ Binds (exports) scheduler to external context.
+
+
+
+
+
+ Unbinds scheduler from external context.
+
+
+
+
+
+ Registers remoting channel if needed. This is determined
+ by checking whether there is a positive value for port.
+
+
+
+
+ Gets or sets the port used for remoting.
+
+
+
+
+ Gets or sets the name to use when exporting
+ scheduler to remoting context.
+
+
+
+
+ Sets the channel type when registering remoting.
+
+
+
+
+
+ Sets the used when
+ exporting to remoting context. Defaults to
+ .
+
+
+
+
+ A that simply calls .
+
+
+
+ James House
+
+
+
+ Called to give the ClassLoadHelper a chance to Initialize itself,
+ including the oportunity to "steal" the class loader off of the calling
+ thread, which is the thread that is initializing Quartz.
+
+
+
+ Return the class with the given name.
+
+
+
+ Finds a resource with a given name. This method returns null if no
+ resource with this name is found.
+
+ name of the desired resource
+
+ a Uri object
+
+
+
+ Finds a resource with a given name. This method returns null if no
+ resource with this name is found.
+
+ name of the desired resource
+
+ a Stream object
+
+
+
+
+ The default InstanceIdGenerator used by Quartz when instance id is to be
+ automatically generated. Instance id is of the form HOSTNAME + CURRENT_TIME.
+
+
+
+
+
+
+
+
+ Generate the instance id for a
+
+ The clusterwide unique instance id.
+
+
+
+ This is class is a simple implementation of a thread pool, based on the
+ interface.
+
+ objects are sent to the pool with the
+ method, which blocks until a becomes available.
+
+
+
+ The pool has a fixed number of s, and does not grow or
+ shrink based on demand.
+
+
+ James House
+ Juergen Donnerstag
+
+
+
+ The interface to be implemented by classes that want to provide a thread
+ pool for the 's use.
+
+
+ implementation instances should ideally be made
+ for the sole use of Quartz. Most importantly, when the method
+ returns a value of 1 or greater,
+ there must still be at least one available thread in the pool when the
+ method is called a few moments (or
+ many moments) later. If this assumption does not hold true, it may
+ result in extra JobStore queries and updates, and if clustering features
+ are being used, it may result in greater imballance of load.
+
+
+ James House
+
+
+
+ Execute the given in the next
+ available .
+
+
+ The implementation of this interface should not throw exceptions unless
+ there is a serious problem (i.e. a serious misconfiguration). If there
+ are no available threads, rather it should either queue the Runnable, or
+ block until a thread is available, depending on the desired strategy.
+
+
+
+
+ Determines the number of threads that are currently available in in
+ the pool. Useful for determining the number of times
+ can be called before returning
+ false.
+
+
+ The implementation of this method should block until there is at
+ least one available thread.
+
+ the number of currently available threads
+
+
+
+ Called by the QuartzScheduler before the is
+ used, in order to give the it a chance to Initialize.
+
+
+
+
+ Called by the QuartzScheduler to inform the
+ that it should free up all of it's resources because the scheduler is
+ shutting down.
+
+
+
+
+ Gets the size of the pool.
+
+ The size of the pool.
+
+
+
+ Create a new (unconfigured) .
+
+
+
+
+ Create a new with the specified number
+ of s that have the given priority.
+
+
+ the number of worker s in the pool, must
+ be > 0.
+
+
+ the thread priority for the worker threads.
+
+
+
+
+
+ Called by the QuartzScheduler before the is
+ used, in order to give the it a chance to Initialize.
+
+
+
+
+ Terminate any worker threads in this thread group.
+ Jobs currently in progress will complete.
+
+
+
+
+ Run the given object in the next available
+ . If while waiting the thread pool is asked to
+ shut down, the Runnable is executed immediately within a new additional
+ thread.
+
+ The to be added.
+
+
+
+ Creates the worker threads.
+
+ The thread count.
+
+
+
+
+ Terminate any worker threads in this thread group.
+ Jobs currently in progress will complete.
+
+
+
+
+ Gets or sets the number of worker threads in the pool.
+ Set has no effect after has been called.
+
+
+
+
+ Get or set the thread priority of worker threads in the pool.
+ Set operation has no effect after has been called.
+
+
+
+
+ Gets or sets the thread name prefix.
+
+ The thread name prefix.
+
+
+
+ Gets or sets the value of makeThreadsDaemons.
+
+
+
+
+ Gets the size of the pool.
+
+ The size of the pool.
+
+
+
+ A Worker loops, waiting to Execute tasks.
+
+
+
+
+ Create a worker thread and start it. Waiting for the next Runnable,
+ executing it, and waiting for the next Runnable, until the Shutdown
+ flag is set.
+
+
+
+
+ Create a worker thread, start it, Execute the runnable and terminate
+ the thread (one time execution).
+
+
+
+
+ Signal the thread that it should terminate.
+
+
+
+
+ Loop, executing targets as they are received.
+
+
+
+
+ This is class is a simple implementation of a zero size thread pool, based on the
+ {@link org.quartz.spi.ThreadPool} interface.
+
+
+ The pool has zero s and does not grow or shrink based on demand.
+ Which means it is obviously not useful for most scenarios. When it may be useful
+ is to prevent creating any worker threads at all - which may be desirable for
+ the sole purpose of preserving system resources in the case where the scheduler
+ instance only exists in order to schedule jobs, but which will never execute
+ jobs (e.g. will never have Start() called on it).
+
+ Wayne Fay
+
+
+
+ Initializes a new instance of the class.
+
+
+
+
+ Called by the QuartzScheduler before the is
+ used, in order to give the it a chance to Initialize.
+
+
+
+
+ Shutdowns this instance.
+
+
+
+
+ Called by the QuartzScheduler to inform the
+ that it should free up all of it's resources because the scheduler is
+ shutting down.
+
+
+
+
+
+ Execute the given in the next
+ available .
+
+
+
+
+ The implementation of this interface should not throw exceptions unless
+ there is a serious problem (i.e. a serious misconfiguration). If there
+ are no available threads, rather it should either queue the Runnable, or
+ block until a thread is available, depending on the desired strategy.
+
+
+
+
+ Determines the number of threads that are currently available in in
+ the pool. Useful for determining the number of times
+ can be called before returning
+ false.
+
+
+ the number of currently available threads
+
+
+ The implementation of this method should block until there is at
+ least one available thread.
+
+
+
+
+ Gets the log.
+
+ The log.
+
+
+
+ Gets the size of the pool.
+
+ The size of the pool.
+
+
+
+ A simple class (structure) used for returning execution-time data from the
+ JobStore to the .
+
+
+ James House
+
+
+
+ Initializes a new instance of the class.
+
+ The job.
+ The trigger.
+ The calendar.
+ if set to true [job is recovering].
+ The fire time.
+ The scheduled fire time.
+ The previous fire time.
+ The next fire time.
+
+
+
+ Gets the job detail.
+
+ The job detail.
+
+
+
+ Gets the trigger.
+
+ The trigger.
+
+
+
+ Gets the calendar.
+
+ The calendar.
+
+
+
+ Gets a value indicating whether this is recovering.
+
+ true if recovering; otherwise, false.
+
+
+
+ Returns the UTC fire time.
+
+
+
+
+ Gets the next UTC fire time.
+
+ The next fire time.
+ Returns the nextFireTimeUtc.
+
+
+
+ Gets the previous UTC fire time.
+
+ The previous fire time.
+ Returns the previous fire time.
+
+
+
+ Returns the scheduled UTC fire time.
+
+
+
+
+ DateTime related utility methods.
+
+
+
+
+ Assumes that given input is in UTC and sets the kind to be UTC.
+ Just a precaution if somebody does not set it explicitly.
+ This only works in .NET Framework 2.0 onwards.
+
+ The datetime to check.
+ DateTime with kind set to UTC.
+
+
+
+ Assumes that given input is in UTC and sets the kind to be UTC.
+ Just a precaution if somebody does not set it explicitly.
+
+ The datetime to check.
+ DateTime with kind set to UTC.
+
+
+
+ Manages a collection of IDbProviders, and provides transparent access
+ to their database.
+
+
+ James House
+ Sharada Jambula
+ Mohammad Rezaei
+
+
+
+ Private constructor
+
+
+
+
+ Adds the connection provider.
+
+ Name of the data source.
+ The provider.
+
+
+
+ Get a database connection from the DataSource with the given name.
+
+ a database connection
+
+
+
+ Shuts down database connections from the DataSource with the given name,
+ if applicable for the underlying provider.
+
+ a database connection
+
+
+
+ Gets the db provider.
+
+ Name of the ds.
+
+
+
+
+ Get the class instance.
+
+ an instance of this class
+
+
+
+
+ An implementation of that wraps another
+ and flags itself 'dirty' when it is modified.
+
+ James House
+
+
+
+ Create a DirtyFlagMap that 'wraps' a .
+
+
+
+
+ Create a DirtyFlagMap that 'wraps' a that has the
+ given initial capacity.
+
+
+
+
+ Create a DirtyFlagMap that 'wraps' a that has the
+ given initial capacity and load factor.
+
+
+
+
+ Creates a new object that is a copy of the current instance.
+
+
+ A new object that is a copy of this instance.
+
+
+
+
+ When implemented by a class, removes all elements from the .
+
+
+ The is read-only.
+
+
+
+
+ When implemented by a class, determines whether the contains an element with the specified key.
+
+ The key to locate in the .
+
+ if the contains an element with the key; otherwise, .
+
+
+ is .
+
+
+
+ When implemented by a class, removes the element with the
+ specified key from the .
+
+ The key of the element to remove.
+
+ is .
+
+ The is read-only.
+ -or-
+ The has a fixed size.
+
+
+
+
+ When implemented by a class, returns an
+ for the .
+
+
+ An for the .
+
+
+
+
+ When implemented by a class, adds an element with the provided key and value to the .
+
+ The to use as the key of the element to add.
+ The to use as the value of the element to add.
+ is .
+
+ An element with the same key already exists in the .
+
+
+ The is read-only.
+ -or-
+ The has a fixed size.
+
+
+
+
+ When implemented by a class, copies the elements of
+ the to an , starting at a particular index.
+
+ The one-dimensional that is the destination of the elements copied from . The must have zero-based indexing.
+ The zero-based index in at which copying begins.
+
+ is .
+
+ is less than zero.
+
+
+ is multidimensional.
+ -or-
+
+ is equal to or greater than the length of .
+ -or-
+ The number of elements in the source is greater than the available space from to the end of the destination .
+
+ The type of the source cannot be cast automatically to the type of the destination .
+
+
+
+ Clear the 'dirty' flag (set dirty flag to ).
+
+
+
+
+ Determines whether the specified obj contains value.
+
+ The obj.
+
+ true if the specified obj contains value; otherwise, false.
+
+
+
+
+ Gets the entries as a set.
+
+
+
+
+
+ Determines whether the specified is equal to the current .
+
+ The to compare with the current .
+
+ if the specified is equal to the
+ current ; otherwise, .
+
+
+
+
+ Serves as a hash function for a particular type, suitable
+ for use in hashing algorithms and data structures like a hash table.
+
+
+ A hash code for the current .
+
+
+
+
+ Gets keyset for this map.
+
+
+
+
+
+ Puts the value behind a specified key.
+
+ The key.
+ The val.
+
+
+
+
+ Puts all.
+
+ The t.
+
+
+
+ Determine whether the is flagged dirty.
+
+
+
+
+ Get a direct handle to the underlying Map.
+
+
+
+
+ Gets a value indicating whether this instance is empty.
+
+ true if this instance is empty; otherwise, false.
+
+
+
+ Gets or sets the with the specified key.
+
+
+
+
+
+ When implemented by a class, gets the number of
+ elements contained in the .
+
+
+
+
+
+ When implemented by a class, gets an containing the values in the .
+
+
+
+
+
+ When implemented by a class, gets an containing the keys of the .
+
+
+
+
+
+ When implemented by a class, gets a value indicating whether the
+ is read-only.
+
+
+
+
+
+ When implemented by a class, gets a value indicating whether the
+ has a fixed size.
+
+
+
+
+
+ When implemented by a class, gets an object that
+ can be used to synchronize access to the .
+
+
+
+
+
+ When implemented by a class, gets a value
+ indicating whether access to the is synchronized
+ (thread-safe).
+
+
+
+
+
+ Utility class for file handling related things.
+
+
+
+
+ Resolves file to actual file if for example relative '~' used.
+
+ File name to check
+ Expanded file name or actual no resolving was done.
+
+
+
+ object representing a job or trigger key.
+
+ Jeffrey Wescott
+
+
+
+
+ Utility class for storing two pieces of information together.
+
+ Jeffrey Wescott
+
+
+
+ Test equality of this object with that.
+
+ object to compare
+ true if objects are equal, false otherwise
+
+
+
+ Serves as a hash function for a particular type. is suitable for use in hashing algorithms and data structures like a hash table.
+
+
+ A hash code for the current .
+
+
+
+
+ Get or sets the first object in the pair.
+
+
+
+
+ Get or sets the second object in the pair.
+
+
+
+ Construct a new key with the given name and group.
+
+
+
+ the name
+
+
+ the group
+
+
+
+
+ Return the string representation of the key. The format will be:
+ <group>.<name>.
+
+
+
+ the string representation of the key
+
+
+
+
+ Get the name portion of the key.
+
+ the name
+
+
+
+
+ Get the group portion of the key.
+
+
+
+ the group
+
+
+
+
+ Wrapper class to access thread local data.
+ Data is either accessed from thread or HTTP Context's
+ data if HTTP Context is avaiable.
+
+ Marko Lahma (.NET)
+
+
+
+ Retrieves an object with the specified name.
+
+ The name of the item.
+ The object in the call context associated with the specified name or null if no object has been stored previously
+
+
+
+ Stores a given object and associates it with the specified name.
+
+ The name with which to associate the new item.
+ The object to store in the call context.
+
+
+
+ Empties a data slot with the specified name.
+
+ The name of the data slot to empty.
+
+
+
+ Utility methods that are used to convert objects from one type into another.
+
+ Aleksandar Seovic
+
+
+
+ Convert the value to the required (if necessary from a string).
+
+ The proposed change value.
+
+ The we must convert to.
+
+ The new value, possibly the result of type conversion.
+
+
+
+ Determines whether value is assignable to required type.
+
+ The value to check.
+ Type of the required.
+
+ true if value can be assigned as given type; otherwise, false.
+
+
+
+
+ Instantiates an instance of the type specified.
+
+ The type to instantiate.
+
+
+
+
+ Sets the object properties using reflection.
+
+ The object to set values to.
+ The properties to set to object.
+
+
+
+ This is an utility class used to parse the properties.
+
+ James House
+
+
+
+ Initializes a new instance of the class.
+
+ The props.
+
+
+
+ Gets the string property.
+
+ The name.
+
+
+
+
+ Gets the string property.
+
+ The name.
+ The default value.
+
+
+
+
+ Gets the string array property.
+
+ The name.
+
+
+
+
+ Gets the string array property.
+
+ The name.
+ The default value.
+
+
+
+
+ Gets the boolean property.
+
+ The name.
+
+
+
+
+ Gets the boolean property.
+
+ The name.
+ if set to true [defaultValue].
+
+
+
+
+ Gets the byte property.
+
+ The name.
+
+
+
+
+ Gets the byte property.
+
+ The name.
+ The default value.
+
+
+
+
+ Gets the char property.
+
+ The name.
+
+
+
+
+ Gets the char property.
+
+ The name.
+ The default value.
+
+
+
+
+ Gets the double property.
+
+ The name.
+
+
+
+
+ Gets the double property.
+
+ The name.
+ The default value.
+
+
+
+
+ Gets the float property.
+
+ The name.
+
+
+
+
+ Gets the float property.
+
+ The name.
+ The default value.
+
+
+
+
+ Gets the int property.
+
+ The name.
+
+
+
+
+ Gets the int property.
+
+ The name.
+ The default value.
+
+
+
+
+ Gets the int array property.
+
+ The name.
+
+
+
+
+ Gets the int array property.
+
+ The name.
+ The default value.
+
+
+
+
+ Gets the long property.
+
+ The name.
+
+
+
+
+ Gets the long property.
+
+ The name.
+ The def.
+
+
+
+
+ Gets the TimeSpan property.
+
+ The name.
+ The def.
+
+
+
+
+ Gets the short property.
+
+ The name.
+
+
+
+
+ Gets the short property.
+
+ The name.
+ The default value.
+
+
+
+
+ Gets the property groups.
+
+ The prefix.
+
+
+
+
+ Gets the property group.
+
+ The prefix.
+
+
+
+
+ Gets the property group.
+
+ The prefix.
+ if set to true [strip prefix].
+
+
+
+
+ Get all properties that start with the given prefix.
+
+ The prefix for which to search. If it does not end in a "." then one will be added to it for search purposes.
+ Whether to strip off the given in the result's keys.
+ Optional array of fully qualified prefixes to exclude. For example if is "a.b.c", then might be "a.b.c.ignore".
+ Group of that start with the given prefix, optionally have that prefix removed, and do not include properties that start with one of the given excluded prefixes.
+
+
+
+ Reads the properties from assembly (embedded resource).
+
+ The file name to read resources from.
+
+
+
+
+ Reads the properties from file system.
+
+ The file name to read resources from.
+
+
+
+
+ Gets the underlying properties.
+
+ The underlying properties.
+
+
+
+ An implementation of that wraps another
+ and flags itself 'dirty' when it is modified, enforces that all keys are
+ strings.
+
+
+
+
+ Initializes a new instance of the class.
+
+
+
+
+ Initializes a new instance of the class.
+
+ The initial capacity.
+
+
+
+ Initializes a new instance of the class.
+
+ The initial capacity.
+ The load factor.
+
+
+
+ Gets the keys.
+
+
+
+
+
+ Adds the name-value pairs in the given to the .
+
+ All keys must be s, and all values must be serializable.
+
+
+
+
+
+ Adds the given value to the 's
+ data map.
+
+
+
+
+ Adds the given value to the 's
+ data map.
+
+
+
+
+ Adds the given value to the 's
+ data map.
+
+
+
+
+ Adds the given value to the 's
+ data map.
+
+
+
+
+ Adds the given value to the 's
+ data map.
+
+
+
+
+ Adds the given value to the 's
+ data map.
+
+
+
+
+ Adds the given value to the 's
+ data map.
+
+
+
+
+ Adds the given serializable object value to the .
+
+
+
+
+ Retrieve the identified value from the .
+
+
+
+
+ Retrieve the identified value from the .
+
+
+
+
+ Retrieve the identified value from the .
+
+
+
+
+ Retrieve the identified value from the .
+
+
+
+
+ Retrieve the identified value from the .
+
+
+
+
+ Retrieve the identified value from the .
+
+
+
+
+ Retrieve the identified value from the .
+
+
+
+
+ Object representing a job or trigger key.
+
+ James House
+
+
+
+ Construct a new TriggerStatus with the status name and nextFireTime.
+
+ The trigger's status
+ The next UTC time the trigger will fire
+
+
+
+ Return the string representation of the TriggerStatus.
+
+
+
+
+ Gets or sets the job key.
+
+ The job key.
+
+
+
+ Gets or sets the key.
+
+ The key.
+
+
+
+ Get the name portion of the key.
+
+ the name
+
+
+
+ Get the group portion of the key.
+
+ the group
+
+
+
+ Wraps a .
+
+ Chris Bonham
+
+
+
+ Gets or sets the name of the calendar.
+
+ The name of the calendar.
+
+
+
+ Gets or sets the name of the class.
+
+ The name of the class.
+
+
+
+ Gets or sets the calendar.
+
+ The calendar.
+
+
+
+ Gets or sets a description for the instance - may be
+ useful for remembering/displaying the purpose of the calendar, though
+ the description has no meaning to Quartz.
+
+
+
+
+
+ Set a new base calendar or remove the existing one.
+
+
+
+
+
+ Wraps a and .
+
+ Chris Bonham
+ James House
+
+
+
+ Adds a trigger to this bundle.
+
+ The trigger.
+
+
+
+ Removes the given trigger from this bundle.
+
+ The trigger.
+
+
+
+ Gets or sets the job detail.
+
+ The job detail.
+
+
+
+ Gets or sets the triggers associated with this bundle.
+
+ The triggers.
+
+
+
+ Gets the name of the bundle.
+
+ The name.
+
+
+
+ Gets the full name.
+
+ The full name.
+
+
+
+ Gets a value indicating whether this is valid.
+
+ true if valid; otherwise, false.
+
+
+
+ Parses an XML file that declares Jobs and their schedules (Triggers).
+
+
+
+ The xml document must conform to the format defined in
+ "job_scheduling_data.xsd"
+
+
+
+ After creating an instance of this class, you should call one of the
+ functions, after which you may call the
+ function to get a handle to the defined Jobs and Triggers, which can then be
+ scheduled with the . Alternatively, you could call
+ the function to do all of this
+ in one step.
+
+
+
+ The same instance can be used again and again, with the list of defined Jobs
+ being cleared each time you call a method,
+ however a single instance is not thread-safe.
+
+
+ Chris Bonham
+ James House
+ Marko Lahma (.NET)
+
+
+
+ XML Schema dateTime datatype format.
+
+ See
+ http://www.w3.org/TR/2001/REC-xmlschema-2-20010502/#dateTime
+
+
+
+
+
+ Constructor for JobSchedulingDataProcessor.
+
+
+
+
+ Constructor for JobSchedulingDataProcessor.
+
+ whether or not to validate XML.
+ whether or not to validate XML schema.
+
+
+
+ Process the xml file in the default location (a file named
+ "quartz_jobs.xml" in the current working directory).
+
+
+
+
+ Process the xml file named .
+
+ meta data file name.
+
+
+
+ Process the xmlfile named with the given system
+ ID.
+
+ Name of the file.
+ The system id.
+
+
+
+ Process the xmlfile named with the given system
+ ID.
+
+ The stream.
+ The system id.
+
+
+
+ Process the xml file in the default location, and schedule all of the
+ jobs defined within it.
+
+
+
+
+ Process the xml file in the given location, and schedule all of the
+ jobs defined within it.
+
+ meta data file name.
+ The scheduler.
+ if set to true overwrite existing jobs.
+
+
+
+ Process the xml file in the given location, and schedule all of the
+ jobs defined within it.
+
+ Name of the file.
+ The system id.
+ The sched.
+ if set to true [over write existing jobs].
+
+
+
+ Add the Jobs and Triggers defined in the given map of
+ s to the given scheduler.
+
+ The job bundles.
+ The sched.
+ if set to true [over write existing jobs].
+
+
+
+ Returns a for the job name.
+
+ The name.
+
+ a for the job name.
+
+
+
+
+ Returns an from the fileName as a resource.
+
+ Name of the file.
+
+ an from the fileName as a resource.
+
+
+
+
+ Schedules a given job and trigger (both wrapped by a ).
+
+ job wrapper.
+
+ if the Job or Trigger cannot be added to the Scheduler, or
+ there is an internal Scheduler error.
+
+
+
+
+ Schedules a given job and trigger (both wrapped by a ).
+
+ The job.
+ The sched.
+ if set to true [local over write existing jobs].
+
+ if the Job or Trigger cannot be added to the Scheduler, or
+ there is an internal Scheduler error.
+
+
+
+
+ Adds a scheduled job.
+
+ The job.
+
+
+
+ Adds a calendar.
+
+ The sched.
+ calendar bundle.
+ SchedulerException if the Calendar cannot be added to the Scheduler, or
+
+
+
+ Adds a detected validation exception.
+
+ The exception.
+
+
+
+ Resets the the number of detected validation exceptions.
+
+
+
+
+ Throws a ValidationException if the number of validationExceptions
+ detected is greater than zero.
+
+
+ DTD validation exception.
+
+
+
+
+ Gets or sets whether to overwrite existing jobs.
+
+
+
+
+ Gets the log.
+
+ The log.
+
+
+
+ Returns a of scheduled jobs.
+
+ The key is the job name and the value is a
+ containing the and .
+
+
+ a of scheduled jobs.
+
+
+
+
+ Helper class to map constant names to their values.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Reports JobSchedulingDataProcessor validation exceptions.
+
+ Chris Bonham
+
+
+
+ Constructor for ValidationException.
+
+
+
+
+ Constructor for ValidationException.
+
+ exception message.
+
+
+
+ Constructor for ValidationException.
+
+ collection of validation exceptions.
+
+
+
+ Gets the validation exceptions.
+
+ The validation exceptions.
+
+
+
+ Returns the detail message string.
+
+
+
+
+ An exception that is thrown to indicate that there has been a critical
+ failure within the scheduler's core services (such as loss of database
+ connectivity).
+
+ James House
+
+
+
+ Create a with the given message.
+
+
+
+
+ Initializes a new instance of the class.
+
+ The that holds the serialized object data about the exception being thrown.
+ The that contains contextual information about the source or destination.
+ The class name is null or is zero (0).
+ The info parameter is null.
+
+
+
+ Provides a parser and evaluator for unix-like cron expressions. Cron
+ expressions provide the ability to specify complex time combinations such as
+ "At 8:00am every Monday through Friday" or "At 1:30am every
+ last Friday of the month".
+
+
+
+ Cron expressions are comprised of 6 required fields and one optional field
+ separated by white space. The fields respectively are described as follows:
+
+
+
+ | Field Name |
+ |
+ Allowed Values |
+ |
+ Allowed Special Characters |
+
+
+ | Seconds |
+ |
+ 0-59 |
+ |
+ , - /// / |
+
+
+ | Minutes |
+ |
+ 0-59 |
+ |
+ , - /// / |
+
+
+ | Hours |
+ |
+ 0-23 |
+ |
+ , - /// / |
+
+
+ | Day-of-month |
+ |
+ 1-31 |
+ |
+ , - /// ? / L W C |
+
+
+ | Month |
+ |
+ 1-12 or JAN-DEC |
+ |
+ , - /// / |
+
+
+ | Day-of-Week |
+ |
+ 1-7 or SUN-SAT |
+ |
+ , - /// ? / L # |
+
+
+ | Year (Optional) |
+ |
+ empty, 1970-2099 |
+ |
+ , - /// / |
+
+
+
+ The '*' character is used to specify all values. For example, "*"
+ in the minute field means "every minute".
+
+
+ The '?' character is allowed for the day-of-month and day-of-week fields. It
+ is used to specify 'no specific value'. This is useful when you need to
+ specify something in one of the two fields, but not the other.
+
+
+ The '-' character is used to specify ranges For example "10-12" in
+ the hour field means "the hours 10, 11 and 12".
+
+
+ The ',' character is used to specify additional values. For example
+ "MON,WED,FRI" in the day-of-week field means "the days Monday,
+ Wednesday, and Friday".
+
+
+ The '/' character is used to specify increments. For example "0/15"
+ in the seconds field means "the seconds 0, 15, 30, and 45". And
+ "5/15" in the seconds field means "the seconds 5, 20, 35, and
+ 50". Specifying '*' before the '/' is equivalent to specifying 0 is
+ the value to start with. Essentially, for each field in the expression, there
+ is a set of numbers that can be turned on or off. For seconds and minutes,
+ the numbers range from 0 to 59. For hours 0 to 23, for days of the month 0 to
+ 31, and for months 1 to 12. The "/" character simply helps you turn
+ on every "nth" value in the given set. Thus "7/6" in the
+ month field only turns on month "7", it does NOT mean every 6th
+ month, please note that subtlety.
+
+
+ The 'L' character is allowed for the day-of-month and day-of-week fields.
+ This character is short-hand for "last", but it has different
+ meaning in each of the two fields. For example, the value "L" in
+ the day-of-month field means "the last day of the month" - day 31
+ for January, day 28 for February on non-leap years. If used in the
+ day-of-week field by itself, it simply means "7" or
+ "SAT". But if used in the day-of-week field after another value, it
+ means "the last xxx day of the month" - for example "6L"
+ means "the last friday of the month". When using the 'L' option, it
+ is important not to specify lists, or ranges of values, as you'll get
+ confusing results.
+
+
+ The 'W' character is allowed for the day-of-month field. This character
+ is used to specify the weekday (Monday-Friday) nearest the given day. As an
+ example, if you were to specify "15W" as the value for the
+ day-of-month field, the meaning is: "the nearest weekday to the 15th of
+ the month". So if the 15th is a Saturday, the trigger will fire on
+ Friday the 14th. If the 15th is a Sunday, the trigger will fire on Monday the
+ 16th. If the 15th is a Tuesday, then it will fire on Tuesday the 15th.
+ However if you specify "1W" as the value for day-of-month, and the
+ 1st is a Saturday, the trigger will fire on Monday the 3rd, as it will not
+ 'jump' over the boundary of a month's days. The 'W' character can only be
+ specified when the day-of-month is a single day, not a range or list of days.
+
+
+ The 'L' and 'W' characters can also be combined for the day-of-month
+ expression to yield 'LW', which translates to "last weekday of the
+ month".
+
+
+ The '#' character is allowed for the day-of-week field. This character is
+ used to specify "the nth" XXX day of the month. For example, the
+ value of "6#3" in the day-of-week field means the third Friday of
+ the month (day 6 = Friday and "#3" = the 3rd one in the month).
+ Other examples: "2#1" = the first Monday of the month and
+ "4#5" = the fifth Wednesday of the month. Note that if you specify
+ "#5" and there is not 5 of the given day-of-week in the month, then
+ no firing will occur that month. If the '#' character is used, there can
+ only be one expression in the day-of-week field ("3#1,6#3" is
+ not valid, since there are two expressions).
+
+
+
+
+
+ The legal characters and the names of months and days of the week are not
+ case sensitive.
+
+
+ NOTES:
+
+ - Support for specifying both a day-of-week and a day-of-month value is
+ not complete (you'll need to use the '?' character in one of these fields).
+
+ - Overflowing ranges is supported - that is, having a larger number on
+ the left hand side than the right. You might do 22-2 to catch 10 o'clock
+ at night until 2 o'clock in the morning, or you might have NOV-FEB. It is
+ very important to note that overuse of overflowing ranges creates ranges
+ that don't make sense and no effort has been made to determine which
+ interpretation CronExpression chooses. An example would be
+ "0 0 14-6 ? * FRI-MON".
+
+
+
+ Sharada Jambula
+ James House
+ Contributions from Mads Henderson
+ Refactoring from CronTrigger to CronExpression by Aaron Craven
+
+
+
+ Field specification for second.
+
+
+
+
+ Field specification for minute.
+
+
+
+
+ Field specification for hour.
+
+
+
+
+ Field specification for day of month.
+
+
+
+
+ Field specification for month.
+
+
+
+
+ Field specification for day of week.
+
+
+
+
+ Field specification for year.
+
+
+
+
+ Field specification for all wildcard value '*'.
+
+
+
+
+ Field specification for not specified value '?'.
+
+
+
+
+ Field specification for wildcard '*'.
+
+
+
+
+ Field specification for no specification at all '?'.
+
+
+
+
+ Seconds.
+
+
+
+
+ minutes.
+
+
+
+
+ Hours.
+
+
+
+
+ Days of month.
+
+
+
+
+ Months.
+
+
+
+
+ Days of week.
+
+
+
+
+ Years.
+
+
+
+
+ Last day of week.
+
+
+
+
+ Nth day of week.
+
+
+
+
+ Last day of month.
+
+
+
+
+ Nearest weekday.
+
+
+
+
+ Calendar day of week.
+
+
+
+
+ Calendar day of month.
+
+
+
+
+ Expression parsed.
+
+
+
+
+ Constructs a new based on the specified
+ parameter.
+
+
+ String representation of the cron expression the new object should represent
+
+
+
+
+
+ Indicates whether the given date satisfies the cron expression.
+
+
+ Note that milliseconds are ignored, so two Dates falling on different milliseconds
+ of the same second will always have the same result here.
+
+ The date to evaluate.
+ a boolean indicating whether the given date satisfies the cron expression
+
+
+
+ Returns the next date/time after the given date/time which
+ satisfies the cron expression.
+
+ the date/time at which to begin the search for the next valid date/time
+ the next valid date/time
+
+
+
+ Returns the next date/time after the given date/time which does
+ not satisfy the expression.
+
+ the date/time at which to begin the search for the next invalid date/time
+ the next valid date/time
+
+
+
+ Returns the string representation of the
+
+ The string representation of the
+
+
+
+ Indicates whether the specified cron expression can be parsed into a
+ valid cron expression
+
+ the expression to evaluate
+ a boolean indicating whether the given expression is a valid cron
+ expression
+
+
+
+ Builds the expression.
+
+ The expression.
+
+
+
+ Stores the expression values.
+
+ The position.
+ The string to traverse.
+ The type of value.
+
+
+
+
+ Checks the next value.
+
+ The position.
+ The string to check.
+ The value.
+ The type to search.
+
+
+
+
+ Gets the expression summary.
+
+
+
+
+
+ Gets the expression set summary.
+
+ The data.
+
+
+
+
+ Skips the white space.
+
+ The i.
+ The s.
+
+
+
+
+ Finds the next white space.
+
+ The i.
+ The s.
+
+
+
+
+ Adds to set.
+
+ The val.
+ The end.
+ The incr.
+ The type.
+
+
+
+ Gets the set of given type.
+
+ The type of set to get.
+
+
+
+
+ Gets the value.
+
+ The v.
+ The s.
+ The i.
+
+
+
+
+ Gets the numeric value from string.
+
+ The string to parse from.
+ The i.
+
+
+
+
+ Gets the month number.
+
+ The string to map with.
+
+
+
+
+ Gets the day of week number.
+
+ The s.
+
+
+
+
+ Gets the time from given time parts.
+
+ The seconds.
+ The minutes.
+ The hours.
+ The day of month.
+ The month.
+
+
+
+
+ Gets the next fire time after the given time.
+
+ The UTC time to start searching from.
+
+
+
+
+ Creates the date time without milliseconds.
+
+ The time.
+
+
+
+
+ Advance the calendar to the particular hour paying particular attention
+ to daylight saving problems.
+
+ The date.
+ The hour.
+
+
+
+
+ Gets the time before.
+
+ The end time.
+
+
+
+
+ NOT YET IMPLEMENTED: Returns the final time that the
+ will match.
+
+
+
+
+
+ Determines whether given year is a leap year.
+
+ The year.
+
+ true if the specified year is a leap year; otherwise, false.
+
+
+
+
+ Gets the last day of month.
+
+ The month num.
+ The year.
+
+
+
+
+ Creates a new object that is a copy of the current instance.
+
+
+ A new object that is a copy of this instance.
+
+
+
+
+ Sets or gets the time zone for which the of this
+ will be resolved.
+
+
+
+
+ Gets the cron expression string.
+
+ The cron expression string.
+
+
+
+ Helper class for cron expression handling.
+
+
+
+
+ The value.
+
+
+
+
+ The position.
+
+
+
+
+ A concrete that is used to fire a
+ at given moments in time, defined with Unix 'cron-like' definitions.
+
+
+
+ For those unfamiliar with "cron", this means being able to create a firing
+ schedule such as: "At 8:00am every Monday through Friday" or "At 1:30am
+ every last Friday of the month".
+
+
+
+ The format of a "Cron-Expression" string is documented on the
+ class.
+
+
+
+ Here are some full examples:
+
+
+ | Expression |
+ |
+ Meaning |
+
+
+ | "0 0 12 * * ?"" /> |
+ |
+ Fire at 12pm (noon) every day" /> |
+
+
+ | "0 15 10 ? * *"" /> |
+ |
+ Fire at 10:15am every day" /> |
+
+
+ | "0 15 10 * * ?"" /> |
+ |
+ Fire at 10:15am every day" /> |
+
+
+ | "0 15 10 * * ? *"" /> |
+ |
+ Fire at 10:15am every day" /> |
+
+
+ | "0 15 10 * * ? 2005"" /> |
+ |
+ Fire at 10:15am every day during the year 2005" />
+ |
+
+
+ | "0 * 14 * * ?"" /> |
+ |
+ Fire every minute starting at 2pm and ending at 2:59pm, every day" />
+ |
+
+
+ | "0 0/5 14 * * ?"" /> |
+ |
+ Fire every 5 minutes starting at 2pm and ending at 2:55pm, every day" />
+ |
+
+
+ | "0 0/5 14,18 * * ?"" /> |
+ |
+ Fire every 5 minutes starting at 2pm and ending at 2:55pm, AND fire every 5 minutes starting at 6pm and ending at 6:55pm, every day" />
+ |
+
+
+ | "0 0-5 14 * * ?"" /> |
+ |
+ Fire every minute starting at 2pm and ending at 2:05pm, every day" />
+ |
+
+
+ | "0 10,44 14 ? 3 WED"" /> |
+ |
+ Fire at 2:10pm and at 2:44pm every Wednesday in the month of March." />
+ |
+
+
+ | "0 15 10 ? * MON-FRI"" /> |
+ |
+ Fire at 10:15am every Monday, Tuesday, Wednesday, Thursday and Friday" />
+ |
+
+
+ | "0 15 10 15 * ?"" /> |
+ |
+ Fire at 10:15am on the 15th day of every month" />
+ |
+
+
+ | "0 15 10 L * ?"" /> |
+ |
+ Fire at 10:15am on the last day of every month" />
+ |
+
+
+ | "0 15 10 ? * 6L"" /> |
+ |
+ Fire at 10:15am on the last Friday of every month" />
+ |
+
+
+ | "0 15 10 ? * 6L"" /> |
+ |
+ Fire at 10:15am on the last Friday of every month" />
+ |
+
+
+ | "0 15 10 ? * 6L 2002-2005"" /> |
+ |
+ Fire at 10:15am on every last friday of every month during the years 2002, 2003, 2004 and 2005" />
+ |
+
+
+ | "0 15 10 ? * 6#3"" /> |
+ |
+ Fire at 10:15am on the third Friday of every month" />
+ |
+
+
+
+
+
+ Pay attention to the effects of '?' and '*' in the day-of-week and
+ day-of-month fields!
+
+
+
+ NOTES:
+
+ - Support for specifying both a day-of-week and a day-of-month value is
+ not complete (you'll need to use the '?' character in on of these fields).
+
+ - Be careful when setting fire times between mid-night and 1:00 AM -
+ "daylight savings" can cause a skip or a repeat depending on whether the
+ time moves back or jumps forward.
+
+
+
+
+
+
+ Sharada Jambula
+ James House
+ Contributions from Mads Henderson
+
+
+
+ The base abstract class to be extended by all triggers.
+
+
+
+ s have a name and group associated with them, which
+ should uniquely identify them within a single .
+
+
+
+ s are the 'mechanism' by which s
+ are scheduled. Many s can point to the same ,
+ but a single can only point to one .
+
+
+
+ Triggers can 'send' parameters/data to s by placing contents
+ into the on the .
+
+
+
+
+
+
+
+
+ James House
+ Sharada Jambula
+
+
+
+ The default value for priority.
+
+
+
+
+ Remove all s from the .
+
+
+
+
+ Create a with no specified name, group, or .
+
+
+ Note that the , and
+ the and properties
+ must be set before the can be placed into a
+ .
+
+
+
+
+ Create a with the given name, and default group.
+
+
+ Note that the and
+ properties must be set before the
+ can be placed into a .
+
+ The name.
+
+
+
+ Create a with the given name, and group.
+
+
+ Note that the and
+ properties must be set before the
+ can be placed into a .
+
+ The name.
+ if , Scheduler.DefaultGroup will be used.
+
+
+
+ Create a with the given name, and group.
+
+ The name.
+ if , Scheduler.DefaultGroup will be used.
+ Name of the job.
+ The job group.
+ ArgumentException
+ if name is null or empty, or the group is an empty string.
+
+
+
+
+ Add the specified name of a to
+ the end of the 's list of listeners.
+
+ Name of the listener.
+
+
+
+ Remove the specified name of a
+ from the 's list of listeners.
+
+ true if the given name was found in the list, and removed
+
+
+
+
+ This method should not be used by the Quartz client.
+
+ Called when the has decided to 'fire'
+ the trigger (Execute the associated ), in order to
+ give the a chance to update itself for its next
+ triggering (if any).
+
+
+
+
+
+
+
+
+ This method should not be used by the Quartz client.
+
+
+
+ Called by the scheduler at the time a is first
+ added to the scheduler, in order to have the
+ compute its first fire time, based on any associated calendar.
+
+
+
+ After this method has been called,
+ should return a valid answer.
+
+
+
+ The first time at which the will be fired
+ by the scheduler, which is also the same value
+ will return (until after the first firing of the ).
+
+
+
+
+ This method should not be used by the Quartz client.
+
+
+ Called after the has executed the
+ associated with the
+ in order to get the final instruction code from the trigger.
+
+
+ is the that was used by the
+ 's method.
+ is the thrown by the
+ , if any (may be null).
+
+
+ One of the members.
+
+
+
+
+
+
+
+
+
+ Used by the to determine whether or not
+ it is possible for this to fire again.
+
+ If the returned value is then the
+ may remove the from the .
+
+
+
+
+
+ Returns the next time at which the is scheduled to fire. If
+ the trigger will not fire again, will be returned. Note that
+ the time returned can possibly be in the past, if the time that was computed
+ for the trigger to next fire has already arrived, but the scheduler has not yet
+ been able to fire the trigger (which would likely be due to lack of resources
+ e.g. threads).
+
+
+ The value returned is not guaranteed to be valid until after the
+ has been added to the scheduler.
+
+
+
+
+
+
+ Returns the previous time at which the fired.
+ If the trigger has not yet fired, will be returned.
+
+
+
+
+ Returns the next time at which the will fire,
+ after the given time. If the trigger will not fire after the given time,
+ will be returned.
+
+
+
+
+ Validates the misfire instruction.
+
+ The misfire instruction.
+
+
+
+
+ This method should not be used by the Quartz client.
+
+ To be implemented by the concrete classes that extend this class.
+
+
+ The implementation should update the 's state
+ based on the MISFIRE_INSTRUCTION_XXX that was selected when the
+ was created.
+
+
+
+
+
+ This method should not be used by the Quartz client.
+
+ The implementation should update the 's state
+ based on the given new version of the associated
+ (the state should be updated so that it's next fire time is appropriate
+ given the Calendar's new settings).
+
+
+
+
+
+
+
+ Validates whether the properties of the are
+ valid for submission into a .
+
+
+
+
+ Return a simple string representation of this object.
+
+
+
+
+ Compare the next fire time of this to that of
+ another.
+
+
+
+
+ Determines whether the specified is equal to the current .
+
+ The to compare with the current .
+
+ true if the specified is equal to the current ; otherwise, false.
+
+
+
+
+ Serves as a hash function for a particular type. is suitable for use in hashing algorithms and data structures like a hash table.
+
+
+ A hash code for the current .
+
+
+
+
+ Creates a new object that is a copy of the current instance.
+
+
+ A new object that is a copy of this instance.
+
+
+
+
+ Get or sets the name of this .
+
+ If name is null or empty.
+
+
+
+ Get the group of this . If , Scheduler.DefaultGroup will be used.
+
+
+ if group is an empty string.
+
+
+
+
+ Get or set the name of the associated .
+
+
+ if jobName is null or empty.
+
+
+
+
+ Gets or sets the name of the associated 's
+ group. If set with , Scheduler.DefaultGroup will be used.
+
+ ArgumentException
+ if group is an empty string.
+
+
+
+
+ Returns the 'full name' of the in the format
+ "group.name".
+
+
+
+
+ Gets the key.
+
+ The key.
+
+
+
+ Returns the 'full name' of the that the
+ points to, in the format "group.name".
+
+
+
+
+ Get or set the description given to the instance by
+ its creator (if any).
+
+
+
+
+ Get or set the with the given name with
+ this Trigger. Use when setting to dis-associate a Calendar.
+
+
+
+
+ Get or set the that is associated with the
+ .
+
+ Changes made to this map during job execution are not re-persisted, and
+ in fact typically result in an illegal state.
+
+
+
+
+
+ Whether or not the should be persisted in the
+ for re-use after program restarts.
+
+ If not explicitly set, the default value is .
+
+
+
+
+
+ Returns an array of s containing the names of all
+ s assigned to the ,
+ in the order in which they should be notified.
+
+
+
+
+ Returns the last UTC time at which the will fire, if
+ the Trigger will repeat indefinitely, null will be returned.
+
+ Note that the return time *may* be in the past.
+
+
+
+
+
+ Get or set the instruction the should be given for
+ handling misfire situations for this - the
+ concrete type that you are using will have
+ defined a set of additional MISFIRE_INSTRUCTION_XXX
+ constants that may be passed to this method.
+
+ If not explicitly set, the default value is .
+
+
+
+
+
+
+
+
+
+ This method should not be used by the Quartz client.
+
+ Usable by
+ implementations, in order to facilitate 'recognizing' instances of fired
+ s as their jobs complete execution.
+
+
+
+
+
+ Returns the date/time on which the trigger must stop firing. This
+ defines the final boundary for trigger firings 舒 the trigger will
+ not fire after to this date and time. If this value is null, no end time
+ boundary is assumed, and the trigger can continue indefinitely.
+
+ Sets the date/time on which the trigger must stop firing. This defines
+ the final boundary for trigger firings 舒 the trigger will not
+ fire after to this date and time. If this value is null, no end time
+ boundary is assumed, and the trigger can continue indefinitely.
+
+
+
+
+ The time at which the trigger's scheduling should start. May or may not
+ be the first actual fire time of the trigger, depending upon the type of
+ trigger and the settings of the other properties of the trigger. However
+ the first actual first time will not be before this date.
+
+
+ Setting a value in the past may cause a new trigger to compute a first
+ fire time that is in the past, which may cause an immediate misfire
+ of the trigger.
+
+
+
+
+ Tells whether this Trigger instance can handle events
+ in millisecond precision.
+
+
+
+
+ The priority of a acts as a tie breaker such that if
+ two s have the same scheduled fire time, then Quartz
+ will do its best to give the one with the higher priority first access
+ to a worker thread.
+
+
+ If not explicitly set, the default value is 5.
+
+
+
+
+
+
+ Gets a value indicating whether this instance has additional properties
+ that should be considered when for example saving to database.
+
+
+ If trigger implementation has additional properties that need to be saved
+ with base properties you need to make your class override this property with value true.
+ Returning true will effectively mean that ADOJobStore needs to serialize
+ this trigger instance to make sure additional properties are also saved.
+
+
+ true if this instance has additional properties; otherwise, false.
+
+
+
+
+ Create a with no settings.
+
+
+ The start-time will also be set to the current time, and the time zone
+ will be set the the system's default time zone.
+
+
+
+
+ Create a with the given name and default group.
+
+
+ The start-time will also be set to the current time, and the time zone
+ will be set the the system's default time zone.
+
+ The name.
+
+
+
+ Create a with the given name and group.
+
+
+ The start-time will also be set to the current time, and the time zone
+ will be set the the system's default time zone.
+
+ The name.
+ The group.
+
+
+
+ Create a with the given name, group and
+ expression.
+
+
+ The start-time will also be set to the current time, and the time zone
+ will be set the the system's default time zone.
+
+ The name.
+ The group.
+ The cron expression.
+
+
+
+ Create a with the given name and group, and
+ associated with the identified .
+
+
+ The start-time will also be set to the current time, and the time zone
+ will be set the the system's default time zone.
+
+ The name.
+ The group.
+ Name of the job.
+ The job group.
+
+
+
+ Create a with the given name and group,
+ associated with the identified ,
+ and with the given "cron" expression.
+
+
+ The start-time will also be set to the current time, and the time zone
+ will be set the the system's default time zone.
+
+ The name.
+ The group.
+ Name of the job.
+ The job group.
+ The cron expression.
+
+
+
+ Create a with the given name and group,
+ associated with the identified ,
+ and with the given "cron" expression resolved with respect to the .
+
+ The name.
+ The group.
+ Name of the job.
+ The job group.
+ The cron expression.
+ The time zone.
+
+
+
+ Create a that will occur at the given time,
+ until the given end time.
+
+ If null, the start-time will also be set to the current time, the time
+ zone will be set the the system's default.
+
+
+ The name.
+ The group.
+ Name of the job.
+ The job group.
+ The start time.
+ The end time.
+ The cron expression.
+
+
+
+ Create a with fire time dictated by the
+ resolved with respect to the specified
+ occuring from the until
+ the given .
+
+ The name.
+ The group.
+ Name of the job.
+ The job group.
+ The start time.
+ The end time.
+
+
+
+ Clones this instance.
+
+
+
+
+
+ Returns the next time at which the is scheduled to fire. If
+ the trigger will not fire again, will be returned. Note that
+ the time returned can possibly be in the past, if the time that was computed
+ for the trigger to next fire has already arrived, but the scheduler has not yet
+ been able to fire the trigger (which would likely be due to lack of resources
+ e.g. threads).
+
+
+ The value returned is not guaranteed to be valid until after the
+ has been added to the scheduler.
+
+
+
+
+
+
+ Returns the previous time at which the fired.
+ If the trigger has not yet fired, will be returned.
+
+
+
+
+
+ Sets the next fire time.
+
+ This method should not be invoked by client code.
+
+
+ The fire time.
+
+
+
+ Sets the previous fire time.
+
+ This method should not be invoked by client code.
+
+
+ The fire time.
+
+
+
+ Returns the next time at which the will fire,
+ after the given time. If the trigger will not fire after the given time,
+ will be returned.
+
+
+
+
+
+
+ Used by the to determine whether or not
+ it is possible for this to fire again.
+
+ If the returned value is then the
+ may remove the from the .
+
+
+
+
+
+
+ Validates the misfire instruction.
+
+ The misfire instruction.
+
+
+
+
+ This method should not be used by the Quartz client.
+
+ To be implemented by the concrete classes that extend this class.
+
+
+ The implementation should update the 's state
+ based on the MISFIRE_INSTRUCTION_XXX that was selected when the
+ was created.
+
+
+
+
+
+
+
+ Determines whether the date and (optionally) time of the given Calendar
+ instance falls on a scheduled fire-time of this trigger.
+
+
+
+ Equivalent to calling .
+
+
+ The date to compare.
+
+
+
+
+ Determines whether the date and (optionally) time of the given Calendar
+ instance falls on a scheduled fire-time of this trigger.
+
+ Note that the value returned is NOT validated against the related
+ ICalendar (if any).
+
+
+ The date to compare
+ If set to true, the method will only determine if the
+ trigger will fire during the day represented by the given Calendar
+ (hours, minutes and seconds will be ignored).
+
+
+
+
+ Called when the has decided to 'fire'
+ the trigger (Execute the associated ), in order to
+ give the a chance to update itself for its next
+ triggering (if any).
+
+
+
+
+
+
+ Updates the trigger with new calendar.
+
+ The calendar to update with.
+ The misfire threshold.
+
+
+
+ Called by the scheduler at the time a is first
+ added to the scheduler, in order to have the
+ compute its first fire time, based on any associated calendar.
+
+ After this method has been called,
+ should return a valid answer.
+
+
+
+
+ the first time at which the will be fired
+ by the scheduler, which is also the same value
+ will return (until after the first firing of the ).
+
+
+
+
+ Gets the expression summary.
+
+
+
+
+
+ Gets the next time to fire after the given time.
+
+ The time to compute from.
+
+
+
+
+ NOT YET IMPLEMENTED: Returns the time before the given time
+ that this will fire.
+
+ The date.
+
+
+
+
+ Gets or sets the cron expression string.
+
+ The cron expression string.
+
+
+
+ Set the CronExpression to the given one. The TimeZone on the passed-in
+ CronExpression over-rides any that was already set on the Trigger.
+
+ The cron expression.
+
+
+
+ Returns the date/time on which the trigger may begin firing. This
+ defines the initial boundary for trigger firings the trigger
+ will not fire prior to this date and time.
+
+
+
+
+
+ Get or sets the time at which the CronTrigger should quit
+ repeating - even if repeastCount isn't yet satisfied.
+
+
+
+
+ Sets the time zone for which the of this
+ will be resolved.
+
+
+ If is set after this
+ property, the TimeZone setting on the CronExpression will "win". However
+ if is set after this property, the
+ time zone applied by this method will remain in effect, since the
+ string cron expression does not carry a time zone!
+
+ The time zone.
+
+
+
+ Returns the last UTC time at which the will fire, if
+ the Trigger will repeat indefinitely, null will be returned.
+
+ Note that the return time *may* be in the past.
+
+
+
+
+
+ Tells whether this Trigger instance can handle events
+ in millisecond precision.
+
+
+
+
+
+ The interface to be implemented by s that provide a
+ mechanism for having their execution interrupted. It is NOT a requirment
+ for jobs to implement this interface - in fact, for most people, none of
+ their jobs will.
+
+
+
+ The means of actually interrupting the Job must be implemented within the
+ itself (the method of this
+ interface is simply a means for the scheduler to inform the
+ that a request has been made for it to be interrupted). The mechanism that
+ your jobs use to interrupt themselves might vary between implementations.
+ However the principle idea in any implementation should be to have the
+ body of the job's periodically check some flag to
+ see if an interruption has been requested, and if the flag is set, somehow
+ abort the performance of the rest of the job's work. An example of
+ interrupting a job can be found in the java source for the class
+ Quartz.Examples.Example7.DumbInterruptableJob. It is legal to use
+ some combination of and
+ synchronization within and
+ in order to have the method block until the
+ signals that it has noticed the set flag.
+
+
+
+ If the Job performs some form of blocking I/O or similar functions, you may
+ want to consider having the method store a
+ reference to the calling as a member variable. Then the
+ impplementation of this interfaces method can call
+ on that Thread. Before attempting this, make
+ sure that you fully understand what
+ does and doesn't do. Also make sure that you clear the Job's member
+ reference to the Thread when the Execute(..) method exits (preferrably in a
+ block.
+
+
+
+
+ James House
+
+
+
+ Called by the when a user
+ interrupts the .
+
+ void (nothing) if job interrupt is successful.
+
+
+
+ Scheduler constants.
+
+
+
+
+ A (possibly) usefull constant that can be used for specifying the group
+ that and instances belong to.
+
+
+
+
+ A constant group name used internally by the
+ scheduler - clients should not use the value of this constant
+ ("MANUAL_TRIGGER") for thename of a 's group.
+
+
+
+
+ A constant group name used internally by the
+ scheduler - clients should not use the value of this constant
+ ("RECOVERING_JOBS") for thename of a 's group.
+
+
+
+
+ A constant group name used internally by the
+ scheduler - clients should not use the value of this constant
+ ("FAILED_OVER_JOBS") for thename of a 's group.
+
+
+
+
+ A constant key that can be used to retrieve the
+ name of the original from a recovery trigger's
+ data map in the case of a job recovering after a failed scheduler
+ instance.
+
+
+
+
+
+ A constant key that can be used to retrieve the
+ group of the original from a recovery trigger's
+ data map in the case of a job recovering after a failed scheduler
+ instance.
+
+
+
+
+
+ A constant key that can be used to retrieve the
+ scheduled fire time of the original from a recovery
+ trigger's data map in the case of a job recovering after a failed scheduler
+ instance.
+
+
+
+
+
+ Holds state information for instances.
+
+
+ instances are stored once when the
+ is added to a scheduler. They are also re-persisted after every execution of
+ instances.
+
+ instances can also be stored with a
+ . This can be useful in the case where you have a Job
+ that is stored in the scheduler for regular/repeated use by multiple
+ Triggers, yet with each independent triggering, you want to supply the
+ Job with different data inputs.
+
+
+ The passed to a Job at execution time
+ also contains a convenience that is the result
+ of merging the contents of the trigger's JobDataMap (if any) over the
+ Job's JobDataMap (if any).
+
+
+
+
+
+
+ James House
+
+
+
+ Create an empty .
+
+
+
+
+ Create a with the given data.
+
+
+
+
+ Adds the given value as a string version to the
+ 's data map.
+
+
+
+
+ Adds the given value as a string version to the
+ 's data map.
+
+
+
+
+ Adds the given value as a string version to the
+ 's data map.
+
+
+
+
+ Adds the given value as a string version to the
+ 's data map.
+
+
+
+
+ Adds the given value as a string version to the
+ 's data map.
+
+
+
+
+ Adds the given value as a string version to the
+ 's data map.
+
+
+
+
+ Retrieve the identified value from the .
+
+
+
+
+ Retrieve the identified value from the .
+
+
+
+
+ Retrieve the identified value from the .
+
+
+
+
+ Retrieve the identified value from the .
+
+
+
+
+ Retrieve the identified value from the
+ .
+
+
+
+
+ Retrieve the identified value from the .
+
+
+
+
+ Retrieve the identified value from the .
+
+
+
+
+ Retrieve the identified value from the .
+
+
+
+
+ Retrieve the identified value from the .
+
+
+
+
+ Retrieve the identified value from the .
+
+
+
+
+ Retrieve the identified value from the .
+
+
+
+
+ Retrieve the identified value from the .
+
+
+
+
+ Retrieve the identified value from the .
+
+
+
+
+ Retrieve the identified value from the .
+
+
+
+
+ Retrieve the identified value from the .
+
+
+
+
+ Gets the date time.
+
+ The key.
+
+
+
+
+ Gets the value behind the specified key.
+
+ The key.
+
+
+
+
+ Conveys the detail properties of a given instance.
+
+
+ Quartz does not store an actual instance of a type, but
+ instead allows you to define an instance of one, through the use of a .
+
+ s have a name and group associated with them, which
+ should uniquely identify them within a single .
+
+
+ s are the 'mechanism' by which s
+ are scheduled. Many s can point to the same ,
+ but a single can only point to one .
+
+
+
+
+
+
+ James House
+ Sharada Jambula
+
+
+
+ Create a with no specified name or group, and
+ the default settings of all the other properties.
+
+ Note that the , and
+ properties must be set before the job can be
+ placed into a .
+
+
+
+
+
+ Create a with the given name, default group, and
+ the default settings of all the other properties.
+ If , Scheduler.DefaultGroup will be used.
+
+
+ If name is null or empty, or the group is an empty string.
+
+
+
+
+ Create a with the given name, and group, and
+ the default settings of all the other properties.
+ If , Scheduler.DefaultGroup will be used.
+
+
+ If name is null or empty, or the group is an empty string.
+
+
+
+
+ Create a with the given name, and group, and
+ the given settings of all the other properties.
+
+ The name.
+ if , Scheduler.DefaultGroup will be used.
+ Type of the job.
+ if set to true, job will be volatile.
+ if set to true, job will be durable.
+ if set to true, job will request recovery.
+
+ ArgumentException if name is null or empty, or the group is an empty string.
+
+
+
+
+ Validates whether the properties of the are
+ valid for submission into a .
+
+
+
+
+ Add the specified name of a to the
+ end of the 's list of listeners.
+
+
+
+
+ Remove the specified name of a from
+ the 's list of listeners.
+
+ true if the given name was found in the list, and removed
+
+
+
+ Return a simple string representation of this object.
+
+
+
+
+ Creates a new object that is a copy of the current instance.
+
+
+ A new object that is a copy of this instance.
+
+
+
+
+ Determines whether the specified detail is equal to this instance.
+
+ The detail to examine.
+
+ true if the specified detail is equal; otherwise, false.
+
+
+
+
+ Determines whether the specified is equal to the current .
+
+ The to compare with the current .
+
+ if the specified is equal to the
+ current ; otherwise, .
+
+
+
+
+ Checks equality between given job detail and this instance.
+
+ The detail to compare this instance with.
+
+
+
+
+ Serves as a hash function for a particular type, suitable
+ for use in hashing algorithms and data structures like a hash table.
+
+
+ A hash code for the current .
+
+
+
+
+ Get or sets the name of this .
+
+
+ if name is null or empty.
+
+
+
+
+ Get or sets the group of this .
+ If , will be used.
+
+
+ If the group is an empty string.
+
+
+
+
+ Returns the 'full name' of the in the format
+ "group.name".
+
+
+
+
+ Gets the key.
+
+ The key.
+
+
+
+ Get or set the description given to the instance by its
+ creator (if any).
+
+
+ May be useful for remembering/displaying the purpose of the job, though the
+ description has no meaning to Quartz.
+
+
+
+
+ Get or sets the instance of that will be executed.
+
+
+ if jobType is null or the class is not a .
+
+
+
+
+ Get or set the that is associated with the .
+
+
+
+
+ Set whether or not the the should re-Execute
+ the if a 'recovery' or 'fail-over' situation is
+ encountered.
+
+ If not explicitly set, the default value is .
+
+
+
+
+
+
+ Whether or not the should not be persisted in the
+ for re-use after program
+ restarts.
+
+ If not explicitly set, the default value is .
+
+
+ if the should be garbage
+ collected along with the .
+
+
+
+
+ Whether or not the should remain stored after it is
+ orphaned (no s point to it).
+
+ If not explicitly set, the default value is .
+
+
+
+ if the Job should remain persisted after
+ being orphaned.
+
+
+
+
+ Whether or not the implements the interface .
+
+
+
+
+ Gets or sets an array of s containing the names of all
+ s assigned to the ,
+ in the order in which they should be notified. Setting the array
+ clears any listener names that were in the list.
+
+
+
+
+ A context bundle containing handles to various environment information, that
+ is given to a instance as it is
+ executed, and to a instance after the
+ execution completes.
+
+
+
+ The found on this object (via the
+ method) serves as a convenience -
+ it is a merge of the found on the
+ and the one found on the , with
+ the value in the latter overriding any same-named values in the former.
+ It is thus considered a 'best practice' that the Execute code of a Job
+ retrieve data from the JobDataMap found on this object NOTE: Do not
+ expect value 'set' into this JobDataMap to somehow be set back onto a
+ 's own JobDataMap.
+
+
+
+ s are also returned from the
+
+ method. These are the same instances as those past into the jobs that are
+ currently executing within the scheduler. The exception to this is when your
+ application is using Quartz remotely (i.e. via RMI) - in which case you get
+ a clone of the s, and their references to
+ the and instances have been lost (a
+ clone of the is still available - just not a handle
+ to the job instance that is running).
+
+
+
+
+
+
+
+ James House
+
+
+
+ Create a JobExcecutionContext with the given context data.
+
+
+
+
+ Increments the refire count.
+
+
+
+
+ Returns a that represents the current .
+
+
+ A that represents the current .
+
+
+
+
+ Put the specified value into the context's data map with the given key.
+ Possibly useful for sharing data between listeners and jobs.
+
+ NOTE: this data is volatile - it is lost after the job execution
+ completes, and all TriggerListeners and JobListeners have been
+ notified.
+
+
+
+
+
+
+
+
+
+ Get the value with the given key from the context's data map.
+
+
+
+
+
+
+ Get a handle to the instance that fired the
+ .
+
+
+
+
+ Get a handle to the instance that fired the
+ .
+
+
+
+
+ Get a handle to the referenced by the
+ instance that fired the .
+
+
+
+
+ If the is being re-executed because of a 'recovery'
+ situation, this method will return .
+
+
+
+
+ Gets the refire count.
+
+ The refire count.
+
+
+
+ Get the convenience of this execution context.
+
+
+
+ The found on this object serves as a convenience -
+ it is a merge of the found on the
+ and the one found on the , with
+ the value in the latter overriding any same-named values in the former.
+ It is thus considered a 'best practice' that the Execute code of a Job
+ retrieve data from the JobDataMap found on this object.
+
+
+ NOTE: Do not expect value 'set' into this JobDataMap to somehow be
+ set back onto a 's own JobDataMap.
+
+
+
+ Attempts to change the contents of this map typically result in an
+ illegal state.
+
+
+
+
+
+
+ Get the associated with the .
+
+
+
+
+ Get the instance of the that was created for this
+ execution.
+
+ Note: The Job instance is not available through remote scheduler
+ interfaces.
+
+
+
+
+
+ The actual time the trigger fired. For instance the scheduled time may
+ have been 10:00:00 but the actual fire time may have been 10:00:03 if
+ the scheduler was too busy.
+
+ Returns the fireTimeUtc.
+
+
+
+
+ The scheduled time the trigger fired for. For instance the scheduled
+ time may have been 10:00:00 but the actual fire time may have been
+ 10:00:03 if the scheduler was too busy.
+
+ Returns the scheduledFireTimeUtc.
+
+
+
+
+ Gets the previous fire time.
+
+ The previous fire time.
+
+
+
+ Gets the next fire time.
+
+ The next fire time.
+
+
+
+ Returns the result (if any) that the set before its
+ execution completed (the type of object set as the result is entirely up
+ to the particular job).
+
+
+
+ The result itself is meaningless to Quartz, but may be informative
+ to s or
+ s that are watching the job's
+ execution.
+
+
+ Set the result (if any) of the 's execution (the type of
+ object set as the result is entirely up to the particular job).
+
+
+ The result itself is meaningless to Quartz, but may be informative
+ to s or
+ s that are watching the job's
+ execution.
+
+
+
+
+
+ The amount of time the job ran for. The returned
+ value will be until the job has actually completed (or thrown an
+ exception), and is therefore generally only useful to
+ s and s.
+
+
+
+
+ An exception that can be thrown by a
+ to indicate to the Quartz that an error
+ occured while executing, and whether or not the requests
+ to be re-fired immediately (using the same ,
+ or whether it wants to be unscheduled.
+
+
+ Note that if the flag for 'refire immediately' is set, the flags for
+ unscheduling the Job are ignored.
+
+
+
+
+ James House
+
+
+
+ Create a JobExcecutionException, with the 're-fire immediately' flag set
+ to .
+
+
+
+
+ Create a JobExcecutionException, with the given cause.
+
+ The cause.
+
+
+
+ Create a JobExcecutionException, with the given message.
+
+
+
+
+ Initializes a new instance of the class.
+
+ The message.
+ The original cause.
+
+
+
+ Create a JobExcecutionException with the 're-fire immediately' flag set
+ to the given value.
+
+
+
+
+ Create a JobExcecutionException with the given underlying exception, and
+ the 're-fire immediately' flag set to the given value.
+
+
+
+
+ Create a JobExcecutionException with the given message, and underlying
+ exception, and the 're-fire immediately' flag set to the given value.
+
+
+
+
+ Initializes a new instance of the class.
+
+ The that holds the serialized object data about the exception being thrown.
+ The that contains contextual information about the source or destination.
+ The class name is null or is zero (0).
+ The info parameter is null.
+
+
+
+ Creates and returns a string representation of the current exception.
+
+
+ A string representation of the current exception.
+
+
+
+
+
+ Gets or sets a value indicating whether to unschedule firing trigger.
+
+
+ true if firing trigger should be unscheduled; otherwise, false.
+
+
+
+
+ Gets or sets a value indicating whether to unschedule all triggers.
+
+
+ true if all triggers should be unscheduled; otherwise, false.
+
+
+
+
+ Gets or sets a value indicating whether to refire immediately.
+
+ true if to refire immediately; otherwise, false.
+
+
+
+ Misfire instructions.
+
+
+
+
+ Instruction not set (yet).
+
+
+
+
+ Use smart policy.
+
+
+
+
+ Misfire policy settings for SimpleTrigger.
+
+
+
+
+ Instructs the that upon a mis-fire
+ situation, the wants to be fired
+ now by .
+
+ NOTE: This instruction should typically only be used for
+ 'one-shot' (non-repeating) Triggers. If it is used on a trigger with a
+ repeat count > 0 then it is equivalent to the instruction
+ .
+
+
+
+
+
+ Instructs the that upon a mis-fire
+ situation, the wants to be
+ re-scheduled to 'now' (even if the associated
+ excludes 'now') with the repeat count left as-is. This does obey the
+ end-time however, so if 'now' is after the
+ end-time the will not fire again.
+
+
+
+ NOTE: Use of this instruction causes the trigger to 'forget'
+ the start-time and repeat-count that it was originally setup with (this
+ is only an issue if you for some reason wanted to be able to tell what
+ the original values were at some later time).
+
+
+
+
+
+ Instructs the that upon a mis-fire
+ situation, the wants to be
+ re-scheduled to 'now' (even if the associated
+ excludes 'now') with the repeat count set to what it would be, if it had
+ not missed any firings. This does obey the end-time
+ however, so if 'now' is after the end-time the will
+ not fire again.
+
+
+ NOTE: Use of this instruction causes the trigger to 'forget'
+ the start-time and repeat-count that it was originally setup with.
+ Instead, the repeat count on the trigger will be changed to whatever
+ the remaining repeat count is (this is only an issue if you for some
+ reason wanted to be able to tell what the original values were at some
+ later time).
+
+
+
+ NOTE: This instruction could cause the
+ to go to the 'COMPLETE' state after firing 'now', if all the
+ repeat-fire-times where missed.
+
+
+
+
+
+ Instructs the that upon a mis-fire
+ situation, the wants to be
+ re-scheduled to the next scheduled time after 'now' - taking into
+ account any associated , and with the
+ repeat count set to what it would be, if it had not missed any firings.
+
+
+ NOTE/WARNING: This instruction could cause the
+ to go directly to the 'COMPLETE' state if all fire-times where missed.
+
+
+
+
+ Instructs the that upon a mis-fire
+ situation, the wants to be
+ re-scheduled to the next scheduled time after 'now' - taking into
+ account any associated , and with the
+ repeat count left unchanged.
+
+
+
+ NOTE/WARNING: This instruction could cause the
+ to go directly to the 'COMPLETE' state if all the end-time of the trigger
+ has arrived.
+
+
+
+
+
+ misfire instructions for CronTrigger
+
+
+
+
+ Instructs the that upon a mis-fire
+ situation, the wants to be fired now
+ by .
+
+
+
+
+ Instructs the that upon a mis-fire
+ situation, the wants to have it's
+ next-fire-time updated to the next time in the schedule after the
+ current time (taking into account any associated ,
+ but it does not want to be fired now.
+
+
+
+
+ misfire instructions for NthIncludedDayTrigger
+
+
+
+
+ Instructs the that upon a mis-fire situation, the
+ wants to be fired now by the
+
+
+
+
+
+ Instructs the that upon a mis-fire situation, the
+ wants to have
+ nextFireTime updated to the next time in the schedule after
+ the current time, but it does not want to be fired now.
+
+
+
+
+ A trigger which fires on the Nth day of every interval type
+ , or
+ that is not excluded by the associated
+ calendar.
+
+
+ When determining what the Nth day of the month or year
+ is, will skip excluded days on the
+ associated calendar. This would commonly be used in an Nth
+ business day situation, in which the user wishes to fire a particular job on
+ the Nth business day (i.e. the 5th business day of
+ every month). Each also has an associated
+ which indicates at what time of day the trigger is
+ to fire.
+
+ All s default to a monthly interval type
+ (fires on the Nth day of every month) with N = 1 (first
+ non-excluded day) and set to 12:00 PM (noon). These
+ values can be changed using the , , and
+ methods. Users may also want to note the
+ and
+ methods.
+
+
+ Take, for example, the following calendar:
+
+
+ July August September
+ Su Mo Tu We Th Fr Sa Su Mo Tu We Th Fr Sa Su Mo Tu We Th Fr Sa
+ 1 W 1 2 3 4 5 W 1 2 W
+ W H 5 6 7 8 W W 8 9 10 11 12 W W H 6 7 8 9 W
+ W 11 12 13 14 15 W W 15 16 17 18 19 W W 12 13 14 15 16 W
+ W 18 19 20 21 22 W W 22 23 24 25 26 W W 19 20 21 22 23 W
+ W 25 26 27 28 29 W W 29 30 31 W 26 27 28 29 30
+ W
+
+ Where W's represent weekend days, and H's represent holidays, all of which
+ are excluded on a calendar associated with an
+ with n=5 and
+ intervalType=IntervalTypeMonthly. In this case, the trigger
+ would fire on the 8th of July (because of the July 4 holiday),
+ the 5th of August, and the 8th of September (because
+ of Labor Day).
+
+ Aaron Craven
+
+
+
+ Indicates a monthly trigger type (fires on the Nth included
+ day of every month).
+
+
+
+ indicates a yearly trigger type (fires on the Nth included
+ day of every year).
+
+
+
+
+ Indicates a weekly trigger type (fires on the Nth included
+ day of every week). When using this interval type, care must be taken
+ not to think of the value of as an analog to
+ . Such a comparison can only
+ be drawn when there are no calendars associated with the trigger. To
+ illustrate, consider an with
+ n = 3 which is associated with a Calendar excluding
+ non-weekdays. The trigger would fire on the 3rd
+ included day of the week, which would be 4th
+ actual day of the week.
+
+
+
+
+ Create an with no specified name,
+ group, or . This will result initially in a
+ default monthly trigger that fires on the first day of every month at
+ 12:00 PM (n = 1,
+ intervalType=,
+ fireAtTime="12:00").
+
+
+ Note that , ,
+ , and , must be
+ called before the can be placed into
+ a .
+
+
+
+
+ Create an with the given name and
+ default group but no specified . This will result
+ initially in a default monthly trigger that fires on the first day of
+ every month at 12:00 PM (=1,
+ intervalType=,
+ fireAtTime=12:00").
+
+ Note that and must
+ be called before the can be placed
+ into a .
+
+
+ the name for the
+
+
+
+ Create an with the given name and
+ group but no specified . This will result
+ initially in a default monthly trigger that fires on the first day of
+ every month at 12:00 PM (=1,
+ intervalType=,
+ fireAtTime=12:00").
+
+ Note that and must
+ be called before the can be placed
+ into a .
+
+
+ the name for the
+
+ the group for the
+
+
+
+
+ Create an with the given name and
+ group and the specified . This will result
+ initially in a default monthly trigger that fires on the first day of
+ every month at 12:00 PM (=1,
+ intervalType=,
+ fireAtTime="12:00").
+
+ The name for the .
+ The group for the .
+ The name of the job to associate with the .
+ The group containing the job to associate with the .
+
+
+
+ Returns the next UTC time at which the
+ will fire. If the trigger will not fire again, will be
+ returned.
+
+
+
+ Because of the conceptual design of ,
+ it is not always possible to decide with certainty that the trigger
+ will never fire again. Therefore, it will search for the next
+ fire time up to a given cutoff. These cutoffs can be changed by using the
+ property. The default cutoff is 12
+ of the intervals specified by intervalType.
+
+
+ The returned value is not guaranteed to be valid until after
+ the trigger has been added to the scheduler.
+
+
+ the next fire time for the trigger
+
+
+
+
+ Returns the previous UTC time at which the
+ fired. If the trigger has not yet
+ fired, will be returned.
+
+ the previous fire time for the trigger
+
+
+
+ Returns the first time the will fire
+ after the specified date.
+
+
+
+ Because of the conceptual design of ,
+ it is not always possible to decide with certainty that the trigger
+ will never fire again. Therefore, it will search for the next
+ fire time up to a given cutoff. These cutoffs can be changed by using the
+ property. The default cutoff is 12
+ of the intervals specified by intervalType.
+
+
+ Therefore, for triggers with intervalType =
+ , if the trigger
+ will not fire within 12
+ weeks after the given date/time, will be returned. For
+ triggers with intervalType =
+
+ , if the trigger will not fire within 12
+ months after the given date/time, will be returned.
+ For triggers with intervalType =
+
+ , if the trigger will not fire within 12
+ years after the given date/time, will be returned. In
+ all cases, if the trigger will not fire before ,
+ will be returned.
+
+
+ The time after which to find the nearest fire time.
+ This argument is treated as exclusive 舒 that is,
+ if afterTime is a valid fire time for the trigger, it
+ will not be returned as the next fire time.
+
+
+ the first time the trigger will fire following the specified date
+
+
+
+
+ Called when the has decided to 'fire' the trigger
+ (Execute the associated ), in order to give the
+ a chance to update itself for its next triggering
+ (if any).
+
+
+
+
+ Called by the scheduler at the time a is first
+ added to the scheduler, in order to have the
+ compute its first fire time, based on any associated calendar.
+
+ After this method has been called,
+ should return a valid answer.
+
+
+
+ the first time at which the will be fired
+ by the scheduler, which is also the same value
+ will return (until after the first
+ firing of the ).
+
+
+
+
+ Called after the has executed the
+ associated with the in order
+ to get the final instruction code from the trigger.
+
+
+ The that was used by the
+ 's method.
+
+
+ The thrown by the
+ , if any (may be )
+
+ one of the Trigger.INSTRUCTION_XXX constants.
+
+
+
+
+ Used by the to determine whether or not it is
+ possible for this to fire again.
+ '
+
+
+ If the returned value is then the
+ may remove the from the
+
+
+
+
+ A boolean indicator of whether the trigger could potentially fire
+ again.
+
+
+
+
+ Indicates whether is a valid misfire
+ instruction for this .
+
+ Whether is valid.
+
+
+ Updates the 's state based on the
+ MisfireInstruction that was selected when the
+ was created
+
+ If the misfire instruction is set to MISFIRE_INSTRUCTION_SMART_POLICY,
+ then the instruction will be interpreted as
+ .
+
+
+ a new or updated calendar to use for the trigger
+
+
+
+
+ Updates the 's state based on the
+ given new version of the associated .
+
+ A new or updated calendar to use for the trigger
+ the amount of time that must
+ be between "now" and the time the next
+ firing of the trigger is supposed to occur.
+
+
+
+
+ Calculates the first time an with
+ intervalType = IntervalTypeWeekly will fire
+ after the specified date. See for more
+ information.
+
+ The time after which to find the nearest fire time.
+ This argument is treated as exclusive 舒 that is,
+ if afterTime is a valid fire time for the trigger, it
+ will not be returned as the next fire time.
+
+ the first time the trigger will fire following the specified
+ date
+
+
+
+
+ Calculates the first UTC time an with
+ intervalType = will fire
+ after the specified date. See for more
+ information.
+
+
+ The UTC time after which to find the nearest fire time.
+ This argument is treated as exclusive 舒 that is,
+ if afterTime is a valid fire time for the trigger, it
+ will not be returned as the next fire time.
+
+ the first time the trigger will fire following the specified date
+
+
+
+ Calculates the first time an with
+ intervalType = will fire
+ after the specified date. See for more
+ information.
+
+
+ The UTC time after which to find the nearest fire time.
+ This argument is treated as exclusive 舒 that is,
+ if afterTime is a valid fire time for the trigger, it
+ will not be returned as the next fire time.
+
+ the first time the trigger will fire following the specified
+ date
+
+
+
+
+ Gets or sets the day of the interval on which the
+ should fire. If the Nth
+ day of the interval does not exist (i.e. the 32nd of a
+ month), the trigger simply will never fire. N may not be less than 1.
+
+
+
+
+ Returns the interval type for the .
+
+
+ Sets the interval type for the . If
+ , the trigger will fire on the
+ Nth included day of every month. If
+ , the trigger will fire on the
+ Nth included day of every year. If
+ , the trigger will fire on the
+ Nth included day of every week.
+
+
+
+
+
+
+
+ Returns the fire time for the as a
+ string with the format "HH:MM[:SS]", with HH representing the
+ 24-hour clock hour of the fire time. Seconds are optional and their
+ inclusion depends on whether or not they were provided to
+ .
+
+
+
+
+ Returns the for the
+ .
+
+
+
+ Because of the conceptual design of ,
+ it is not always possible to decide with certainty that the trigger
+ will never fire again. Therefore, it will search for the next
+ fire time up to a given cutoff. These cutoffs can be changed by using the
+ property. The default cutoff is 12
+ of the intervals specified by intervalType" />.
+
+
+ Because of the conceptual design of ,
+ it is not always possible to decide with certainty that the trigger
+ will never fire again. Therefore, it will search for the next
+ fire time up to a given cutoff. These cutoffs can be changed by using the
+ method. The default cutoff is 12
+ of the intervals specified by intervalType".
+
+
+ In most cases, the default value of this setting (12) is sufficient (it
+ is highly unlikely, for example, that you will need to look at more than
+ 12 months of dates to ensure that your trigger will never fire again).
+ However, this setting is included to allow for the rare exceptions where
+ this might not be true.
+
+
+ For example, if your trigger is associated with a calendar that excludes
+ a great many dates in the next 12 months, and hardly any following that,
+ it is possible (if is large enough) that you could run
+ into this situation.
+
+
+
+
+
+ Returns the last UTC time the will fire.
+ If the trigger will not fire at any point between
+ and , will be returned.
+
+ the last time the trigger will fire.
+
+
+
+ Tells whether this Trigger instance can handle events
+ in millisecond precision.
+
+
+
+
+
+ Sets or gets the time zone in which the will be resolved.
+ If no time zone is provided, then the default time zone will be used.
+
+
+
+
+
+
+ Gets or sets the trigger's calendar week rule.
+
+ The trigger calendar week rule.
+
+
+
+ Gets or sets the trigger's calendar first day of week rule.
+
+ The trigger calendar first day of week.
+
+
+
+ An exception that is thrown to indicate that an attempt to store a new
+ object (i.e. ,
+ or ) in a
+ failed, because one with the same name and group already exists.
+
+ James House
+
+
+
+ Create a with the given
+ message.
+
+
+
+
+
+ Initializes a new instance of the class.
+
+ The that holds the serialized object data about the exception being thrown.
+ The that contains contextual information about the source or destination.
+ The class name is null or is zero (0).
+ The info parameter is null.
+
+
+
+ Create a and auto-generate a
+ message using the name/group from the given .
+
+
+
+ The message will read:
"Unable to store Job with name: '__' and
+ group: '__', because one already exists with this identification."
+
+
+
+
+
+ Create a and auto-generate a
+ message using the name/group from the given .
+
+
+
+ The message will read:
"Unable to store Trigger with name: '__' and
+ group: '__', because one already exists with this identification."
+
+
+
+
+
+ An exception that is thrown to indicate that there is a misconfiguration of
+ the - or one of the components it
+ configures.
+
+ James House
+
+
+
+ Create a with the given message.
+
+
+
+
+ Create a with the given message
+ and cause.
+
+
+
+
+ Initializes a new instance of the class.
+
+ The that holds the serialized object data about the exception being thrown.
+ The that contains contextual information about the source or destination.
+ The class name is null or is zero (0).
+ The info parameter is null.
+
+
+
+ Holds context/environment data that can be made available to Jobs as they
+ are executed.
+
+
+ James House
+
+
+
+ Create an empty .
+
+
+
+
+ Create a with the given data.
+
+
+
+
+ Instructs Scheduler what to do with a trigger and job.
+
+
+
+
+ Instructs the that the
+ has no further instructions.
+
+
+
+
+ Instructs the that the
+ wants the to re-Execute
+ immediately. If not in a 'RECOVERING' or 'FAILED_OVER' situation, the
+ execution context will be re-used (giving the the
+ abilitiy to 'see' anything placed in the context by its last execution).
+
+
+
+
+ Instructs the that the
+ should be put in the state.
+
+
+
+
+ Instructs the that the
+ wants itself deleted.
+
+
+
+
+ Instructs the that all
+ s referencing the same as
+ this one should be put in the state.
+
+
+
+
+ Instructs the that all
+ s referencing the same as
+ this one should be put in the state.
+
+
+
+
+ Instructs the that the
+ should be put in the state.
+
+
+
+
+ Describes the settings and capabilities of a given
+ instance.
+
+ James House
+
+
+
+ Initializes a new instance of the class.
+
+ Name of the scheduler.
+ The scheduler instance.
+ The scheduler type.
+ if set to true, scheduler is a remote scheduler.
+ if set to true, scheduler is started.
+ if set to true, scheduler is in standby mode.
+ if set to true, scheduler is shutdown.
+ The start time.
+ The number of jobs executed.
+ The job store type.
+ if set to true, job store is persistent.
+ The thread pool type.
+ Size of the thread pool.
+ The version string.
+
+
+
+ Returns a formatted (human readable) string describing all the 's
+ meta-data values.
+
+
+
+ The format of the string looks something like this:
+
+ Quartz Scheduler 'SchedulerName' with instanceId 'SchedulerInstanceId' Scheduler class: 'Quartz.Impl.StdScheduler' - running locally. Running since: '11:33am on Jul 19, 2002' Not currently paused. Number of Triggers fired: '123' Using thread pool 'Quartz.Simpl.SimpleThreadPool' - with '8' threads Using job-store 'Quartz.Impl.JobStore' - which supports persistence.
+
+
+
+
+
+
+ Return a simple string representation of this object.
+
+
+
+
+ Returns the name of the .
+
+
+
+
+ Returns the instance Id of the .
+
+
+
+
+ Returns the class-name of the instance.
+
+
+
+
+ Returns whether the is being used remotely (via remoting).
+
+
+
+
+ Returns whether the scheduler has been started.
+
+
+ Note: may return even if
+ returns .
+
+
+
+
+ Reports whether the is in standby mode.
+
+
+ Note: may return even if
+ returns .
+
+
+
+
+ Reports whether the has been Shutdown.
+
+
+
+
+ Returns the class-name of the instance that is
+ being used by the .
+
+
+
+
+ Returns the type name of the instance that is
+ being used by the .
+
+
+
+
+ Returns the number of threads currently in the 's
+
+
+
+
+ Returns the version of Quartz that is running.
+
+
+
+
+ Returns the at which the Scheduler started running.
+
+ null if the scheduler has not been started.
+
+
+
+
+ Returns the number of jobs executed since the
+ started..
+
+
+
+
+ Returns whether or not the 's
+ instance supports persistence.
+
+
+
+
+ A concrete that is used to fire a
+ at a given moment in time, and optionally repeated at a specified interval.
+
+
+
+
+
+ James House
+ Contributions by Lieven Govaerts of Ebitec Nv, Belgium.
+ Marko Lahma (.NET)
+
+
+
+ Used to indicate the 'repeat count' of the trigger is indefinite. Or in
+ other words, the trigger should repeat continually until the trigger's
+ ending timestamp.
+
+
+
+
+ Create a with no settings.
+
+
+
+
+ Create a that will occur immediately, and
+ not repeat.
+
+
+
+
+ Create a that will occur immediately, and
+ not repeat.
+
+
+
+
+ Create a that will occur immediately, and
+ repeat at the the given interval the given number of times.
+
+
+
+
+ Create a that will occur immediately, and
+ repeat at the the given interval the given number of times.
+
+
+
+
+ Create a that will occur at the given time,
+ and not repeat.
+
+
+
+
+ Create a that will occur at the given time,
+ and not repeat.
+
+
+
+
+ Create a that will occur at the given time,
+ and repeat at the the given interval the given number of times, or until
+ the given end time.
+
+ The name.
+ A UTC set to the time for the to fire.
+ A UTC set to the time for the
+ to quit repeat firing.
+ The number of times for the to repeat
+ firing, use for unlimited times.
+ The time span to pause between the repeat firing.
+
+
+
+ Create a that will occur at the given time,
+ and repeat at the the given interval the given number of times, or until
+ the given end time.
+
+ The name.
+ The group.
+ A UTC set to the time for the to fire.
+ A UTC set to the time for the
+ to quit repeat firing.
+ The number of times for the to repeat
+ firing, use for unlimited times.
+ The time span to pause between the repeat firing.
+
+
+
+ Create a that will occur at the given time,
+ fire the identified and repeat at the the given
+ interval the given number of times, or until the given end time.
+
+ The name.
+ The group.
+ Name of the job.
+ The job group.
+ A set to the time for the
+ to fire.
+ A set to the time for the
+ to quit repeat firing.
+ The number of times for the to repeat
+ firing, use RepeatIndefinitely for unlimited times.
+ The time span to pause between the repeat firing.
+
+
+
+ Validates the misfire instruction.
+
+ The misfire instruction.
+
+
+
+
+ Updates the 's state based on the
+ MisfireInstruction value that was selected when the
+ was created.
+
+
+ If MisfireSmartPolicyEnabled is set to true,
+ then the following scheme will be used:
+
+ - If the Repeat Count is 0, then the instruction will
+ be interpreted as .
+ - If the Repeat Count is , then
+ the instruction will be interpreted as .
+ WARNING: using MisfirePolicy.SimpleTrigger.RescheduleNowWithRemainingRepeatCount
+ with a trigger that has a non-null end-time may cause the trigger to
+ never fire again if the end-time arrived during the misfire time span.
+
+ - If the Repeat Count is > 0, then the instruction
+ will be interpreted as .
+
+
+
+
+
+
+ Called when the has decided to 'fire'
+ the trigger (Execute the associated ), in order to
+ give the a chance to update itself for its next
+ triggering (if any).
+
+
+
+
+
+ Updates the instance with new calendar.
+
+ The calendar.
+ The misfire threshold.
+
+
+
+ Called by the scheduler at the time a is first
+ added to the scheduler, in order to have the
+ compute its first fire time, based on any associated calendar.
+
+ After this method has been called,
+ should return a valid answer.
+
+
+
+ The first time at which the will be fired
+ by the scheduler, which is also the same value
+ will return (until after the first firing of the ).
+
+
+
+
+ Returns the next time at which the will
+ fire. If the trigger will not fire again, will be
+ returned. The value returned is not guaranteed to be valid until after
+ the has been added to the scheduler.
+
+
+
+
+ Returns the previous time at which the fired.
+ If the trigger has not yet fired, will be
+ returned.
+
+
+
+
+ Set the next UTC time at which the should fire.
+ This method should not be invoked by client code.
+
+
+
+
+ Set the previous UTC time at which the fired.
+ This method should not be invoked by client code.
+
+
+
+
+ Returns the next UTC time at which the will
+ fire, after the given UTC time. If the trigger will not fire after the given
+ time, will be returned.
+
+
+
+
+ Returns the last UTC time at which the will
+ fire, before the given time. If the trigger will not fire before the
+ given time, will be returned.
+
+
+
+
+ Computes the number of times fired between the two UTC date times.
+
+ The UTC start date and time.
+ The UTC end date and time.
+
+
+
+
+ Determines whether or not the will occur
+ again.
+
+
+
+
+ Validates whether the properties of the are
+ valid for submission into a .
+
+
+
+
+ Get or set thhe number of times the should
+ repeat, after which it will be automatically deleted.
+
+
+
+
+
+ Get or set the the time interval at which the should repeat.
+
+
+
+
+ Get or set the number of times the has already
+ fired.
+
+
+
+
+ Returns the final UTC time at which the will
+ fire, if repeatCount is RepeatIndefinitely, null will be returned.
+
+ Note that the return time may be in the past.
+
+
+
+
+
+ Tells whether this Trigger instance can handle events
+ in millisecond precision.
+
+
+
+
+
+ All trigger states known to Scheduler.
+
+
+
+
+ Indicates that the is in the "normal" state.
+
+
+
+
+ Indicates that the is in the "paused" state.
+
+
+
+
+ Indicates that the is in the "complete" state.
+
+
+ "Complete" indicates that the trigger has not remaining fire-times in
+ its schedule.
+
+
+
+
+ Indicates that the is in the "error" state.
+
+
+
+ A arrives at the error state when the scheduler
+ attempts to fire it, but cannot due to an error creating and executing
+ its related job. Often this is due to the 's
+ class not existing in the classpath.
+
+
+
+ When the trigger is in the error state, the scheduler will make no
+ attempts to fire it.
+
+
+
+
+
+ Indicates that the is in the "blocked" state.
+
+
+ A arrives at the blocked state when the job that
+ it is associated with is a and it is
+ currently executing.
+
+
+
+
+
+ Indicates that the does not exist.
+
+
+
+
+ Convenience and utility methods for simplifying the construction and
+ configuration of s.
+
+
+ Please submit suggestions for additional convenience methods to either the
+ Quartz user forum or the developer's mail list at
+ source forge.
+
+
+
+ James House
+
+
+
+ Constant indicating last day of month.
+
+
+
+
+ Milliseconds in minute.
+
+
+
+
+ Milliseconds in hour.
+
+
+
+
+ Seconds in day.
+
+
+
+
+ Milliseconds in day.
+
+
+
+
+ Initializes a new instance of the class.
+
+
+
+
+ Set the given 's name to the given value, and its
+ group to the default group ().
+
+ the tigger to change name to
+ the new trigger name
+
+
+
+ Set the given 's name to the given value, and its
+ group to the given group.
+
+ the tigger to change name to
+ the new trigger name
+ the new trigger group
+
+
+
+ Make a trigger that will fire every day at the given time.
+
+ The generated trigger will not have its name, group,
+ or end-time set. The Start time defaults to 'now'.
+
+
+ the hour (0-23) upon which to fire
+ the minute (0-59) upon which to fire
+ the new trigger
+
+
+
+ Make a trigger that will fire every day at the given time.
+
+ The generated trigger will not have its group or end-time set.
+ The Start time defaults to 'now'.
+
+
+ the trigger's name
+ the hour (0-23) upon which to fire
+ the minute (0-59) upon which to fire
+ the newly created trigger
+
+
+
+ Make a trigger that will fire every week at the given day and time.
+
+ The generated trigger will not have its name, group,
+ or end-time set. The Start time defaults to 'now'.
+
+
+ (1-7) the day of week upon which to fire
+ the hour (0-23) upon which to fire
+ the minute (0-59) upon which to fire
+ the new trigger
+
+
+
+ Make a trigger that will fire every week at the given day and time.
+
+ The generated trigger will not have its group,
+ or end-time set. The Start time defaults to 'now'.
+
+
+ the trigger's name
+ the day of week upon which to fire
+ the hour (0-23) upon which to fire
+ the minute (0-59) upon which to fire
+ the newly created trigger
+
+
+
+ Make a trigger that will fire every month at the given day and time.
+
+ The generated trigger will not have its name, group,
+ or end-time set. The Start time defaults to 'now'.
+
+
+ If the day of the month specified does not occur in a given month, a
+ firing will not occur that month. (i.e. if dayOfMonth is specified as
+ 31, no firing will occur in the months of the year with fewer than 31
+ days).
+
+
+ (1-31, or -1) the day of week upon which to fire
+ the hour (0-23) upon which to fire
+ the minute (0-59) upon which to fire
+ the newly created trigger
+
+
+
+ Make a trigger that will fire every month at the given day and time.
+
+ The generated trigger will not have its group,
+ or end-time set. The Start time defaults to 'now'.
+
+
+ If the day of the month specified does not occur in a given month, a
+ firing will not occur that month. (i.e. if dayOfMonth is specified as
+ 31, no firing will occur in the months of the year with fewer than 31
+ days).
+
+
+ the trigger's name
+ (1-31, or -1) the day of week upon which to fire
+ the hour (0-23) upon which to fire
+ the minute (0-59) upon which to fire
+ the newly created trigger
+
+
+
+ Make a trigger that will fire times, waiting
+ between each fire.
+
+
+ The generated trigger will not have its name, group,
+ or end-time set. The Start time defaults to 'now'.
+
+ the newly created trigger
+
+
+
+ Make a trigger that will fire times, waiting
+ between each fire.
+
+ The generated trigger will not have its name, group,
+ or end-time set. The Start time defaults to 'now'.
+
+
+ the trigger's name
+ the new trigger
+
+
+
+ Make a trigger that will fire every second, indefinitely.
+
+ The generated trigger will not have its name, group,
+ or end-time set. The Start time defaults to 'now'.
+
+
+ the new trigger
+
+
+
+ Make a trigger that will fire every second, indefinitely.
+
+ The generated trigger will not have its group,
+ or end-time set. The Start time defaults to 'now'.
+
+
+ the trigger's name
+ the new trigger
+
+
+
+ Make a trigger that will fire every N seconds, indefinitely.
+
+ The generated trigger will not have its name, group,
+ or end-time set. The Start time defaults to 'now'.
+
+
+ the number of seconds between firings
+ the new trigger
+
+
+
+ Make a trigger that will fire every N seconds, with the given number of
+ repeats.
+
+ The generated trigger will not have its name, group,
+ or end-time set. The Start time defaults to 'now'.
+
+
+ the number of seconds between firings
+ the number of times to repeat the firing
+ the new trigger
+
+
+
+ Make a trigger that will fire every N seconds, with the given number of
+ repeats.
+
+ The generated trigger will not have its group,
+ or end-time set. The Start time defaults to 'now'.
+
+
+ the trigger's name
+ the number of seconds between firings
+ the number of times to repeat the firing
+ the new trigger
+
+
+
+ Make a trigger that will fire every minute, indefinitely.
+
+ The generated trigger will not have its name, group,
+ or end-time set. The Start time defaults to 'now'.
+
+
+ the new trigger
+
+
+
+ Make a trigger that will fire every minute, indefinitely.
+
+ The generated trigger will not have its group,
+ or end-time set. The Start time defaults to 'now'.
+
+
+ the trigger's name
+ the new trigger
+
+
+
+ Make a trigger that will fire every N minutes, indefinitely.
+
+ The generated trigger will not have its name, group,
+ or end-time set. The Start time defaults to 'now'.
+
+
+ the number of minutes between firings
+ the new trigger
+
+
+
+ Make a trigger that will fire every N minutes, with the given number of
+ repeats.
+
+ The generated trigger will not have its name, group,
+ or end-time set. The Start time defaults to 'now'.
+
+
+ the number of minutes between firings
+ the number of times to repeat the firing
+ the new trigger
+
+
+
+ Make a trigger that will fire every N minutes, with the given number of
+ repeats.
+
+ The generated trigger will not have its group,
+ or end-time set. The Start time defaults to 'now'.
+
+
+ the trigger's name
+ the number of minutes between firings
+ the number of times to repeat the firing
+ the new trigger
+
+
+
+ Make a trigger that will fire every hour, indefinitely.
+
+ The generated trigger will not have its name, group,
+ or end-time set. The Start time defaults to 'now'.
+
+
+ the new trigger
+
+
+
+ Make a trigger that will fire every hour, indefinitely.
+
+ The generated trigger will not have its group,
+ or end-time set. The Start time defaults to 'now'.
+
+
+ the trigger's name
+ the new trigger
+
+
+
+ Make a trigger that will fire every N hours, indefinitely.
+
+ The generated trigger will not have its name, group,
+ or end-time set. The Start time defaults to 'now'.
+
+
+ the number of hours between firings
+ the new trigger
+
+
+
+ Make a trigger that will fire every N hours, with the given number of
+ repeats.
+
+ The generated trigger will not have its name, group,
+ or end-time set. The Start time defaults to 'now'.
+
+
+ the number of hours between firings
+ the number of times to repeat the firing
+ the new trigger
+
+
+
+ Make a trigger that will fire every N hours, with the given number of
+ repeats.
+
+ The generated trigger will not have its group,
+ or end-time set. The Start time defaults to 'now'.
+
+
+ the trigger's name
+ the number of hours between firings
+ the number of times to repeat the firing
+ the new trigger
+
+
+
+ Returns a date that is rounded to the next even hour above the given
+ date.
+
+ For example an input date with a time of 08:13:54 would result in a date
+ with the time of 09:00:00. If the date's time is in the 23rd hour, the
+ date's 'day' will be promoted, and the time will be set to 00:00:00.
+
+
+ the Date to round, if the current time will
+ be used
+ the new rounded date
+
+
+
+ Returns a date that is rounded to the previous even hour below the given
+ date.
+
+ For example an input date with a time of 08:13:54 would result in a date
+ with the time of 08:00:00.
+
+
+ the Date to round, if the current time will
+ be used
+ the new rounded date
+
+
+
+ Returns a date that is rounded to the next even minute above the given
+ date.
+
+ For example an input date with a time of 08:13:54 would result in a date
+ with the time of 08:14:00. If the date's time is in the 59th minute,
+ then the hour (and possibly the day) will be promoted.
+
+
+ The Date to round, if the current time will be used
+ The new rounded date
+
+
+
+ Returns a date that is rounded to the previous even minute below the
+ given date.
+
+ For example an input date with a time of 08:13:54 would result in a date
+ with the time of 08:13:00.
+
+
+ the Date to round, if the current time will
+ be used
+ the new rounded date
+
+
+
+ Returns a date that is rounded to the next even second above the given
+ date.
+
+ the Date to round, if the current time will
+ be used
+ the new rounded date
+
+
+
+ Returns a date that is rounded to the previous even second below the
+ given date.
+
+ For example an input date with a time of 08:13:54.341 would result in a
+ date with the time of 08:13:00.000.
+
+
+ the Date to round, if the current time will
+ be used
+ the new rounded date
+
+
+
+ Returns a date that is rounded to the next even multiple of the given
+ minute.
+
+ For example an input date with a time of 08:13:54, and an input
+ minute-base of 5 would result in a date with the time of 08:15:00. The
+ same input date with an input minute-base of 10 would result in a date
+ with the time of 08:20:00. But a date with the time 08:53:31 and an
+ input minute-base of 45 would result in 09:00:00, because the even-hour
+ is the next 'base' for 45-minute intervals.
+
+
+
+ More examples:
+
+ | Input Time |
+ Minute-Base |
+ Result Time |
+
+
+ | 11:16:41 |
+ 20 |
+ 11:20:00 |
+
+
+ | 11:36:41 |
+ 20 |
+ 11:40:00 |
+
+
+ | 11:46:41 |
+ 20 |
+ 12:00:00 |
+
+
+ | 11:26:41 |
+ 30 |
+ 11:30:00 |
+
+
+ | 11:36:41 |
+ 30 |
+ 12:00:00 |
+
+
+ | 11:16:41 |
+ 17 |
+ 11:17:00 |
+
+
+ | 11:17:41 |
+ 17 |
+ 11:34:00 |
+
+
+ | 11:52:41 |
+ 17 |
+ 12:00:00 |
+
+
+ | 11:52:41 |
+ 5 |
+ 11:55:00 |
+
+
+ | 11:57:41 |
+ 5 |
+ 12:00:00 |
+
+
+ | 11:17:41 |
+ 0 |
+ 12:00:00 |
+
+
+ | 11:17:41 |
+ 1 |
+ 11:08:00 |
+
+
+
+
+
+
+ the Date to round, if the current time will
+ be used
+
+
+ the base-minute to set the time on
+
+ the new rounded date
+
+
+
+ Returns a date that is rounded to the next even multiple of the given
+ minute.
+
+ The rules for calculating the second are the same as those for
+ calculating the minute in the method
+ .
+
+
+ The date.
+ The second base.
+
+
+
+
+ Returns a list of Dates that are the next fire times of a
+ .
+ The input trigger will be cloned before any work is done, so you need
+ not worry about its state being altered by this method.
+
+ The trigger upon which to do the work
+ The calendar to apply to the trigger's schedule
+ The number of next fire times to produce
+ List of java.util.Date objects
+
+
+
+ Returns a list of Dates that are the next fire times of a
+ that fall within the given date range. The input trigger will be cloned
+ before any work is done, so you need not worry about its state being
+ altered by this method.
+
+ NOTE: if this is a trigger that has previously fired within the given
+ date range, then firings which have already occured will not be listed
+ in the output List.
+
+
+ The trigger upon which to do the work
+ The calendar to apply to the trigger's schedule
+ The starting date at which to find fire times
+ The ending date at which to stop finding fire times
+ List of java.util.Date objects
+
+
+
+ Translate a date and time from a users timezone to the another
+ (probably server) timezone to assist in creating a simple trigger with
+ the right date and time.
+
+ the date to translate
+ the original time-zone
+ the destination time-zone
+ the translated UTC date
+
+
+
+ Gets the offset from UT for the given date in the given timezone,
+ taking into account daylight savings.
+
+ the date that is the base for the offset
+ the time-zone to calculate to offset to
+ the offset
+
+
+
+ This functions determines if the TimeZone uses daylight saving time
+
+ TimeZone instance to validate
+ True or false depending if daylight savings time is used
+
+
+
+ An exception that is thrown to indicate that a call to
+ failed without interrupting the Job.
+
+
+ James House
+
+
+
+ Create a with the given message.
+
+
+
+
+ Create a with the given cause.
+
+
+
+
+ Initializes a new instance of the class.
+
+ The that holds the serialized object data about the exception being thrown.
+ The that contains contextual information about the source or destination.
+ The class name is null or is zero (0).
+ The info parameter is null.
+
+
+
diff --git a/lib/Net/4.0/Quartz.dll b/lib/Net/4.0/Quartz.dll
new file mode 100644
index 00000000..d0aeb954
Binary files /dev/null and b/lib/Net/4.0/Quartz.dll differ
diff --git a/lib/Net/4.0/Quartz.xml b/lib/Net/4.0/Quartz.xml
new file mode 100644
index 00000000..76eeeb5b
--- /dev/null
+++ b/lib/Net/4.0/Quartz.xml
@@ -0,0 +1,17105 @@
+
+
+
+ Quartz
+
+
+
+
+ Collection manipulation related utility methods.
+
+
+
+
+ Removes the specified item from list of items and returns
+ whether removal was success.
+
+ The items to remove from.
+ The item to remove.
+
+
+
+
+ A hash based set.
+
+
+
+
+ Represents a collection ob objects that contains no duplicate elements.
+
+
+
+
+ Adds a new element to the Collection if it is not already present.
+
+ The object to add to the collection.
+ Returns true if the object was added to the collection, otherwise false.
+
+
+
+ Adds all the elements of the specified collection to the Set.
+
+ Collection of objects to add.
+ true
+
+
+
+ Returns the first item in the set.
+
+ First object.
+
+
+
+ Initializes a new instance of the class.
+
+
+
+
+ Initializes a new instance of the class.
+
+ The whose elements are copied to the new list.
+
+ is .
+
+
+
+ Initializes a new instance of the class.
+
+ The capacity.
+
+
+
+ Unmodifiables the hash set.
+
+ The collection.
+
+
+
+
+ Adds a new element to the ArrayList if it is not already present.
+
+ Element to insert to the ArrayList.
+ Returns true if the new element was inserted, false otherwise.
+
+
+
+ Adds all the elements of the specified collection that are not present to the list.
+
+ Collection where the new elements will be added
+ Returns true if at least one element was added, false otherwise.
+
+
+
+ Returns the first item in the set.
+
+ First object.
+
+
+
+ Returns a copy of the HashSet instance.
+
+ Returns a shallow copy of the current HashSet.
+
+
+
+ A sorted set.
+
+
+
+
+ Returns a portion of the list whose elements are greater than the limit object parameter.
+
+ The start element of the portion to extract.
+ The portion of the collection whose elements are greater than the limit object parameter.
+
+
+
+ SupportClass for the TreeSet class.
+
+
+
+
+ Initializes a new instance of the class.
+
+
+
+
+ Initializes a new instance of the class.
+
+ The whose elements are copied to the new list.
+
+ is .
+
+
+
+ Initializes a new instance of the class.
+
+ The c.
+
+
+
+ Unmodifiables the tree set.
+
+ The collection.
+
+
+
+
+ Adds a new element to the ArrayList if it is not already present and sorts the ArrayList.
+
+ Element to insert to the ArrayList.
+ TRUE if the new element was inserted, FALSE otherwise.
+
+
+
+ Adds all the elements of the specified collection that are not present to the list.
+
+ Collection where the new elements will be added
+ Returns true if at least one element was added to the collection.
+
+
+
+ Returns the first item in the set.
+
+ First object.
+
+
+
+ Determines whether an element is in the the current TreeSetSupport collection. The IComparer defined for
+ the current set will be used to make comparisons between the elements already inserted in the collection and
+ the item specified.
+
+ The object to be locatet in the current collection.
+ true if item is found in the collection; otherwise, false.
+
+
+
+ Returns a portion of the list whose elements are greater than the limit object parameter.
+
+ The start element of the portion to extract.
+ The portion of the collection whose elements are greater than the limit object parameter.
+
+
+
+ Gets the IComparator object used to sort this set.
+
+
+
+
+ Responsible for creating the instances of
+ to be used within the instance.
+
+
+ Although this interface looks a lot like an 'object pool', implementations
+ do not have to support the re-use of instances. If an implementation does
+ not wish to pool instances, then the
+ method would simply create a new instance, and the
+ method would do nothing.
+
+ James House
+ Marko Lahma (.NET)
+
+
+
+ Initialize the factory, providing a handle to the
+ that should be made available within the and
+ the s within it, and a handle to the
+ that the shell will use in its own
+ operations with the .
+
+
+
+
+ Called by the
+ to obtain instances of .
+
+
+
+
+ Called by the
+ to return instances of .
+
+
+
+
+ JobRunShell instances are responsible for providing the 'safe' environment
+ for s to run in, and for performing all of the work of
+ executing the , catching ANY thrown exceptions, updating
+ the with the 's completion code,
+ etc.
+
+ A instance is created by a
+ on behalf of the which then runs the
+ shell in a thread from the configured when the
+ scheduler determines that a has been triggered.
+
+
+
+
+
+
+ James House
+ Marko Lahma (.NET)
+
+
+
+ This interface should be implemented by any class whose instances are intended
+ to be executed by a thread.
+
+
+
+
+ This method has to be implemented in order that starting of the thread causes the object's
+ run method to be called in that separately executing thread.
+
+
+
+
+ Create a JobRunShell instance with the given settings.
+
+ A handle to the that produced
+ this .
+ The instance that should be made
+ available within the .
+ the that should be used by the
+ when making updates to the .
+
+
+
+ Initializes the job execution context with given scheduler and bundle.
+
+ The scheduler.
+ The bundle offired triggers.
+
+
+
+ Requests the Shutdown.
+
+
+
+
+ This method has to be implemented in order that starting of the thread causes the object's
+ run method to be called in that separately executing thread.
+
+
+
+
+ Runs begin procedures on this instance.
+
+
+
+
+ Completes the execution.
+
+ if set to true [successful execution].
+
+
+
+ Passivates this instance.
+
+
+
+
+ Completes the trigger retry loop.
+
+ The trigger.
+ The job detail.
+ The inst code.
+
+
+
+
+ Vetoeds the job retry loop.
+
+ The trigger.
+ The job detail.
+ The inst code.
+
+
+
+
+ This is the heart of Quartz, an indirect implementation of the
+ interface, containing methods to schedule s,
+ register instances, etc.
+
+
+
+
+
+ James House
+ Marko Lahma (.NET)
+
+
+
+ Starts this instance.
+
+
+
+
+ Standbies this instance.
+
+
+
+
+ Shutdowns this instance.
+
+
+
+
+ returns true if the given JobGroup
+ is paused
+
+ The scheduling context.
+
+
+
+
+
+ returns true if the given TriggerGroup
+ is paused
+
+
+
+
+
+
+
+ Initializes the class.
+
+
+
+
+ Get the global
+ that has the given name.
+
+
+
+
+
+
+ Create a with the given configuration
+ properties.
+
+
+
+
+
+ Bind the scheduler to remoting infrastructure.
+
+
+
+
+ Un-bind the scheduler from remoting infrastructure.
+
+
+
+
+ Adds an object that should be kept as reference to prevent
+ it from being garbage collected.
+
+ The obj.
+
+
+
+ Removes the object from garbae collection protected list.
+
+ The obj.
+
+
+
+
+ Starts the 's threads that fire s.
+
+ All s that have misfired will
+ be passed to the appropriate TriggerListener(s).
+
+
+
+
+
+ Temporarily halts the 's firing of s.
+
+ The scheduler is not destroyed, and can be re-started at any time.
+
+
+
+
+
+ Halts the 's firing of s,
+ and cleans up all resources associated with the QuartzScheduler.
+ Equivalent to .
+
+ The scheduler cannot be re-started.
+
+
+
+
+
+ Halts the 's firing of s,
+ and cleans up all resources associated with the QuartzScheduler.
+
+ The scheduler cannot be re-started.
+
+
+
+ if the scheduler will not allow this method
+ to return until all currently executing jobs have completed.
+
+
+
+
+ Validates the state.
+
+
+
+
+ Add the identified by the given
+ to the Scheduler, and
+ associate the given with it.
+
+ If the given Trigger does not reference any , then it
+ will be set to reference the Job passed with it into this method.
+
+
+
+
+
+ Schedule the given with the
+ identified by the 's settings.
+
+
+
+
+ Add the given to the Scheduler - with no associated
+ . The will be 'dormant' until
+ it is scheduled with a , or
+ is called for it.
+
+ The must by definition be 'durable', if it is not,
+ SchedulerException will be thrown.
+
+
+
+
+
+ Delete the identified from the Scheduler - and any
+ associated s.
+
+ true if the Job was found and deleted.
+
+
+
+ Remove the indicated from the
+ scheduler.
+
+
+
+
+ Remove (delete) the with the
+ given name, and store the new given one - which must be associated
+ with the same job.
+
+ The scheduling context.
+ The name of the to be removed.
+ The group name of the to be removed.
+ The new to be stored.
+
+ if a with the given
+ name and group was not found and removed from the store, otherwise
+ the first fire time of the newly scheduled trigger.
+
+
+
+
+ Creates a new positive random number
+
+ The last random obtained
+ Returns a new positive random number
+
+
+
+ Trigger the identified (Execute it now) - with a non-volatile trigger.
+
+
+
+
+ Trigger the identified (Execute it
+ now) - with a volatile trigger.
+
+
+
+
+ Pause the with the given name.
+
+
+
+
+ Pause all of the s in the given group.
+
+
+
+
+ Pause the with the given
+ name - by pausing all of its current s.
+
+
+
+
+ Pause all of the s in the
+ given group - by pausing all of their s.
+
+
+
+
+ Resume (un-pause) the with the given
+ name.
+
+ If the missed one or more fire-times, then the
+ 's misfire instruction will be applied.
+
+
+
+
+
+ Resume (un-pause) all of the s in the
+ given group.
+
+ If any missed one or more fire-times, then the
+ 's misfire instruction will be applied.
+
+
+
+
+
+ Gets the paused trigger groups.
+
+ The the job scheduling context.
+
+
+
+
+ Resume (un-pause) the with
+ the given name.
+
+ If any of the 's s missed one
+ or more fire-times, then the 's misfire
+ instruction will be applied.
+
+
+
+
+
+ Resume (un-pause) all of the s
+ in the given group.
+
+ If any of the s had s that
+ missed one or more fire-times, then the 's
+ misfire instruction will be applied.
+
+
+
+
+
+ Pause all triggers - equivalent of calling
+ on every group.
+
+ When is called (to un-pause), trigger misfire
+ instructions WILL be applied.
+
+
+
+
+
+
+
+ Resume (un-pause) all triggers - equivalent of calling
+ on every group.
+
+ If any missed one or more fire-times, then the
+ 's misfire instruction will be applied.
+
+
+
+
+
+
+ Get the names of all known groups.
+
+
+
+
+ Get the names of all the s in the
+ given group.
+
+
+
+
+ Get all s that are associated with the
+ identified .
+
+
+
+
+ Get the names of all known
+ groups.
+
+
+
+
+ Get the names of all the s in
+ the given group.
+
+
+
+
+ Get the for the
+ instance with the given name and group.
+
+
+
+
+ Get the instance with the given name and
+ group.
+
+
+
+
+ Get the current state of the identified .
+
+
+
+
+
+
+
+
+ Add (register) the given to the Scheduler.
+
+
+
+
+ Delete the identified from the Scheduler.
+
+ true if the Calendar was found and deleted.
+
+
+
+ Get the instance with the given name.
+
+
+
+
+ Get the names of all registered s.
+
+
+
+
+ Add the given to the
+ 'sglobal list.
+
+ Listeners in the 'global' list receive notification of execution events
+ for ALL s.
+
+
+
+
+
+ Add the given to the
+ 's list, of registered s.
+
+
+
+
+ Remove the given from the
+ 's list of global listeners.
+
+
+ true if the identifed listener was found in the list, and removed.
+
+
+
+
+ Remove the identifed from the 's
+ list of global listeners.
+
+
+ true if the identifed listener was found in the list, and removed.
+
+
+
+ Remove the identifed from
+ the 's list of registered listeners.
+
+
+ true if the identifed listener was found in the list, and removed.
+
+
+
+
+ Get the non-global that has the given name.
+
+
+
+
+ Add the given to the
+ 'sglobal list.
+
+ Listeners in the 'global' list receive notification of execution events
+ for ALL s.
+
+
+
+
+
+ Add the given to the
+ 's list, of registered s.
+
+
+
+
+ Remove the given from
+ the 's list of global listeners.
+
+
+ true if the identifed listener was found in the list, and removed.
+
+
+
+
+ Remove the identifed from the 's
+ list of global listeners.
+
+
+ true if the identifed listener was found in the list, and removed
+
+
+
+ Remove the identifed
+ from the 's list of registered listeners.
+
+
+ true if the identifed listener was found in the list, and removed.
+
+
+
+
+ Get the non-global
+ that has the given name.
+
+
+
+
+ Get the global that
+ has the given name.
+
+
+
+
+
+
+ Register the given with the
+ .
+
+
+
+
+ Remove the given from the
+ .
+
+
+ true if the identifed listener was found in the list, and removed.
+
+
+
+
+ Notifies the job store job complete.
+
+ The job scheduling context.
+ The trigger.
+ The detail.
+ The instruction code.
+
+
+
+ Notifies the scheduler thread.
+
+
+
+
+ Notifies the trigger listeners about fired trigger.
+
+ The job execution context.
+
+
+
+
+ Notifies the trigger listeners about misfired trigger.
+
+ The trigger.
+
+
+
+ Notifies the trigger listeners of completion.
+
+ The job executution context.
+ The instruction code to report to triggers.
+
+
+
+ Notifies the job listeners about job to be executed.
+
+ The jec.
+
+
+
+ Notifies the job listeners that job exucution was vetoed.
+
+ The job execution context.
+
+
+
+ Notifies the job listeners that job was executed.
+
+ The jec.
+ The je.
+
+
+
+ Notifies the scheduler listeners about scheduler error.
+
+ The MSG.
+ The se.
+
+
+
+ Notifies the scheduler listeners about job that was scheduled.
+
+ The trigger.
+
+
+
+ Notifies the scheduler listeners about job that was unscheduled.
+
+ Name of the trigger.
+ The trigger group.
+
+
+
+ Notifies the scheduler listeners about finalized trigger.
+
+ The trigger.
+
+
+
+ Notifies the scheduler listeners about paused trigger.
+
+ The name.
+ The group.
+
+
+
+ Notifies the scheduler listeners resumed trigger.
+
+ The name.
+ The group.
+
+
+
+ Notifies the scheduler listeners about paused job.
+
+ The name.
+ The group.
+
+
+
+ Notifies the scheduler listeners about resumed job.
+
+ The name.
+ The group.
+
+
+
+ Notifies the scheduler listeners about scheduler shutdown.
+
+
+
+
+ Interrupt all instances of the identified InterruptableJob.
+
+
+
+
+ Obtains a lifetime service object to control the lifetime policy for this instance.
+
+
+
+
+ Gets the version of the Quartz Scheduler.
+
+ The version.
+
+
+
+ Gets the version major.
+
+ The version major.
+
+
+
+ Gets the version minor.
+
+ The version minor.
+
+
+
+ Gets the version iteration.
+
+ The version iteration.
+
+
+
+ Gets the scheduler signaler.
+
+ The scheduler signaler.
+
+
+
+ Returns the name of the .
+
+
+
+
+ Returns the instance Id of the .
+
+
+
+
+ Returns the of the .
+
+
+
+
+ Gets or sets a value indicating whether to signal on scheduling change.
+
+
+ true if schduler should signal on scheduling change; otherwise, false.
+
+
+
+
+ Reports whether the is paused.
+
+
+
+
+ Gets the job store class.
+
+ The job store class.
+
+
+
+ Gets the thread pool class.
+
+ The thread pool class.
+
+
+
+ Gets the size of the thread pool.
+
+ The size of the thread pool.
+
+
+
+ Reports whether the has been Shutdown.
+
+
+
+
+ Return a list of objects that
+ represent all currently executing Jobs in this Scheduler instance.
+
+ This method is not cluster aware. That is, it will only return Jobs
+ currently executing in this Scheduler instance, not across the entire
+ cluster.
+
+
+ Note that the list returned is an 'instantaneous' snap-shot, and that as
+ soon as it's returned, the true list of executing jobs may be different.
+
+
+
+
+
+ Get a List containing all of the
+ s in the 'sglobal list.
+
+
+
+
+ Get a Set containing the names of all the non-global
+ s registered with the .
+
+
+
+
+ Get a list containing all of the
+ s in the 'sglobal list.
+
+
+
+
+ Get a Set containing the names of all the non-global
+ s registered with the .
+
+
+
+
+ Get a List containing all of the
+ s registered with the .
+
+
+
+
+ Gets or sets the job factory.
+
+ The job factory.
+
+
+
+ Gets the running since.
+
+ The running since.
+
+
+
+ Gets the number of jobs executed.
+
+ The number of jobs executed.
+
+
+
+ Gets a value indicating whether this scheduler supports persistence.
+
+ true if supports persistence; otherwise, false.
+
+
+
+ Helper class to start scheduler in a delayed fashion.
+
+
+
+
+ ErrorLogger - Scheduler Listener Class
+
+
+
+
+ A helpful abstract base class for implementors of
+ .
+
+
+ The methods in this class are empty so you only need to override the
+ subset for the events you care about.
+
+
+
+
+
+ The interface to be implemented by classes that want to be informed of major
+ events.
+
+
+
+
+ James House
+
+
+
+ Called by the when a
+ is scheduled.
+
+
+
+
+ Called by the when a
+ is unscheduled.
+
+
+
+
+ Called by the when a
+ has reached the condition in which it will never fire again.
+
+
+
+
+ Called by the when a
+ or group of s has been paused.
+
+ If a group was paused, then the parameter
+ will be null.
+
+
+ Name of the trigger.
+ The trigger group.
+
+
+
+ Called by the when a
+ or group of s has been un-paused.
+
+ If a group was resumed, then the parameter
+ will be null.
+
+
+ Name of the trigger.
+ The trigger group.
+
+
+
+ Called by the when a
+ or group of s has been paused.
+
+ If a group was paused, then the parameter will be
+ null. If all jobs were paused, then both parameters will be null.
+
+
+ Name of the job.
+ The job group.
+
+
+
+ Called by the when a
+ or group of s has been un-paused.
+
+ If a group was resumed, then the parameter will
+ be null. If all jobs were paused, then both parameters will be null.
+
+
+ The job group.
+
+
+
+ Called by the when a serious error has
+ occured within the scheduler - such as repeated failures in the ,
+ or the inability to instantiate a instance when its
+ has fired.
+
+ The property of the given SchedulerException
+ can be used to determine more specific information about the type of
+ error that was encountered.
+
+
+
+
+
+ Called by the to inform the listener
+ that it has Shutdown.
+
+
+
+
+ Get the for this
+ type's category. This should be used by subclasses for logging.
+
+
+
+
+ The interface to be implemented by classes that want to be informed when a
+ executes. In general, applications that use a
+ will not have use for this mechanism.
+
+
+
+
+
+
+ James House
+
+
+
+ Called by the when a
+ is about to be executed (an associated
+ has occured).
+
+ This method will not be invoked if the execution of the Job was vetoed
+ by a .
+
+
+
+
+
+
+ Called by the when a
+ was about to be executed (an associated
+ has occured), but a vetoed it's
+ execution.
+
+
+
+
+
+ Called by the after a
+ has been executed, and be for the associated 's
+ method has been called.
+
+
+
+
+ Get the name of the .
+
+
+
+
+ Contains all of the resources (,,
+ etc.) necessary to create a instance.
+
+
+ James House
+ Marko Lahma (.NET)
+
+
+
+ Gets the unique identifier.
+
+ Name of the scheduler.
+ The scheduler instance id.
+
+
+
+
+ Gets the unique identifier.
+
+
+
+
+
+ Add the given for the
+ to use. This method expects the plugin's
+ "initialize" method to be invoked externally (either before or after
+ this method is called).
+
+
+
+
+
+ Get or set the name for the .
+
+
+ if name is null or empty.
+
+
+
+
+ Get or set the instance Id for the .
+
+
+ if name is null or empty.
+
+
+
+
+ Get or set the name for the .
+
+
+ if name is null or empty.
+
+
+
+
+ Get or set the for the
+ to use.
+
+
+ if threadPool is null.
+
+
+
+
+ Get or set the for the
+ to use.
+
+
+ if jobStore is null.
+
+
+
+
+ Get or set the for the
+ to use.
+
+
+ if jobRunShellFactory is null.
+
+
+
+
+ Get the of all
+ s for the
+ to use.
+
+
+
+
+
+ Gets or sets a value indicating whether to make scheduler thread daemon.
+
+
+ true if scheduler should be thread daemon; otherwise, false.
+
+
+
+
+ Gets or sets the scheduler exporter.
+
+ The scheduler exporter.
+
+
+
+ The thread responsible for performing the work of firing
+ s that are registered with the .
+
+
+
+
+ James House
+ Marko Lahma (.NET)
+
+
+
+ Support class used to handle threads
+
+
+
+
+ The instance of System.Threading.Thread
+
+
+
+
+ Initializes a new instance of the QuartzThread class
+
+
+
+
+ Initializes a new instance of the Thread class.
+
+ The name of the thread
+
+
+
+ Initializes a new instance of the Thread class.
+
+ A ThreadStart delegate that references the methods to be invoked when this thread begins executing
+
+
+
+ Initializes a new instance of the Thread class.
+
+ A ThreadStart delegate that references the methods to be invoked when this thread begins executing
+ The name of the thread
+
+
+
+ This method has no functionality unless the method is overridden
+
+
+
+
+ Causes the operating system to change the state of the current thread instance to ThreadState.Running
+
+
+
+
+ Interrupts a thread that is in the WaitSleepJoin thread state
+
+
+
+
+ Blocks the calling thread until a thread terminates
+
+
+
+
+ Blocks the calling thread until a thread terminates or the specified time elapses
+
+ Time of wait in milliseconds
+
+
+
+ Blocks the calling thread until a thread terminates or the specified time elapses
+
+ Time of wait in milliseconds
+ Time of wait in nanoseconds
+
+
+
+ Resumes a thread that has been suspended
+
+
+
+
+ Raises a ThreadAbortException in the thread on which it is invoked,
+ to begin the process of terminating the thread. Calling this method
+ usually terminates the thread
+
+
+
+
+ Raises a ThreadAbortException in the thread on which it is invoked,
+ to begin the process of terminating the thread while also providing
+ exception information about the thread termination.
+ Calling this method usually terminates the thread.
+
+ An object that contains application-specific information, such as state, which can be used by the thread being aborted
+
+
+
+ Suspends the thread, if the thread is already suspended it has no effect
+
+
+
+
+ Obtain a string that represents the current object
+
+ A string that represents the current object
+
+
+
+ Gets the currently running thread
+
+ The currently running thread
+
+
+
+ Gets the current thread instance
+
+
+
+
+ Gets or sets the name of the thread
+
+
+
+
+ Gets or sets a value indicating the scheduling priority of a thread
+
+
+
+
+ Gets a value indicating the execution status of the current thread
+
+
+
+
+ Gets or sets a value indicating whether or not a thread is a background thread.
+
+
+
+
+ Gets the randomized idle wait time.
+
+ The randomized idle wait time.
+
+
+
+ Construct a new for the given
+ as a non-daemon
+ with normal priority.
+
+
+
+
+ Construct a new for the given
+ as a with the given
+ attributes.
+
+
+
+
+ Signals the main processing loop to pause at the next possible point.
+
+
+
+
+ Signals the main processing loop to pause at the next possible point.
+
+
+
+
+ Signals the main processing loop that a change in scheduling has been
+ made - in order to interrupt any sleeping that may be occuring while
+ waiting for the fire time to arrive.
+
+
+ the time when the newly scheduled trigger
+ will fire. If this method is being called do to some other even (rather
+ than scheduling a trigger), the caller should pass null.
+
+
+
+
+ The main processing loop of the .
+
+
+
+
+ Trigger retry loop that is executed on error condition.
+
+ The bndle.
+
+
+
+ Releases the trigger retry loop.
+
+ The trigger.
+
+
+
+ Gets the log.
+
+ The log.
+
+
+
+ Sets the idle wait time.
+
+ The idle wait time.
+
+
+
+ Gets a value indicating whether this is paused.
+
+ true if paused; otherwise, false.
+
+
+
+ Gets or sets the db failure retry interval.
+
+ The db failure retry interval.
+
+
+
+ An interface to be used by instances in order to
+ communicate signals back to the .
+
+ James House
+ Marko Lahma (.NET)
+
+
+
+ An interface to be used by instances in order to
+ communicate signals back to the .
+
+ James House
+
+
+
+ Notifies the scheduler about misfired trigger.
+
+ The trigger that misfired.
+
+
+
+ Notifies the scheduler about finalized trigger.
+
+ The trigger that has finalized.
+
+
+
+ Signals the scheduling change.
+
+
+
+
+ Notifies the scheduler about misfired trigger.
+
+ The trigger that misfired.
+
+
+
+ Notifies the scheduler about finalized trigger.
+
+ The trigger that has finalized.
+
+
+
+ Signals the scheduling change.
+
+
+
+
+ An object used to pass information about the 'client' to the .
+
+
+ James House
+ Marko Lahma (.NET)
+
+
+
+ get the instanceId in the cluster.
+
+
+ Set the instanceId.
+
+
+
+
+
+ Metadata information about specific ADO.NET driver library. Metadata is used to
+ create correct types of object instances to interact with the underlying
+ database.
+
+
+
+
+ Initializes this instance. Parses information and initializes startup
+ values.
+
+
+
+
+ Gets the name of the parameter which includes the parameter prefix for this
+ database.
+
+ Name of the parameter.
+
+
+ Gets or sets the name of the assembly that holds the connection library.
+ The name of the assembly.
+
+
+
+ Gets or sets the name of the product.
+
+ The name of the product.
+
+
+
+ Gets or sets the type of the connection.
+
+ The type of the connection.
+
+
+
+ Gets or sets the type of the command.
+
+ The type of the command.
+
+
+
+ Gets or sets the type of the parameter.
+
+ The type of the parameter.
+
+
+
+ Gets the type of the command builder.
+
+ The type of the command builder.
+
+
+ Gets the command builder's derive parameters method.
+ The command builder derive parameters method.
+
+
+
+ Gets or sets the parameter name prefix.
+
+ The parameter name prefix.
+
+
+
+ Gets or sets the type of the exception that is thrown when using driver
+ library.
+
+ The type of the exception.
+
+
+
+ Gets or sets a value indicating whether parameters are bind by name when using
+ ADO.NET parameters.
+
+ true if parameters are bind by name; otherwise, false.
+
+
+ Gets or sets the type of the database parameters.
+ The type of the parameter db.
+
+
+
+ Gets the parameter db type property.
+
+ The parameter db type property.
+
+
+
+ Gets the parameter is nullable property.
+
+ The parameter is nullable property.
+
+
+
+ Gets or sets the type of the db binary column. This is a string representation of
+ Enum element because this information is database driver specific.
+
+ The type of the db binary.
+
+
+ Gets the type of the db binary.
+ The type of the db binary.
+
+
+
+ Sets the name of the parameter db type property.
+
+ The name of the parameter db type property.
+
+
+
+ Gets or sets a value indicating whether [use parameter name prefix in parameter collection].
+
+
+ true if [use parameter name prefix in parameter collection]; otherwise, false.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Returns a new command object for executing SQL statments/Stored Procedures
+ against the database.
+
+ An new
+
+
+
+ Returns a new instance of the providers CommandBuilder class.
+
+ In .NET 1.1 there was no common base class or interface
+ for command builders, hence the return signature is object to
+ be portable (but more loosely typed) across .NET 1.1/2.0
+ A new Command Builder
+
+
+
+ Returns a new connection object to communicate with the database.
+
+ A new
+
+
+
+ Returns a new parameter object for binding values to parameter
+ placeholders in SQL statements or Stored Procedure variables.
+
+ A new
+
+
+
+ Shutdowns this instance.
+
+
+
+
+ Connection string used to create connections.
+
+
+
+
+ Registers DB metadata information for given provider name.
+
+
+
+
+
+
+ Initializes a new instance of the class.
+
+ Name of the db provider.
+ The connection string.
+
+
+
+ Returns a new command object for executing SQL statments/Stored Procedures
+ against the database.
+
+ An new
+
+
+
+ Returns a new instance of the providers CommandBuilder class.
+
+ A new Command Builder
+ In .NET 1.1 there was no common base class or interface
+ for command builders, hence the return signature is object to
+ be portable (but more loosely typed) across .NET 1.1/2.0
+
+
+
+ Returns a new connection object to communicate with the database.
+
+ A new
+
+
+
+ Returns a new parameter object for binding values to parameter
+ placeholders in SQL statements or Stored Procedure variables.
+
+ A new
+
+
+
+ Shutdowns this instance.
+
+
+
+
+ Connection string used to create connections.
+
+
+
+
+
+ Gets the metadata.
+
+ The metadata.
+
+
+
+ Summary description for DbProviderFactory.
+
+
+
+
+ This interface can be implemented by any
+ class that needs to use the constants contained herein.
+
+ Jeffrey Wescott
+ James House
+
+
+ @deprecated Whether a trigger has misfired is no longer a state, but
+ rather now identified dynamically by whether the trigger's next fire
+ time is more than the misfire threshold time in the past.
+
+
+
+ This class contains utility functions for use in all delegate classes.
+
+ Jeffrey Wescott
+
+
+
+ Replace the table prefix in a query by replacing any occurrences of
+ "{0}" with the table prefix.
+
+ The unsubstitued query
+ The table prefix
+ The query, with proper table prefix substituted
+
+
+
+ Obtain a unique key for a given job.
+
+ The job name
+ The group containing the job
+
+ A unique key
+
+
+
+ Obtain a unique key for a given trigger.
+
+ The trigger name
+ The group containing the trigger
+ A unique key
+
+
+
+ Base class for database based lock handlers for providing thread/resource locking
+ in order to protect resources from being altered by multiple threads at the
+ same time.
+
+
+
+
+ This class extends
+ to include the query string constants in use by the
+ class.
+
+ Jeffrey Wescott
+
+
+
+ An interface for providing thread/resource locking in order to protect
+ resources from being altered by multiple threads at the same time.
+
+ James House
+
+
+
+ Grants a lock on the identified resource to the calling thread (blocking
+ until it is available).
+
+ true if the lock was obtained.
+
+
+
+ Release the lock on the identified resource if it is held by the calling
+ thread.
+
+
+
+
+ Determine whether the calling thread owns a lock on the identified
+ resource.
+
+
+
+
+ Whether this Semaphore implementation requires a database connection for
+ its lock management operations.
+
+
+
+
+
+
+
+ Interface for Quartz objects that need to know what the table prefix of
+ the tables used by a ADO.NET JobStore is.
+
+
+
+
+ Initializes a new instance of the class.
+
+ The table prefix.
+ The SQL.
+ The default SQL.
+ The db provider.
+
+
+
+ Execute the SQL that will lock the proper database row.
+
+
+
+
+
+
+
+ Grants a lock on the identified resource to the calling thread (blocking
+ until it is available).
+
+
+
+
+ true if the lock was obtained.
+
+
+
+ Release the lock on the identified resource if it is held by the calling
+ thread.
+
+
+
+
+
+
+ Determine whether the calling thread owns a lock on the identified
+ resource.
+
+
+
+
+
+
+
+ Gets or sets the lock owners.
+
+ The lock owners.
+
+
+
+ Gets the log.
+
+ The log.
+
+
+
+ This Semaphore implementation does use the database.
+
+
+
+
+ Gets or sets the table prefix.
+
+ The table prefix.
+
+
+
+ A FirebirdDelegate specific driver delegate.
+
+ Marko Lahma
+
+
+
+ This is meant to be an abstract base class for most, if not all,
+ implementations. Subclasses should override only those methods that need
+ special handling for the DBMS driver in question.
+
+ Jeffrey Wescott
+ James House
+ Marko Lahma (.NET)
+
+
+
+ This is the base interface for all driver delegate classes.
+
+
+
+ This interface is very similar to the
+ interface except each method has an additional
+ parameter.
+
+
+ Unless a database driver has some extremely-DB-specific
+ requirements, any IDriverDelegate implementation classes should extend the
+ class.
+
+
+ Jeffrey Wescott
+ James House
+ Marko Lahma (.NET)
+
+
+
+ Update all triggers having one of the two given states, to the given new
+ state.
+
+ The DB Connection
+ The new state for the triggers
+ The first old state to update
+ The second old state to update
+ Number of rows updated
+
+
+
+ Get the names of all of the triggers that have misfired - according to
+ the given timestamp.
+
+ The DB Connection
+ The timestamp.
+ An array of objects
+
+
+
+ Get the names of all of the triggers in the given state that have
+ misfired - according to the given timestamp.
+
+ The DB Connection
+ The state.
+ The time stamp.
+ An array of objects
+
+
+
+ Get the names of all of the triggers in the given group and state that
+ have misfired - according to the given timestamp.
+
+ The DB Connection
+ Name of the group.
+ The state.
+ The timestamp.
+ An array of objects
+
+
+
+ Select all of the triggers for jobs that are requesting recovery. The
+ returned trigger objects will have unique "recoverXXX" trigger names and
+ will be in the trigger group.
+
+
+ In order to preserve the ordering of the triggers, the fire time will be
+ set from the ColumnFiredTime column in the TableFiredTriggers
+ table. The caller is responsible for calling
+ on each returned trigger. It is also up to the caller to insert the
+ returned triggers to ensure that they are fired.
+
+ The DB Connection
+ An array of objects
+
+
+
+ Delete all fired triggers.
+
+ The DB Connection
+ The number of rows deleted
+
+
+
+ Delete all fired triggers of the given instance.
+
+ The DB Connection
+ The instance id.
+ The number of rows deleted
+
+
+
+ Delete all volatile fired triggers.
+
+ The DB Connection
+ The number of rows deleted
+
+
+
+ Get the names of all of the triggers that are volatile.
+
+ The DB Connection
+ An array of see cref="Key" /> objects.
+
+
+
+ Get the names of all of the jobs that are volatile.
+
+ The DB Connection
+ An array of objects.
+
+
+
+ Insert the job detail record.
+
+ The DB Connection
+ The job to insert.
+ Number of rows inserted.
+
+
+
+ Update the job detail record.
+
+ The DB Connection.
+ The job to update.
+ Number of rows updated.
+
+
+
+ Get the names of all of the triggers associated with the given job.
+
+
+
+ The DB Connection
+ The job name
+ The job group
+
+
+
+ Delete all job listeners for the given job.
+
+ The DB Connection
+ The name of the job
+ The group containing the job
+ The number of rows deleted
+
+
+
+ Delete the job detail record for the given job.
+
+ The DB Connection
+ the name of the job
+ Name of the group.
+ the number of rows deleted
+
+
+
+ Check whether or not the given job is stateful.
+
+ The DB Connection
+ The name of the job
+ The group containing the job
+ true if the job exists and is stateful, false otherwise
+
+
+
+ Check whether or not the given job exists.
+
+ The DB Connection
+ Name of the job.
+ Name of the group.
+ true if the job exists, false otherwise
+
+
+
+ Update the job data map for the given job.
+
+ The DB Connection
+ The job.
+ the number of rows updated
+
+
+
+ Associate a listener with a job.
+
+ The DB Connection
+ The job to associate with the listener.
+ The listener to insert.
+ The number of rows inserted.
+
+
+
+ Get all of the listeners for a given job.
+
+
+
+ The DB Connection
+ The job name whose listeners are wanted
+ The group containing the job
+ array of listener names
+
+
+
+ Select the JobDetail object for a given job name / group name.
+
+ The DB Connection
+ The job name whose listeners are wanted
+ The group containing the job
+ The class load helper.
+ The populated JobDetail object
+
+
+
+ Select the total number of jobs stored.
+
+ The DB Connection
+ the total number of jobs stored
+
+
+
+ Select all of the job group names that are stored.
+
+ The DB Connection.
+ an array of group names
+
+
+
+ Select all of the jobs contained in a given group.
+
+ The DB Connection
+ The group containing the jobs
+ an array of job names
+
+
+
+ Insert the base trigger data.
+
+ The DB Connection
+ The trigger to insert.
+ The state that the trigger should be stored in.
+ The job detail.
+ The number of rows inserted
+
+
+
+ Insert the simple trigger data.
+
+ The DB Connection
+ The trigger to insert
+ The number of rows inserted
+
+
+
+ Insert the blob trigger data.
+
+ The DB Connection
+ The trigger to insert
+ The number of rows inserted
+
+
+
+ Insert the cron trigger data.
+
+ the DB Connection
+ The trigger.
+ the number of rows inserted
+
+
+
+ Update the base trigger data.
+
+ the DB Connection
+ The trigger.
+ The state.
+ The job detail.
+ the number of rows updated
+
+
+
+ Update the simple trigger data.
+
+ the DB Connection
+ The trigger.
+ the number of rows updated
+
+
+
+ Update the cron trigger data.
+
+ the DB Connection
+ The trigger.
+ the number of rows updated
+
+
+
+ Update the blob trigger data.
+
+ the DB Connection
+ The trigger.
+ the number of rows updated
+
+
+
+ Check whether or not a trigger exists.
+
+ the DB Connection
+ Name of the trigger.
+ Name of the group.
+ the number of rows updated
+
+
+
+ Update the state for a given trigger.
+
+ The DB Connection
+ The name of the trigger.
+ The group containing the trigger.
+ The new state for the trigger.
+ the number of rows updated
+
+
+
+ Update the given trigger to the given new state, if it is in the given
+ old state.
+
+ The DB connection
+ The name of the trigger.
+ The group containing the trigger
+ The new state for the trigger
+ The old state the trigger must be in
+ int the number of rows updated
+
+
+
+ Update the given trigger to the given new state, if it is one of the
+ given old states.
+
+ The DB connection
+ The name of the trigger
+ The group containing the trigger
+ The new state for the trigger
+ One of the old state the trigger must be in
+ One of the old state the trigger must be in
+ One of the old state the trigger must be in
+
+ int the number of rows updated
+
+ SQLException
+
+
+
+ Update the all triggers to the given new state, if they are in one of
+ the given old states AND its next fire time is before the given time.
+
+ The DB connection
+ The new state for the trigger
+ One of the old state the trigger must be in
+ One of the old state the trigger must be in
+ The time before which the trigger's next fire time must be
+ int the number of rows updated
+
+
+
+ Update all triggers in the given group to the given new state, if they
+ are in one of the given old states.
+
+ The DB connection
+ The group containing the trigger
+ The new state for the trigger
+ One of the old state the trigger must be in
+ One of the old state the trigger must be in
+ One of the old state the trigger must be in
+ The number of rows updated
+
+
+
+ Update all of the triggers of the given group to the given new state, if
+ they are in the given old state.
+
+ The DB connection
+ The group containing the triggers
+ The new state for the trigger group
+ The old state the triggers must be in.
+ int the number of rows updated
+
+
+
+ Update the states of all triggers associated with the given job.
+
+ The DB Connection
+ The name of the job.
+ The group containing the job.
+ The new state for the triggers.
+ The number of rows updated
+
+
+
+ Update the states of any triggers associated with the given job, that
+ are the given current state.
+
+ The DB Connection
+ The name of the job
+ The group containing the job
+ The new state for the triggers
+ The old state of the triggers
+ the number of rows updated
+
+
+
+ Delete all of the listeners associated with a given trigger.
+
+ The DB Connection
+ The name of the trigger whose listeners will be deleted
+ The name of the group containing the trigger
+ the number of rows deleted
+
+
+
+ Associate a listener with the given trigger.
+
+ The DB Connectio
+ The trigger
+ The name of the listener to associate with the trigger
+ the number of rows inserted
+
+
+
+ Select the listeners associated with a given trigger.
+
+ The DB Connection
+ The name of the trigger
+ The group containing the trigger
+ array of trigger listener names
+
+
+
+ Delete the simple trigger data for a trigger.
+
+ The DB Connection
+ The name of the trigger
+ The group containing the trigger
+ The number of rows deleted
+
+
+
+ Delete the BLOB trigger data for a trigger.
+
+ The DB Connection
+ The name of the trigger
+ The group containing the trigger
+ The number of rows deleted
+
+
+
+ Delete the cron trigger data for a trigger.
+
+ The DB Connection
+ The name of the trigger
+ The group containing the trigger
+ the number of rows deleted
+
+
+
+ Delete the base trigger data for a trigger.
+
+ The DB Connection
+ The name of the trigger
+ The group containing the trigger
+ the number of rows deleted
+
+
+
+ Select the number of triggers associated with a given job.
+
+ The DB Connection
+ The name of the job
+ The group containing the job
+ the number of triggers for the given job
+
+
+
+ Select the job to which the trigger is associated.
+
+ The DB Connection
+ The name of the trigger
+ The group containing the trigger
+ The load helper.
+
+ The object associated with the given trigger
+
+
+
+
+ Select the stateful jobs which are referenced by triggers in the given
+ trigger group.
+
+ The DB Connection
+ The trigger group.
+ a List of Keys to jobs.
+
+
+
+ Select the triggers for a job>
+
+ The DB Connection
+ The name of the trigger
+ The group containing the trigger
+ an array of objects associated with a given job.
+
+
+
+ Select the triggers for a calendar
+
+ The DB Connection.
+ Name of the calendar.
+
+ An array of objects associated with a given job.
+
+
+
+
+ Select a trigger.
+
+ The DB Connection.
+ The name of the trigger.
+ The group containing the trigger.
+ The object.
+
+
+
+
+ Select a trigger's JobDataMap.
+
+ The DB Connection.
+ The name of the trigger.
+ The group containing the trigger.
+ The of the Trigger, never null, but possibly empty.
+
+
+
+ Select a trigger's state value.
+
+ The DB Connection.
+ The name of the trigger.
+ The group containing the trigger.
+ The object.
+
+
+
+ Select a triggers status (state and next fire time).
+
+ The DB Connection.
+ The name of the trigger.
+ The group containing the trigger.
+ A object, or null
+
+
+
+ Select the total number of triggers stored.
+
+ The DB Connection.
+ The total number of triggers stored.
+
+
+
+ Select all of the trigger group names that are stored.
+
+ The DB Connection.
+ An array of group names.
+
+
+
+ Select all of the triggers contained in a given group.
+
+ The DB Connection.
+ The group containing the triggers.
+ An array of trigger names.
+
+
+
+ Select all of the triggers in a given state.
+
+ The DB Connection.
+ The state the triggers must be in.
+ An array of trigger s.
+
+
+
+ Inserts the paused trigger group.
+
+ The conn.
+ Name of the group.
+
+
+
+
+ Deletes the paused trigger group.
+
+ The conn.
+ Name of the group.
+
+
+
+
+ Deletes all paused trigger groups.
+
+ The conn.
+
+
+
+
+ Determines whether the specified trigger group is paused.
+
+ The conn.
+ Name of the group.
+
+ true if trigger group is paused; otherwise, false.
+
+
+
+
+ Selects the paused trigger groups.
+
+ The DB Connection.
+
+
+
+
+ Determines whether given trigger group already exists.
+
+ The conn.
+ Name of the group.
+
+ true if trigger group exists; otherwise, false.
+
+
+
+
+ Insert a new calendar.
+
+ The DB Connection.
+ The name for the new calendar.
+ The calendar.
+ The number of rows inserted.
+
+
+
+ Update a calendar.
+
+ The DB Connection.
+ The name for the new calendar.
+ The calendar.
+ The number of rows updated.
+
+
+
+ Check whether or not a calendar exists.
+
+ The DB Connection.
+ The name of the calendar.
+ true if the trigger exists, false otherwise.
+
+
+
+ Select a calendar.
+
+ The DB Connection.
+ The name of the calendar.
+ The Calendar.
+
+
+
+ Check whether or not a calendar is referenced by any triggers.
+
+ The DB Connection.
+ The name of the calendar.
+ true if any triggers reference the calendar, false otherwise
+
+
+
+ Delete a calendar.
+
+ The DB Connection
+ The name of the trigger.
+ The number of rows deleted.
+
+
+
+ Select the total number of calendars stored.
+
+ The DB Connection
+ The total number of calendars stored.
+
+
+
+ Select all of the stored calendars.
+
+ The DB Connection
+ An array of calendar names.
+
+
+
+ Select the trigger that will be fired at the given fire time.
+
+ The DB Connection
+ The time that the trigger will be fired.
+
+ A representing the
+ trigger that will be fired at the given fire time, or null if no
+ trigger will be fired at that time
+
+
+
+
+ Insert a fired trigger.
+
+ The DB Connection
+ The trigger.
+ The state that the trigger should be stored in.
+ The job detail.
+ The number of rows inserted.
+
+
+
+ Select the states of all fired-trigger records for a given trigger, or
+ trigger group if trigger name is .
+
+ The DB Connection
+ Name of the trigger.
+ Name of the group.
+ A list of FiredTriggerRecord objects.
+
+
+
+ Select the states of all fired-trigger records for a given job, or job
+ group if job name is .
+
+ The DB Connection
+ Name of the job.
+ Name of the group.
+ A List of FiredTriggerRecord objects.
+
+
+
+ Select the states of all fired-trigger records for a given scheduler
+ instance.
+
+ The DB Connection
+ Name of the instance.
+ A list of FiredTriggerRecord objects.
+
+
+
+ Delete a fired trigger.
+
+ The DB Connection
+ The fired trigger entry to delete.
+ The number of rows deleted.
+
+
+
+ Get the number instances of the identified job currently executing.
+
+ The DB Connection
+ Name of the job.
+ The job group.
+
+ The number instances of the identified job currently executing.
+
+
+
+
+ Insert a scheduler-instance state record.
+
+ The DB Connection
+ The instance id.
+ The check in time.
+ The interval.
+ The number of inserted rows.
+
+
+
+ Delete a scheduler-instance state record.
+
+ The DB Connection
+ The instance id.
+ The number of deleted rows.
+
+
+
+ Update a scheduler-instance state record.
+
+ The DB Connection
+ The instance id.
+ The check in time.
+ The number of updated rows.
+
+
+
+ A List of all current s.
+
+ If instanceId is not null, then only the record for the identified
+ instance will be returned.
+
+
+ The DB Connection
+ The instance id.
+
+
+
+
+ Select the next trigger which will fire to fire between the two given timestamps
+ in ascending order of fire time, and then descending by priority.
+
+ The conn.
+ highest value of of the triggers (exclusive)
+ highest value of of the triggers (inclusive)
+ A (never null, possibly empty) list of the identifiers (Key objects) of the next triggers to be fired.
+
+
+
+ Select the distinct instance names of all fired-trigger records.
+
+
+ This is useful when trying to identify orphaned fired triggers (a
+ fired trigger without a scheduler state record.)
+
+ The conn.
+
+
+
+
+ Counts the misfired triggers in states.
+
+ The conn.
+ The state1.
+ The state2.
+ The ts.
+
+
+
+
+ Selects the misfired triggers in states.
+
+ The conn.
+ The state1.
+ The state2.
+ The ts.
+ The count.
+ The result list.
+
+
+
+
+ Create new StdAdoDelegate instance.
+
+ the logger to use during execution
+ the prefix of all table names
+ The instance id.
+ The db provider.
+
+
+
+ Create new StdAdoDelegate instance.
+
+ the logger to use during execution
+ the prefix of all table names
+ The instance id.
+ The db provider.
+ if set to true [use properties].
+
+
+
+ Insert the job detail record.
+
+ the DB Connection
+ the new state for the triggers
+ the first old state to update
+ the second old state to update
+ number of rows updated
+
+
+
+ Get the names of all of the triggers that have misfired.
+
+ the DB Connection
+ The ts.
+ an array of objects
+
+
+
+ Select all of the triggers in a given state.
+
+ The DB Connection
+ The state the triggers must be in
+ an array of trigger s
+
+
+
+ Get the names of all of the triggers in the given state that have
+ misfired - according to the given timestamp.
+
+ The DB Connection
+ The state.
+ The time stamp.
+ An array of objects
+
+
+
+ Get the names of all of the triggers in the given states that have
+ misfired - according to the given timestamp. No more than count will
+ be returned.
+
+ The conn.
+ The state1.
+ The state2.
+ The ts.
+ The most misfired triggers to return, negative for all
+
+ Output parameter. A List of objects. Must not be null
+
+ Whether there are more misfired triggers left to find beyond the given count.
+
+
+
+ Get the number of triggers in the given states that have
+ misfired - according to the given timestamp.
+
+
+
+
+
+
+
+
+
+ Get the names of all of the triggers in the given group and state that
+ have misfired.
+
+ The DB Connection
+ Name of the group.
+ The state.
+ The timestamp.
+ an array of objects
+
+
+
+ Select all of the triggers for jobs that are requesting recovery. The
+ returned trigger objects will have unique "recoverXXX" trigger names and
+ will be in the
+ trigger group.
+
+
+ In order to preserve the ordering of the triggers, the fire time will be
+ set from the ColumnFiredTime column in the TableFiredTriggers
+ table. The caller is responsible for calling
+ on each returned trigger. It is also up to the caller to insert the
+ returned triggers to ensure that they are fired.
+
+ The DB Connection
+ an array of objects
+
+
+
+ Delete all fired triggers.
+
+ The DB Connection.
+ The number of rows deleted.
+
+
+
+ Delete all fired triggers of the given instance.
+
+ The DB Connection
+ The instance id.
+ The number of rows deleted
+
+
+
+ Insert the job detail record.
+
+ The DB Connection.
+ The job to insert.
+ Number of rows inserted.
+
+
+
+ Gets the db presentation for boolean value. Subclasses can overwrite this behaviour.
+
+ Value to map to database.
+
+
+
+
+ Update the job detail record.
+
+ The DB Connection.
+ The job to update.
+ Number of rows updated.
+
+
+
+ Get the names of all of the triggers associated with the given job.
+
+ The DB Connection.
+ The name of the job.
+ The group containing the job.
+ An array of objects
+
+
+
+ Delete all job listeners for the given job.
+
+ The DB Connection.
+ The name of the job.
+ The group containing the job.
+ The number of rows deleted.
+
+
+
+ Delete the job detail record for the given job.
+
+ the DB Connection
+ the name of the job
+ the group containing the job
+ the number of rows deleted
+
+
+
+ Check whether or not the given job is stateful.
+
+ the DB Connection
+ the name of the job
+ the group containing the job
+
+ true if the job exists and is stateful, false otherwise
+
+
+
+
+ Check whether or not the given job exists.
+
+ the DB Connection
+ the name of the job
+ the group containing the job
+ true if the job exists, false otherwise
+
+
+
+ Update the job data map for the given job.
+
+ The conn.
+ the job to update
+ the number of rows updated
+
+
+
+ Associate a listener with a job.
+
+ The DB Connection.
+ The job to associate with the listener.
+ The listener to insert.
+ The number of rows inserted.
+
+
+
+ Get all of the listeners for a given job.
+
+ The DB Connection.
+ The job name whose listeners are wanted.
+ The group containing the job.
+ Array of listener names.
+
+
+
+ Select the JobDetail object for a given job name / group name.
+
+ The DB Connection.
+ The job name whose listeners are wanted.
+ The group containing the job.
+ The load helper.
+ The populated JobDetail object.
+
+
+ build Map from java.util.Properties encoding.
+
+
+
+ Select the total number of jobs stored.
+
+ The DB Connection.
+ The total number of jobs stored.
+
+
+
+ Select all of the job group names that are stored.
+
+ The DB Connection.
+ An array of group names.
+
+
+
+ Select all of the jobs contained in a given group.
+
+ The DB Connection.
+ The group containing the jobs.
+ An array of job names.
+
+
+
+ Insert the base trigger data.
+
+ the DB Connection
+ the trigger to insert
+ the state that the trigger should be stored in
+ The job detail.
+ the number of rows inserted
+
+
+
+ Insert the simple trigger data.
+
+ The DB Connection.
+ The trigger to insert.
+ The number of rows inserted.
+
+
+
+ Insert the cron trigger data.
+
+ the DB Connection
+ the trigger to insert
+ the number of rows inserted
+
+
+
+ Insert the blob trigger data.
+
+ The DB Connection.
+ The trigger to insert.
+ The number of rows inserted.
+
+
+
+ Update the base trigger data.
+
+ The DB Connection.
+ The trigger to insert.
+ The state that the trigger should be stored in.
+ The job detail.
+ The number of rows updated.
+
+
+
+ Update the simple trigger data.
+
+ The DB Connection.
+ The trigger to insert.
+ The number of rows updated.
+
+
+
+ Update the cron trigger data.
+
+ The DB Connection.
+ The trigger to insert.
+ The number of rows updated.
+
+
+
+ Update the blob trigger data.
+
+ The DB Connection.
+ The trigger to insert.
+ The number of rows updated.
+
+
+
+ Check whether or not a trigger exists.
+
+ The DB Connection.
+ The name of the trigger.
+ The group containing the trigger.
+ true if the trigger exists, false otherwise
+
+
+
+ Update the state for a given trigger.
+
+ The DB Connection.
+ The name of the trigger.
+ The group containing the trigger.
+ The new state for the trigger.
+ The number of rows updated.
+
+
+
+ Update the given trigger to the given new state, if it is one of the
+ given old states.
+
+ The DB connection.
+ The name of the trigger.
+ The group containing the trigger.
+ The new state for the trigger.
+ One of the old state the trigger must be in.
+ One of the old state the trigger must be in.
+ One of the old state the trigger must be in.
+ The number of rows updated.
+
+
+
+ Update the all triggers to the given new state, if they are in one of
+ the given old states AND its next fire time is before the given time.
+
+ The DB connection
+ The new state for the trigger
+ One of the old state the trigger must be in
+ One of the old state the trigger must be in
+ The time before which the trigger's next fire time must be
+ int the number of rows updated
+
+
+
+ Update all triggers in the given group to the given new state, if they
+ are in one of the given old states.
+
+ The DB connection.
+ The group containing the trigger.
+ The new state for the trigger.
+ One of the old state the trigger must be in.
+ One of the old state the trigger must be in.
+ One of the old state the trigger must be in.
+ The number of rows updated.
+
+
+
+ Update the given trigger to the given new state, if it is in the given
+ old state.
+
+ the DB connection
+ the name of the trigger
+ the group containing the trigger
+ the new state for the trigger
+ the old state the trigger must be in
+ int the number of rows updated
+
+
+
+ Update all of the triggers of the given group to the given new state, if
+ they are in the given old state.
+
+ the DB connection
+ the group containing the triggers
+ the new state for the trigger group
+ the old state the triggers must be in
+ int the number of rows updated
+
+
+
+ Update the states of all triggers associated with the given job.
+
+ the DB Connection
+ the name of the job
+ the group containing the job
+ the new state for the triggers
+ the number of rows updated
+
+
+
+ Updates the state of the trigger states for job from other.
+
+ The conn.
+ Name of the job.
+ Name of the group.
+ The state.
+ The old state.
+
+
+
+
+ Delete all of the listeners associated with a given trigger.
+
+ the DB Connection
+ the name of the trigger whose listeners will be deleted
+ the name of the group containing the trigger
+ the number of rows deleted
+
+
+
+ Associate a listener with the given trigger.
+
+ the DB Connection
+ the trigger
+ the name of the listener to associate with the trigger
+ the number of rows inserted
+
+
+
+ Select the listeners associated with a given trigger.
+
+ the DB Connection
+ the name of the trigger
+ the group containing the trigger
+
+ array of trigger listener names
+
+
+
+
+ Delete the simple trigger data for a trigger.
+
+ the DB Connection
+ the name of the trigger
+ the group containing the trigger
+ the number of rows deleted
+
+
+
+ Delete the cron trigger data for a trigger.
+
+ the DB Connection
+ the name of the trigger
+ the group containing the trigger
+ the number of rows deleted
+
+
+
+ Delete the cron trigger data for a trigger.
+
+ the DB Connection
+ the name of the trigger
+ the group containing the trigger
+ the number of rows deleted
+
+
+
+ Delete the base trigger data for a trigger.
+
+ the DB Connection
+ the name of the trigger
+ the group containing the trigger
+ the number of rows deleted
+
+
+
+ Select the number of triggers associated with a given job.
+
+ the DB Connection
+ the name of the job
+ the group containing the job
+ the number of triggers for the given job
+
+
+
+ Select the job to which the trigger is associated.
+
+ the DB Connection
+ the name of the trigger
+ the group containing the trigger
+ The load helper.
+ The object associated with the given trigger
+
+
+
+ Select the triggers for a job
+
+ the DB Connection
+ the name of the trigger
+ the group containing the trigger
+
+ an array of objects
+ associated with a given job.
+
+
+
+
+ Select the triggers for a calendar
+
+ The DB Connection.
+ Name of the calendar.
+
+ An array of objects associated with a given job.
+
+
+
+
+ Selects the stateful jobs of trigger group.
+
+ The database connection.
+ Name of the group.
+
+
+
+
+ Select a trigger.
+
+ the DB Connection
+ the name of the trigger
+ the group containing the trigger
+ The object
+
+
+
+ Select a trigger's JobDataMap.
+
+ the DB Connection
+ the name of the trigger
+ the group containing the trigger
+ The of the Trigger, never null, but possibly empty.
+
+
+
+ Select a trigger's state value.
+
+ the DB Connection
+ the name of the trigger
+ the group containing the trigger
+ The object
+
+
+
+ Select a trigger status (state and next fire time).
+
+ the DB Connection
+ the name of the trigger
+ the group containing the trigger
+
+ a object, or null
+
+
+
+
+ Select the total number of triggers stored.
+
+ the DB Connection
+ the total number of triggers stored
+
+
+
+ Select all of the trigger group names that are stored.
+
+ the DB Connection
+
+ an array of group names
+
+
+
+
+ Select all of the triggers contained in a given group.
+
+ the DB Connection
+ the group containing the triggers
+
+ an array of trigger names
+
+
+
+
+ Inserts the paused trigger group.
+
+ The conn.
+ Name of the group.
+
+
+
+
+ Deletes the paused trigger group.
+
+ The conn.
+ Name of the group.
+
+
+
+
+ Deletes all paused trigger groups.
+
+ The conn.
+
+
+
+
+ Determines whether the specified trigger group is paused.
+
+ The conn.
+ Name of the group.
+
+ true if trigger group is paused; otherwise, false.
+
+
+
+
+ Determines whether given trigger group already exists.
+
+ The conn.
+ Name of the group.
+
+ true if trigger group exists; otherwise, false.
+
+
+
+
+ Insert a new calendar.
+
+ the DB Connection
+ The name for the new calendar.
+ The calendar.
+ the number of rows inserted
+ IOException
+
+
+
+ Update a calendar.
+
+ the DB Connection
+ The name for the new calendar.
+ The calendar.
+ the number of rows updated
+ IOException
+
+
+
+ Check whether or not a calendar exists.
+
+ the DB Connection
+ The name of the calendar.
+
+ true if the trigger exists, false otherwise
+
+
+
+
+ Select a calendar.
+
+ the DB Connection
+ The name of the calendar.
+ the Calendar
+ ClassNotFoundException
+ IOException
+
+
+
+ Check whether or not a calendar is referenced by any triggers.
+
+ the DB Connection
+ The name of the calendar.
+
+ true if any triggers reference the calendar, false otherwise
+
+
+
+
+ Delete a calendar.
+
+ the DB Connection
+ The name of the trigger.
+ the number of rows deleted
+
+
+
+ Select the total number of calendars stored.
+
+ the DB Connection
+ the total number of calendars stored
+
+
+
+ Select all of the stored calendars.
+
+ the DB Connection
+
+ an array of calendar names
+
+
+
+
+ Select the trigger that will be fired at the given fire time.
+
+ the DB Connection
+ the time that the trigger will be fired
+
+ a representing the
+ trigger that will be fired at the given fire time, or null if no
+ trigger will be fired at that time
+
+
+
+
+ Select the next trigger which will fire to fire between the two given timestamps
+ in ascending order of fire time, and then descending by priority.
+
+ The conn.
+ highest value of of the triggers (exclusive)
+ highest value of of the triggers (inclusive)
+ A (never null, possibly empty) list of the identifiers (Key objects) of the next triggers to be fired.
+
+
+
+ Gets the select next trigger to acquire SQL clause.
+ This can be overriden for a more performant, result limiting
+ SQL. For Example SQL Server, MySQL and SQLite support limiting returned rows.
+
+
+
+
+
+ Insert a fired trigger.
+
+ the DB Connection
+ the trigger
+ the state that the trigger should be stored in
+ The job.
+ the number of rows inserted
+
+
+
+ Select the states of all fired-trigger records for a given trigger, or
+ trigger group if trigger name is .
+
+ The DB connection.
+ Name of the trigger.
+ Name of the group.
+ a List of objects.
+
+
+
+ Select the states of all fired-trigger records for a given job, or job
+ group if job name is .
+
+ The DB connection.
+ Name of the job.
+ Name of the group.
+ a List of objects.
+
+
+
+ Select the states of all fired-trigger records for a given scheduler
+ instance.
+
+ The DB Connection
+ Name of the instance.
+ A list of FiredTriggerRecord objects.
+
+
+
+ Select the distinct instance names of all fired-trigger records.
+
+ The conn.
+
+
+ This is useful when trying to identify orphaned fired triggers (a
+ fired trigger without a scheduler state record.)
+
+
+
+
+ Delete a fired trigger.
+
+ the DB Connection
+ the fired trigger entry to delete
+ the number of rows deleted
+
+
+
+ Selects the job execution count.
+
+ The DB connection.
+ Name of the job.
+ The job group.
+
+
+
+
+ Delete all volatile fired triggers.
+
+ The DB Connection
+ The number of rows deleted
+
+
+
+ Inserts the state of the scheduler.
+
+ The conn.
+ The instance id.
+ The check in time.
+ The interval.
+
+
+
+
+ Deletes the state of the scheduler.
+
+ The database connection.
+ The instance id.
+
+
+
+
+ Updates the state of the scheduler.
+
+ The database connection.
+ The instance id.
+ The check in time.
+
+
+
+
+ A List of all current s.
+
+ If instanceId is not null, then only the record for the identified
+ instance will be returned.
+
+
+ The DB Connection
+ The instance id.
+
+
+
+
+ Replace the table prefix in a query by replacing any occurrences of
+ "{0}" with the table prefix.
+
+ The unsubstitued query
+ The query, with proper table prefix substituted
+
+
+
+ Create a serialized version of an Object.
+
+ the object to serialize
+ Serialized object as byte array.
+
+
+
+ Remove the transient data from and then create a serialized
+ version of a and returns the underlying bytes.
+
+ The data.
+ the serialized data as byte array
+
+
+
+ serialize
+
+ The data.
+
+
+
+
+ Convert the JobDataMap into a list of properties.
+
+
+
+
+ Convert the JobDataMap into a list of properties.
+
+
+
+
+ This method should be overridden by any delegate subclasses that need
+ special handling for BLOBs. The default implementation uses standard
+ ADO.NET operations.
+
+ The data reader, already queued to the correct row.
+ The column index for the BLOB.
+ The deserialized object from the DataReader BLOB.
+
+
+
+ Get the names of all of the triggers that are volatile.
+
+ The DB Connection
+ An array of objects.
+
+
+
+ Get the names of all of the jobs that are volatile.
+
+ The DB Connection
+ An array of objects.
+
+
+
+ This method should be overridden by any delegate subclasses that need
+ special handling for BLOBs for job details.
+
+ The result set, already queued to the correct row.
+ The column index for the BLOB.
+ The deserialized Object from the ResultSet BLOB.
+
+
+
+ Selects the paused trigger groups.
+
+ The DB Connection.
+
+
+
+
+ Gets the triggers to acquire limit.
+
+ The triggers to acquire limit.
+
+
+
+ Initializes a new instance of the class.
+
+ the logger to use during execution
+ the prefix of all table names
+ The instance id.
+ The db provider.
+
+
+
+ Initializes a new instance of the class.
+
+ The logger.
+ The table prefix.
+ The instance id.
+ The db provider.
+ if set to true [use properties].
+
+
+
+ Creates the SQL for select next trigger to acquire.
+
+
+
+
+ Gets the select next trigger to acquire SQL clause.
+ Firebird specific version with FIRST functionality
+
+
+
+
+
+ Conveys the state of a fired-trigger record.
+
+ James House
+
+
+
+ Gets or sets the fire instance id.
+
+ The fire instance id.
+
+
+
+ Gets or sets the fire timestamp.
+
+ The fire timestamp.
+
+
+
+ Gets or sets a value indicating whether [job is stateful].
+
+ true if [job is stateful]; otherwise, false.
+
+
+
+ Gets or sets the job key.
+
+ The job key.
+
+
+
+ Gets or sets the scheduler instance id.
+
+ The scheduler instance id.
+
+
+
+ Gets or sets the trigger key.
+
+ The trigger key.
+
+
+
+ Gets or sets the state of the fire instance.
+
+ The state of the fire instance.
+
+
+
+ Gets or sets a value indicating whether [job requests recovery].
+
+ true if [job requests recovery]; otherwise, false.
+
+
+
+ Gets or sets a value indicating whether [trigger is volatile].
+
+ true if [trigger is volatile]; otherwise, false.
+
+
+
+ Gets or sets the priority.
+
+ The priority.
+
+
+
+ Exception class for when a driver delegate cannot be found for a given
+ configuration, or lack thereof.
+
+ Jeffrey Wescott
+
+
+
+
+ Base class for exceptions thrown by the Quartz .
+
+
+ SchedulerExceptions may contain a reference to another
+ , which was the underlying cause of the SchedulerException.
+
+ James House
+
+
+
+ Initializes a new instance of the class.
+
+
+
+
+ Initializes a new instance of the class.
+
+ The MSG.
+
+
+
+ Initializes a new instance of the class.
+
+ The that holds the serialized object data about the exception being thrown.
+ The that contains contextual information about the source or destination.
+ The class name is null or is zero (0).
+ The info parameter is null.
+
+
+
+ Initializes a new instance of the class.
+
+ The MSG.
+ The error code.
+
+
+
+ Initializes a new instance of the class.
+
+ The cause.
+
+
+
+ Initializes a new instance of the class.
+
+ The MSG.
+ The cause.
+
+
+
+ Initializes a new instance of the class.
+
+ The MSG.
+ The cause.
+ The error code.
+
+
+
+ Creates and returns a string representation of the current exception.
+
+
+ A string representation of the current exception.
+
+
+
+
+
+ Return the exception that is the underlying cause of this exception.
+ This may be used to find more detail about the cause of the error.
+
+ The underlying exception, or if there is not
+ one.
+
+
+
+
+ Get the error code associated with this exception.
+ This may be used to find more detail about the cause of the error.
+
+
+ One of the ERR_XXX constants defined in this class.
+
+
+
+
+ Determine if the specified error code is in the
+ category of errors.
+
+
+
+
+
+ Determine if the specified error code is in the
+ category of errors.
+
+
+
+
+
+ Determine if the specified error code is in the
+ category of errors.
+
+
+
+
+ Determine if the specified error code is in the
+ category of errors.
+
+
+
+
+ Determine if the specified error code is in the
+ category of errors.
+
+
+
+
+ Determine if the specified error code is in the
+ category of errors.
+
+
+
+
+ Initializes a new instance of the class.
+
+ The that holds the serialized object data about the exception being thrown.
+ The that contains contextual information about the source or destination.
+ The class name is null or is zero (0).
+ The info parameter is null.
+
+
+
+ is meant to be used in an application-server
+ or other software framework environment that provides
+ container-managed-transactions. No commit / rollback will be handled by this class.
+
+
+ If you need commit / rollback, use
+ instead.
+
+ Jeffrey Wescott
+ James House
+ Srinivas Venkatarangaiah
+
+
+
+ Contains base functionality for ADO.NET-based JobStore implementations.
+
+ Jeffrey Wescott
+ James House
+ Marko Lahma (.NET)
+
+
+
+ The interface to be implemented by classes that want to provide a
+ and storage mechanism for the
+ 's use.
+
+
+ Storage of s and s should be keyed
+ on the combination of their name and group for uniqueness.
+
+
+
+
+
+
+
+ James House
+
+
+
+ Called by the QuartzScheduler before the is
+ used, in order to give the it a chance to Initialize.
+
+
+
+
+ Called by the QuartzScheduler to inform the that
+ the scheduler has started.
+
+
+
+
+ Called by the QuartzScheduler to inform the that
+ it should free up all of it's resources because the scheduler is
+ shutting down.
+
+
+
+
+ Store the given and .
+
+ The scheduling context.
+ The to be stored.
+ The to be stored.
+ ObjectAlreadyExistsException
+
+
+
+ returns true if the given JobGroup
+ is paused
+
+
+
+
+
+
+
+ returns true if the given TriggerGroup
+ is paused
+
+
+
+
+
+
+
+ Store the given .
+
+ The context.
+ The to be stored.
+
+ If , any existing in the
+ with the same name and group should be
+ over-written.
+
+
+
+
+ Remove (delete) the with the given
+ name, and any s that reference
+ it.
+
+
+ If removal of the results in an empty group, the
+ group should be removed from the 's list of
+ known group names.
+
+ The context.
+ The name of the to be removed.
+ The group name of the to be removed.
+
+ if a with the given name and
+ group was found and removed from the store.
+
+
+
+
+ Retrieve the for the given
+ .
+
+ The context.
+ The name of the to be retrieved.
+ The group name of the to be retrieved.
+
+ The desired , or null if there is no match.
+
+
+
+
+ Store the given .
+
+ The context.
+ The to be stored.
+ If , any existing in
+ the with the same name and group should
+ be over-written.
+ ObjectAlreadyExistsException
+
+
+
+ Remove (delete) the with the
+ given name.
+
+
+
+ If removal of the results in an empty group, the
+ group should be removed from the 's list of
+ known group names.
+
+
+ If removal of the results in an 'orphaned'
+ that is not 'durable', then the should be deleted
+ also.
+
+
+ The context.
+ The name of the to be removed.
+ The group name of the to be removed.
+
+ if a with the given
+ name and group was found and removed from the store.
+
+
+
+
+ Remove (delete) the with the
+ given name, and store the new given one - which must be associated
+ with the same job.
+
+ The context.
+ The name of the to be removed.
+ The group name of the to be removed.
+ The new to be stored.
+
+ if a with the given
+ name and group was found and removed from the store.
+
+
+
+
+ Retrieve the given .
+
+ The context.
+ The name of the to be retrieved.
+ The group name of the to be retrieved.
+
+ The desired , or null if there is no
+ match.
+
+
+
+
+ Store the given .
+
+ The context.
+ The name.
+ The to be stored.
+ If , any existing
+ in the with the same name and group
+ should be over-written.
+ If , any s existing
+ in the that reference an existing
+ Calendar with the same name with have their next fire time
+ re-computed with the new .
+ ObjectAlreadyExistsException
+
+
+
+ Remove (delete) the with the
+ given name.
+
+
+ If removal of the would result in
+ s pointing to non-existent calendars, then a
+ will be thrown.
+
+ The context.
+ The name of the to be removed.
+
+ if a with the given name
+ was found and removed from the store.
+
+
+
+
+ Retrieve the given .
+
+ The context.
+ The name of the to be retrieved.
+
+ The desired , or null if there is no
+ match.
+
+
+
+
+ Get the number of s that are
+ stored in the .
+
+ The context.
+
+
+
+
+ Get the number of s that are
+ stored in the .
+
+ The context.
+
+
+
+
+ Get the number of s that are
+ stored in the .
+
+ The context.
+
+
+
+
+ Get the names of all of the s that
+ have the given group name.
+
+ If there are no jobs in the given group name, the result should be a
+ zero-length array (not ).
+
+
+ The CTX.
+ Name of the group.
+
+
+
+
+ Get the names of all of the s
+ that have the given group name.
+
+ If there are no triggers in the given group name, the result should be a
+ zero-length array (not ).
+
+
+
+
+
+ Get the names of all of the
+ groups.
+
+ If there are no known group names, the result should be a zero-length
+ array (not ).
+
+
+
+
+
+ Get the names of all of the
+ groups.
+
+ If there are no known group names, the result should be a zero-length
+ array (not ).
+
+
+
+
+
+ Get the names of all of the s
+ in the .
+
+
+ If there are no Calendars in the given group name, the result should be
+ a zero-length array (not ).
+
+
+
+
+
+ Get all of the Triggers that are associated to the given Job.
+
+
+ If there are no matches, a zero-length array should be returned.
+
+
+
+
+ Get the current state of the identified .
+
+
+
+
+
+
+
+
+
+ Pause the with the given name.
+
+
+
+
+ Pause all of the s in the
+ given group.
+
+
+ The JobStore should "remember" that the group is paused, and impose the
+ pause on any new triggers that are added to the group while the group is
+ paused.
+
+
+
+
+ Pause the with the given name - by
+ pausing all of its current s.
+
+
+
+
+ Pause all of the s in the given
+ group - by pausing all of their s.
+
+ The JobStore should "remember" that the group is paused, and impose the
+ pause on any new jobs that are added to the group while the group is
+ paused.
+
+
+
+
+
+
+
+ Resume (un-pause) the with the
+ given name.
+
+
+ If the missed one or more fire-times, then the
+ 's misfire instruction will be applied.
+
+
+
+
+
+
+
+ Resume (un-pause) all of the s
+ in the given group.
+
+ If any missed one or more fire-times, then the
+ 's misfire instruction will be applied.
+
+
+
+
+
+ Gets the paused trigger groups.
+
+ The context.
+
+
+
+
+ Resume (un-pause) the with the
+ given name.
+
+ If any of the 's s missed one
+ or more fire-times, then the 's misfire
+ instruction will be applied.
+
+
+
+
+
+ Resume (un-pause) all of the s in
+ the given group.
+
+ If any of the s had s that
+ missed one or more fire-times, then the 's
+ misfire instruction will be applied.
+
+
+
+
+
+ Pause all triggers - equivalent of calling
+ on every group.
+
+ When is called (to un-pause), trigger misfire
+ instructions WILL be applied.
+
+
+
+
+
+
+ Resume (un-pause) all triggers - equivalent of calling
+ on every group.
+
+ If any missed one or more fire-times, then the
+ 's misfire instruction will be applied.
+
+
+
+
+
+
+
+ Get a handle to the next trigger to be fired, and mark it as 'reserved'
+ by the calling scheduler.
+
+ The context.
+ If > 0, the JobStore should only return a Trigger
+ that will fire no later than the time represented in this value as
+ milliseconds.
+
+
+
+
+
+
+ Inform the that the scheduler no longer plans to
+ fire the given , that it had previously acquired
+ (reserved).
+
+
+
+
+ Inform the that the scheduler is now firing the
+ given (executing its associated ),
+ that it had previously acquired (reserved).
+
+ null if the trigger or it's job or calendar no longer exist, or
+ if the trigger was not successfully put into the 'executing'
+ state.
+
+
+
+
+ Inform the that the scheduler has completed the
+ firing of the given (and the execution its
+ associated ), and that the
+ in the given should be updated if the
+ is stateful.
+
+
+
+
+ Supports the persistence.
+
+
+
+
+
+ Initializes a new instance of the class.
+
+
+
+
+ Gets the connection and starts a new transaction.
+
+
+
+
+
+ Called by the QuartzScheduler before the is
+ used, in order to give it a chance to Initialize.
+
+
+
+
+
+
+
+ Called by the QuartzScheduler to inform the that
+ it should free up all of it's resources because the scheduler is
+ shutting down.
+
+
+
+
+ Removes all volatile data.
+
+
+
+
+ Removes all volatile data.
+
+
+
+
+ Will recover any failed or misfired jobs and clean up the data store as
+ appropriate.
+
+
+
+
+ Will recover any failed or misfired jobs and clean up the data store as
+ appropriate.
+
+
+
+
+ Store the given and .
+
+ SchedulingContext
+ Job to be stored.
+ Trigger to be stored.
+
+
+
+ returns true if the given JobGroup
+ is paused
+
+
+
+
+
+
+
+ returns true if the given TriggerGroup
+ is paused
+
+
+
+
+
+
+
+ Stores the given .
+
+
+ The to be stored.
+
+ If , any existing in the
+ with the same name & group should be over-written.
+
+
+
+
+ Insert or update a job.
+
+
+
+
+
+ Check existence of a given job.
+
+
+
+
+ Store the given .
+
+
+ The to be stored.
+
+ If , any existing in
+ the with the same name & group should
+ be over-written.
+
+
+ if a with the same name/group already
+ exists, and replaceExisting is set to false.
+
+
+
+
+ Insert or update a trigger.
+
+
+
+
+ Check existence of a given trigger.
+
+
+
+
+ Remove (delete) the with the given
+ name, and any s that reference
+ it.
+
+
+
+ If removal of the results in an empty group, the
+ group should be removed from the 's list of
+ known group names.
+
+
+ The name of the to be removed.
+ The group name of the to be removed.
+
+ if a with the given name &
+ group was found and removed from the store.
+
+
+
+
+ Delete a job and its listeners.
+
+
+
+
+
+
+ Delete a trigger, its listeners, and its Simple/Cron/BLOB sub-table entry.
+
+
+
+
+
+
+
+ Retrieve the for the given
+ .
+
+ The name of the to be retrieved.
+ The group name of the to be retrieved.
+ The desired , or null if there is no match.
+
+
+
+ Remove (delete) the with the
+ given name.
+
+
+
+
+ If removal of the results in an empty group, the
+ group should be removed from the 's list of
+ known group names.
+
+
+
+ If removal of the results in an 'orphaned'
+ that is not 'durable', then the should be deleted
+ also.
+
+
+ The name of the to be removed.
+ The group name of the to be removed.
+
+ if a with the given
+ name & group was found and removed from the store.
+
+
+
+
+
+
+
+ Retrieve the given .
+
+ The name of the to be retrieved.
+ The group name of the to be retrieved.
+ The desired , or null if there is no match.
+
+
+
+ Get the current state of the identified .
+
+
+
+
+
+
+
+
+
+ Gets the state of the trigger.
+
+ The conn.
+ The CTXT.
+ Name of the trigger.
+ Name of the group.
+
+
+
+
+ Store the given .
+
+ The name of the calendar.
+ The to be stored.
+
+ If , any existing
+ in the with the same name & group
+ should be over-written.
+
+
+ if a with the same name already
+ exists, and replaceExisting is set to false.
+
+
+
+
+ Remove (delete) the with the given name.
+
+
+ If removal of the would result in
+ s pointing to non-existent calendars, then a
+ will be thrown.
+
+ The name of the to be removed.
+
+ if a with the given name
+ was found and removed from the store.
+
+
+
+
+ Retrieve the given .
+
+ The name of the to be retrieved.
+ The desired , or null if there is no match.
+
+
+
+ Get the number of s that are
+ stored in the .
+
+
+
+
+ Get the number of s that are
+ stored in the .
+
+
+
+
+ Get the number of s that are
+ stored in the .
+
+
+
+
+ Get the names of all of the s that
+ have the given group name.
+
+
+ If there are no jobs in the given group name, the result should be a
+ zero-length array (not ).
+
+
+
+
+ Get the names of all of the s
+ that have the given group name.
+
+
+ If there are no triggers in the given group name, the result should be a
+ zero-length array (not ).
+
+
+
+
+ Get the names of all of the
+ groups.
+
+
+
+ If there are no known group names, the result should be a zero-length
+ array (not ).
+
+
+
+
+ Get the names of all of the
+ groups.
+
+
+
+ If there are no known group names, the result should be a zero-length
+ array (not ).
+
+
+
+
+ Get the names of all of the s
+ in the .
+
+
+ If there are no Calendars in the given group name, the result should be
+ a zero-length array (not ).
+
+
+
+
+ Get all of the Triggers that are associated to the given Job.
+
+
+ If there are no matches, a zero-length array should be returned.
+
+
+
+
+ Pause the with the given name.
+
+
+
+
+
+ Pause the with the given name.
+
+
+
+
+
+ Pause the with the given name - by
+ pausing all of its current s.
+
+
+
+
+
+ Pause all of the s in the given
+ group - by pausing all of their s.
+
+
+
+
+
+ Determines if a Trigger for the given job should be blocked.
+ State can only transition to StatePausedBlocked/StateBlocked from
+ StatePaused/StateWaiting respectively.
+
+ StatePausedBlocked, StateBlocked, or the currentState.
+
+
+
+ Resume (un-pause) the with the
+ given name.
+
+
+ If the missed one or more fire-times, then the
+ 's misfire instruction will be applied.
+
+
+
+
+
+ Resume (un-pause) the with the
+ given name.
+
+
+ If any of the 's s missed one
+ or more fire-times, then the 's misfire
+ instruction will be applied.
+
+
+
+
+
+ Resume (un-pause) all of the s in
+ the given group.
+
+
+ If any of the s had s that
+ missed one or more fire-times, then the 's
+ misfire instruction will be applied.
+
+
+
+
+
+ Pause all of the s in the given group.
+
+
+
+
+
+ Pause all of the s in the given group.
+
+
+
+
+
+ Pause all of the s in the
+ given group.
+
+
+
+
+
+ Resume (un-pause) all of the s
+ in the given group.
+
+ If any missed one or more fire-times, then the
+ 's misfire instruction will be applied.
+
+
+
+
+
+
+ Pause all triggers - equivalent of calling
+ on every group.
+
+ When is called (to un-pause), trigger misfire
+ instructions WILL be applied.
+
+
+
+
+
+
+
+ Resume (un-pause) all triggers - equivalent of calling
+ on every group.
+
+
+ If any missed one or more fire-times, then the
+ 's misfire instruction will be applied.
+
+
+
+
+
+ Resume (un-pause) all triggers - equivalent of calling
+ on every group.
+
+ If any missed one or more fire-times, then the
+ 's misfire instruction will be applied.
+
+
+
+
+
+
+ Get a handle to the next N triggers to be fired, and mark them as 'reserved'
+ by the calling scheduler.
+
+
+
+
+
+ Inform the that the scheduler no longer plans to
+ fire the given , that it had previously acquired
+ (reserved).
+
+
+
+
+ Inform the that the scheduler has completed the
+ firing of the given (and the execution its
+ associated ), and that the
+ in the given should be updated if the
+ is stateful.
+
+
+
+
+ Get a list of all scheduler instances in the cluster that may have failed.
+ This includes this scheduler if it is checking in for the first time.
+
+
+
+
+ Create dummy objects for fired triggers
+ that have no scheduler state record. Checkin timestamp and interval are
+ left as zero on these dummy objects.
+
+ List of all current s
+
+
+
+ Cleanup the given database connection. This means restoring
+ any modified auto commit or transaction isolation connection
+ attributes, and then closing the underlying connection.
+
+
+
+ This is separate from closeConnection() because the Spring
+ integration relies on being able to overload closeConnection() and
+ expects the same connection back that it originally returned
+ from the datasource.
+
+
+
+
+
+ Closes the supplied connection.
+
+ (Optional)
+
+
+
+ Rollback the supplied connection.
+
+ (Optional)
+
+ JobPersistenceException thrown if a SQLException occurs when the
+ connection is rolled back
+
+
+
+
+ Commit the supplied connection.
+
+ The CTH.
+ if set to true opens a new transaction.
+ JobPersistenceException thrown if a SQLException occurs when the
+
+
+
+ Execute the given callback in a transaction. Depending on the JobStore,
+ the surrounding transaction may be assumed to be already present
+ (managed).
+
+
+ This method just forwards to ExecuteInLock() with a null lockName.
+
+
+
+
+
+ Execute the given callback having aquired the given lock.
+ Depending on the JobStore, the surrounding transaction may be
+ assumed to be already present (managed). This version is just a
+ handy wrapper around executeInLock that doesn't require a return
+ value.
+
+
+ The name of the lock to aquire, for example
+ "TRIGGER_ACCESS". If null, then no lock is aquired, but the
+ lockCallback is still executed in a transaction.
+
+
+
+
+
+ Execute the given callback having aquired the given lock.
+ Depending on the JobStore, the surrounding transaction may be
+ assumed to be already present (managed).
+
+
+ The name of the lock to aquire, for example
+ "TRIGGER_ACCESS". If null, then no lock is aquired, but the
+ lockCallback is still executed in a transaction.
+
+
+
+
+ Execute the given callback having optionally aquired the given lock.
+ This uses the non-managed transaction connection. This version is just a
+ handy wrapper around executeInNonManagedTXLock that doesn't require a return
+ value.
+
+
+ The name of the lock to aquire, for example
+ "TRIGGER_ACCESS". If null, then no lock is aquired, but the
+ lockCallback is still executed in a non-managed transaction.
+
+
+
+
+
+ Execute the given callback having optionally aquired the given lock.
+ This uses the non-managed transaction connection.
+
+
+ The name of the lock to aquire, for example
+ "TRIGGER_ACCESS". If null, then no lock is aquired, but the
+ lockCallback is still executed in a non-managed transaction.
+
+
+
+
+ Get or set the datasource name.
+
+
+
+
+ Gets the log.
+
+ The log.
+
+
+
+ Get or sets the prefix that should be pre-pended to all table names.
+
+
+
+
+ Set whether string-only properties will be handled in JobDataMaps.
+
+
+
+
+ Get or set the instance Id of the Scheduler (must be unique within a cluster).
+
+
+
+
+ Get or set the instance Id of the Scheduler (must be unique within this server instance).
+
+
+
+
+ Get or set whether this instance is part of a cluster.
+
+
+
+
+ Get or set the frequency at which this instance "checks-in"
+ with the other instances of the cluster. -- Affects the rate of
+ detecting failed instances.
+
+
+
+
+ Get or set the maximum number of misfired triggers that the misfire handling
+ thread will try to recover at one time (within one transaction). The
+ default is 20.
+
+
+
+
+ Gets or sets the database retry interval.
+
+ The db retry interval.
+
+
+
+ Get or set whether this instance should use database-based thread
+ synchronization.
+
+
+
+
+ Whether or not to obtain locks when inserting new jobs/triggers.
+ Defaults to , which is safest - some db's (such as
+ MS SQLServer) seem to require this to avoid deadlocks under high load,
+ while others seem to do fine without.
+
+
+ Setting this property to will provide a
+ significant performance increase during the addition of new jobs
+ and triggers.
+
+
+
+
+ The time span by which a trigger must have missed its
+ next-fire-time, in order for it to be considered "misfired" and thus
+ have its misfire instruction applied.
+
+
+
+
+ Don't call set autocommit(false) on connections obtained from the
+ DataSource. This can be helpfull in a few situations, such as if you
+ have a driver that complains if it is called when it is already off.
+
+
+
+
+ Set the transaction isolation level of DB connections to sequential.
+
+
+
+
+ Whether or not the query and update to acquire a Trigger for firing
+ should be performed after obtaining an explicit DB lock (to avoid
+ possible race conditions on the trigger's db row). This is
+ is considered unnecessary for most databases (due to the nature of
+ the SQL update that is performed), and therefore a superfluous performance hit.
+
+
+
+
+ Get or set the ADO.NET driver delegate class name.
+
+
+
+
+ set the SQL statement to use to select and lock a row in the "locks"
+ table.
+
+
+
+
+
+ Get whether the threads spawned by this JobStore should be
+ marked as daemon. Possible threads include the
+ and the .
+
+
+
+
+
+ Get whether to check to see if there are Triggers that have misfired
+ before actually acquiring the lock to recover them. This should be
+ set to false if the majority of the time, there are are misfired
+ Triggers.
+
+
+
+
+
+ Get the driver delegate for DB operations.
+
+
+
+
+ Get whether String-only properties will be handled in JobDataMaps.
+
+
+
+
+ Indicates whether this job store supports persistence.
+
+
+
+
+
+
+ Implement this interface to provide the code to execute within
+ the a transaction template that has no return value.
+
+
+
+
+
+ Implement this interface to provide the code to execute within
+ the a transaction template. If no return value is required, execute
+ should just return null.
+
+
+
+
+
+
+
+ An interface for classes wishing to provide the service of loading classes
+ and resources within the scheduler...
+
+ James House
+
+
+
+ Called to give the ClassLoadHelper a chance to Initialize itself,
+ including the oportunity to "steal" the class loader off of the calling
+ thread, which is the thread that is initializing Quartz.
+
+
+
+
+ Return the class with the given name.
+
+
+
+
+ Finds a resource with a given name. This method returns null if no
+ resource with this name is found.
+
+ name of the desired resource
+
+ a java.net.URL object
+
+
+
+
+ Finds a resource with a given name. This method returns null if no
+ resource with this name is found.
+
+ name of the desired resource
+
+ a java.io.InputStream object
+
+
+
+
+ Helper class for returning the composite result of trying
+ to recover misfired jobs.
+
+
+
+
+ Initializes a new instance of the class.
+
+ if set to true [has more misfired triggers].
+ The processed misfired trigger count.
+
+
+
+
+ Gets a value indicating whether this instance has more misfired triggers.
+
+
+ true if this instance has more misfired triggers; otherwise, false.
+
+
+
+
+ Gets the processed misfired trigger count.
+
+ The processed misfired trigger count.
+
+
+
+ Called by the QuartzScheduler before the is
+ used, in order to give the it a chance to Initialize.
+
+
+
+
+
+
+ Called by the QuartzScheduler to inform the that
+ it should free up all of it's resources because the scheduler is
+ shutting down.
+
+
+
+
+ Gets the non managed TX connection.
+
+
+
+
+
+ Execute the given callback having optionally aquired the given lock.
+ Because CMT assumes that the connection is already part of a managed
+ transaction, it does not attempt to commit or rollback the
+ enclosing transaction.
+
+
+
+
+
+
+ The name of the lock to aquire, for example
+ "TRIGGER_ACCESS". If null, then no lock is aquired, but the
+ txCallback is still executed in a transaction.
+
+ Callback to execute.
+
+
+
+ Utility class to keep track of both active transaction
+ and connection.
+
+
+
+
+ Initializes a new instance of the class.
+
+ The connection.
+ The transaction.
+
+
+
+ Gets or sets the connection.
+
+ The connection.
+
+
+
+ Gets or sets the transaction.
+
+ The transaction.
+
+
+
+ is meant to be used in a standalone environment.
+ Both commit and rollback will be handled by this class.
+
+ Jeffrey Wescott
+ James House
+
+
+
+ Called by the QuartzScheduler before the is
+ used, in order to give the it a chance to Initialize.
+
+
+
+
+
+
+ For , the non-managed TX connection is just
+ the normal connection because it is not CMT.
+
+
+
+
+
+ Execute the given callback having optionally aquired the given lock.
+ For , because it manages its own transactions
+ and only has the one datasource, this is the same behavior as
+ .
+
+
+ The name of the lock to aquire, for example "TRIGGER_ACCESS".
+ If null, then no lock is aquired, but the lockCallback is still
+ executed in a transaction.
+
+ Callback to execute.
+
+
+
+
+
+
+
+
+ Exception class for when there is a failure obtaining or releasing a
+ resource lock.
+
+
+ James House
+
+
+
+ An exception that is thrown to indicate that there has been a failure in the
+ scheduler's underlying persistence mechanism.
+
+ James House
+
+
+
+
+ Create a with the given message.
+
+
+
+
+
+ Initializes a new instance of the class.
+
+ The that holds the serialized object data about the exception being thrown.
+ The that contains contextual information about the source or destination.
+ The class name is null or is zero (0).
+ The info parameter is null.
+
+
+
+ Create a with the given message
+ and error code.
+
+
+
+
+
+ Create a with the given message
+ and cause.
+
+
+
+
+
+ Create a with the given message,
+ cause and error code.
+
+
+
+
+
+ Initializes a new instance of the class.
+
+ The that holds the serialized object data about the exception being thrown.
+ The that contains contextual information about the source or destination.
+ The class name is null or is zero (0).
+ The info parameter is null.
+
+
+
+ This is a driver delegate for the MySQL ADO.NET driver.
+
+ Marko Lahma
+
+
+
+ Initializes a new instance of the class.
+
+ the logger to use during execution
+ the prefix of all table names
+ The instance id.
+ The db provider.
+
+
+
+ Initializes a new instance of the class.
+
+ The logger.
+ The table prefix.
+ The instance id.
+ The db provider.
+ if set to true [use properties].
+
+
+
+ Gets the select next trigger to acquire SQL clause.
+ MySQL version with LIMIT support.
+
+
+
+
+
+ Exception class for when a driver delegate cannot be found for a given
+ configuration, or lack thereof.
+
+ Jeffrey Wescott
+
+
+
+ Initializes a new instance of the class.
+
+ The that holds the serialized object data about the exception being thrown.
+ The that contains contextual information about the source or destination.
+ The class name is null or is zero (0).
+ The info parameter is null.
+
+
+
+ This is a driver delegate for the Oracle database.
+
+ Marko Lahma
+
+
+
+ Initializes a new instance of the class.
+
+ the logger to use during execution
+ the prefix of all table names
+ The instance id.
+ The db provider.
+
+
+
+ Initializes a new instance of the class.
+
+ The logger.
+ The table prefix.
+ The instance id.
+ The db provider.
+ if set to true [use properties].
+
+
+
+ Creates the SQL for select next trigger to acquire.
+
+
+
+
+ Gets the select next trigger to acquire SQL clause.
+ Oracle version with rownum support.
+
+
+
+
+
+ This is a driver delegate for the PostgreSQL ADO.NET driver.
+
+ Marko Lahma
+
+
+
+ Initializes a new instance of the class.
+
+ The log.
+ The table prefix.
+ The instance id.
+ The db provider.
+
+
+
+ Initializes a new instance of the class.
+
+ The log.
+ The table prefix.
+ The instance id.
+ The db provider.
+ if set to true [use properties].
+
+
+
+ Gets the select next trigger to acquire SQL clause.
+ PostgreSQL version with LIMIT support.
+
+
+
+
+
+ Conveys a scheduler-instance state record.
+
+ James House
+
+
+
+ Gets or sets the checkin interval.
+
+ The checkin interval.
+
+
+
+ Gets or sets the checkin timestamp.
+
+ The checkin timestamp.
+
+
+
+ Gets or sets the scheduler instance id.
+
+ The scheduler instance id.
+
+
+
+ Internal in-memory lock handler for providing thread/resource locking in
+ order to protect resources from being altered by multiple threads at the
+ same time.
+
+ James House
+
+
+
+ Grants a lock on the identified resource to the calling thread (blocking
+ until it is available).
+
+ True if the lock was obtained.
+
+
+ Release the lock on the identified resource if it is held by the calling
+ thread.
+
+
+
+
+ Determine whether the calling thread owns a lock on the identified
+ resource.
+
+
+
+
+ Gets the thread locks.
+
+ The thread locks.
+
+
+
+ Whether this Semaphore implementation requires a database connection for
+ its lock management operations.
+
+
+
+
+
+
+
+
+ This is a driver delegate for the SQLiteDelegate ADO.NET driver.
+
+ Marko Lahma
+
+
+
+ Initializes a new instance of the class.
+
+ the logger to use during execution
+ the prefix of all table names
+ The instance id.
+ The db provider.
+
+
+
+ Initializes a new instance of the class.
+
+ The logger.
+ The table prefix.
+ The instance id.
+ The db provider.
+ if set to true [use properties].
+
+
+
+ Gets the select next trigger to acquire SQL clause.
+ SQLite version with LIMIT support.
+
+
+
+
+
+ A SQL Server specific driver delegate.
+
+ Marko Lahma
+
+
+
+ Initializes a new instance of the class.
+
+ the logger to use during execution
+ the prefix of all table names
+ The instance id.
+ The db provider.
+
+
+
+ Initializes a new instance of the class.
+
+ The logger.
+ The table prefix.
+ The instance id.
+ The db provider.
+ if set to true [use properties].
+
+
+
+ Creates the SQL for select next trigger to acquire.
+
+
+
+
+ Gets the select next trigger to acquire SQL clause.
+ SQL Server specific version with TOP functionality
+
+
+
+
+
+ Internal database based lock handler for providing thread/resource locking
+ in order to protect resources from being altered by multiple threads at the
+ same time.
+
+ James House
+
+
+
+ Initializes a new instance of the class.
+
+ The table prefix.
+ The select with lock SQL.
+
+
+
+ Execute the SQL select for update that will lock the proper database row.
+
+
+
+ Provide thread/resource locking in order to protect
+ resources from being altered by multiple threads at the same time using
+ a db row update.
+
+
+ Note: This Semaphore implementation is useful for databases that do
+ not support row locking via "SELECT FOR UPDATE" type syntax, for example
+ Microsoft SQLServer (MSSQL).
+
+
+
+
+ Initializes a new instance of the class.
+
+
+
+
+ Execute the SQL that will lock the proper database row.
+
+
+
+
+
+
+
+ This implementation of the Calendar excludes a set of days of the year. You
+ may use it to exclude bank holidays which are on the same date every year.
+
+
+
+ Juergen Donnerstag
+
+
+
+ This implementation of the Calendar may be used (you don't have to) as a
+ base class for more sophisticated one's. It merely implements the base
+ functionality required by each Calendar.
+
+
+ Regarded as base functionality is the treatment of base calendars. Base
+ calendar allow you to chain (stack) as much calendars as you may need. For
+ example to exclude weekends you may use WeeklyCalendar. In order to exclude
+ holidays as well you may define a WeeklyCalendar instance to be the base
+ calendar for HolidayCalendar instance.
+
+
+ Juergen Donnerstag
+ James House
+
+
+
+ An interface to be implemented by objects that define spaces of time during
+ which an associated may fire.
+
+
+ Calendars do not define actual fire times, but rather are used to limit a
+ from firing on its normal schedule if necessary. Most
+ Calendars include all times by default and allow the user to specify times to
+ exclude. As such, it is often useful to think of Calendars as being used to
+ exclude a block of time, as opposed to include
+ a block of time. (i.e. the schedule "fire every five minutes except on Sundays" could be
+ implemented with a and a which excludes Sundays)
+
+ James House
+ Juergen Donnerstag
+
+
+
+ Determine whether the given UTC time is 'included' by the
+ Calendar.
+
+
+
+
+ Determine the next UTC time that is 'included' by the
+ Calendar after the given UTC time.
+
+
+
+
+ Gets or sets a description for the instance - may be
+ useful for remembering/displaying the purpose of the calendar, though
+ the description has no meaning to Quartz.
+
+
+
+
+ Set a new base calendar or remove the existing one.
+ Get the base calendar.
+
+
+
+
+ Initializes a new instance of the class.
+
+
+
+
+ Initializes a new instance of the class.
+
+ The base calendar.
+
+
+
+ Initializes a new instance of the class.
+
+ The time zone.
+
+
+
+ Initializes a new instance of the class.
+
+ The base calendar.
+ The time zone.
+
+
+
+ checks whether two arrays have
+ the same length and
+ for any given place there are equal elements
+ in both arrays
+
+
+
+
+
+ Get the base calendar. Will be null, if not set.
+
+
+
+
+ Check if date/time represented by timeStamp is included. If included
+ return true. The implementation of BaseCalendar simply calls the base
+ calendars IsTimeIncluded() method if base calendar is set.
+
+
+
+
+
+ Determine the next UTC time (in milliseconds) that is 'included' by the
+ Calendar after the given time. Return the original value if timeStamp is
+ included. Return 0 if all days are excluded.
+
+
+
+
+
+ Gets or sets the time zone.
+
+ The time zone.
+
+
+
+ Gets or sets the description given to the instance by
+ its creator (if any).
+
+
+
+
+ Set a new base calendar or remove the existing one
+
+
+
+
+
+ Constructor
+
+
+
+
+ Constructor
+
+ The base calendar.
+
+
+
+ Return true, if day is defined to be exluded.
+
+
+
+
+ Redefine a certain day to be excluded (true) or included (false).
+
+
+
+
+ Determine whether the given UTC time (in milliseconds) is 'included' by the
+ Calendar.
+
+ Note that this Calendar is only has full-day precision.
+
+
+
+
+
+ Determine the next UTC time (in milliseconds) that is 'included' by the
+ Calendar after the given time. Return the original value if timeStampUtc is
+ included. Return 0 if all days are excluded.
+
+ Note that this Calendar is only has full-day precision.
+
+
+
+
+
+ Get or the array which defines the exclude-value of each day of month.
+ Setting will redefine the array of days excluded. The array must of size greater or
+ equal 31.
+
+
+
+
+ This implementation of the Calendar excludes the set of times expressed by a
+ given CronExpression.
+
+
+ For example, you could use this calendar to exclude all but business hours (8AM - 5PM) every
+ day using the expression "* * 0-7,18-23 ? * *".
+
+ It is important to remember that the cron expression here describes a set of
+ times to be excluded from firing. Whereas the cron expression in
+ CronTrigger describes a set of times that can
+ be included for firing. Thus, if a has a
+ given cron expression and is associated with a with
+ the same expression, the calendar will exclude all the times the
+ trigger includes, and they will cancel each other out.
+
+
+ Aaron Craven
+
+
+
+ Initializes a new instance of the class.
+
+ a String representation of the desired cron expression
+
+
+
+ Create a with the given cron expression and
+ .
+
+
+ the base calendar for this calendar instance
+ see BaseCalendar for more information on base
+ calendar functionality
+
+ a String representation of the desired cron expression
+
+
+
+ Create a with the given cron expression and
+ .
+
+
+ the base calendar for this calendar instance
+ see BaseCalendar for more information on base
+ calendar functionality
+
+ a String representation of the desired cron expression
+
+
+
+
+ Determine whether the given time is 'included' by the
+ Calendar.
+
+ the time to test
+ a boolean indicating whether the specified time is 'included' by the CronCalendar
+
+
+
+ Determine the next time that is 'included' by the
+ Calendar after the given time. Return the original value if timeStamp is
+ included. Return 0 if all days are excluded.
+
+
+
+
+
+
+ Returns a that represents the current .
+
+
+ A that represents the current .
+
+
+
+
+ Sets the cron expression for the calendar to a new value.
+
+ The expression.
+
+
+
+ Returns the object representation of the cron expression that defines the
+ dates and times this calendar excludes.
+
+
+
+
+ This implementation of the Calendar excludes (or includes - see below) a
+ specified time range each day.
+
+
+ For example, you could use this calendar to
+ exclude business hours (8AM - 5PM) every day. Each
+ only allows a single time range to be specified, and that time range may not
+ * cross daily boundaries (i.e. you cannot specify a time range from 8PM - 5AM).
+ If the property is (default),
+ the time range defines a range of times in which triggers are not allowed to
+ * fire. If is , the time range
+ is inverted: that is, all times outside the defined time range
+ are excluded.
+
+ Note when using , it behaves on the same principals
+ as, for example, WeeklyCalendar defines a set of days that are
+ excluded every week. Likewise, defines a
+ set of times that are excluded every day.
+
+
+ Mike Funk
+ Aaron Craven
+
+
+
+ Create a with a time range defined by the
+ specified strings and no baseCalendar.
+ and
+ must be in the format "HH:MM[:SS[:mmm]]" where:
+
+ -
+ HH is the hour of the specified time. The hour should be
+ specified using military (24-hour) time and must be in the range
+ 0 to 23.
+
+ -
+ MM is the minute of the specified time and must be in the range
+ 0 to 59.
+
+ -
+ SS is the second of the specified time and must be in the range
+ 0 to 59.
+
+ -
+ mmm is the millisecond of the specified time and must be in the
+ range 0 to 999.
+
+ - items enclosed in brackets ('[', ']') are optional.
+ -
+ The time range starting time must be before the time range ending
+ time. Note this means that a time range may not cross daily
+ boundaries (10PM - 2AM)
+
+
+
+
+
+
+ Create a with a time range defined by the
+ specified strings and the specified baseCalendar.
+ and
+ must be in the format "HH:MM[:SS[:mmm]]" where:
+
+ -
+ HH is the hour of the specified time. The hour should be
+ specified using military (24-hour) time and must be in the range
+ 0 to 23.
+
+ -
+ MM is the minute of the specified time and must be in the range
+ 0 to 59.
+
+ -
+ SS is the second of the specified time and must be in the range
+ 0 to 59.
+
+ -
+ mmm is the millisecond of the specified time and must be in the
+ range 0 to 999.
+
+ -
+ items enclosed in brackets ('[', ']') are optional.
+
+ -
+ The time range starting time must be before the time range ending
+ time. Note this means that a time range may not cross daily
+ boundaries (10PM - 2AM)
+
+
+
+ The base calendar for this calendar instance see BaseCalendar for more
+ information on base calendar functionality.
+
+
+
+ Create a with a time range defined by the
+ specified values and no baseCalendar. Values are subject to
+ the following validations:
+
+ -
+ Hours must be in the range 0-23 and are expressed using military
+ (24-hour) time.
+
+ - Minutes must be in the range 0-59
+ - Seconds must be in the range 0-59
+ - Milliseconds must be in the range 0-999
+ -
+ The time range starting time must be before the time range ending
+ time. Note this means that a time range may not cross daily
+ boundaries (10PM - 2AM)
+
+
+
+ The range starting hour of day.
+ The range starting minute.
+ The range starting second.
+ The range starting millis.
+ The range ending hour of day.
+ The range ending minute.
+ The range ending second.
+ The range ending millis.
+
+
+
+ Create a with a time range defined by the
+ specified values and the specified . Values are
+ subject to the following validations:
+
+ -
+ Hours must be in the range 0-23 and are expressed using military
+ (24-hour) time.
+
+ - Minutes must be in the range 0-59
+ - Seconds must be in the range 0-59
+ - Milliseconds must be in the range 0-999
+ -
+ The time range starting time must be before the time range ending
+ time. Note this means that a time range may not cross daily
+ boundaries (10PM - 2AM)
+
+
+
+ The range starting hour of day.
+ The range starting minute.
+ The range starting second.
+ The range starting millis.
+ The range ending hour of day.
+ The range ending minute.
+ The range ending second.
+ The range ending millis.
+
+
+
+ Create a with a time range defined by the
+ specified s and no
+ baseCalendar. The Calendars are subject to the following
+ considerations:
+
+ -
+ Only the time-of-day fields of the specified Calendars will be
+ used (the date fields will be ignored)
+
+ -
+ The starting time must be before the ending time of the defined
+ time range. Note this means that a time range may not cross
+ daily boundaries (10PM - 2AM). (because only time fields are
+ are used, it is possible for two Calendars to represent a valid
+ time range and
+ rangeStartingCalendar.after(rangeEndingCalendar) == true)
+
+
+
+
+ The range starting calendar.
+ The range ending calendar.
+
+
+
+ Create a with a time range defined by the
+ specified s and the specified
+ . The Calendars are subject to the following
+ considerations:
+
+ -
+ Only the time-of-day fields of the specified Calendars will be
+ used (the date fields will be ignored)
+
+ -
+ The starting time must be before the ending time of the defined
+ time range. Note this means that a time range may not cross
+ daily boundaries (10PM - 2AM). (because only time fields are
+ are used, it is possible for two Calendars to represent a valid
+ time range and
+ rangeStartingCalendarUtc > rangeEndingCalendarUtc == true)
+
+
+
+ The range starting calendar.
+ The range ending calendar.
+
+
+
+ Create a with a time range defined by the
+ specified values and no baseCalendar. The values are
+ subject to the following considerations:
+
+ -
+ Only the time-of-day portion of the specified values will be
+ used
+
+ -
+ The starting time must be before the ending time of the defined
+ time range. Note this means that a time range may not cross
+ daily boundaries (10PM - 2AM). (because only time value are
+ are used, it is possible for the two values to represent a valid
+ time range and rangeStartingTime > rangeEndingTime)
+
+
+
+ The range starting time in millis.
+ The range ending time in millis.
+
+
+
+ Create a with a time range defined by the
+ specified values and the specified . The values
+ are subject to the following considerations:
+
+ -
+ Only the time-of-day portion of the specified values will be
+ used
+
+ -
+ The starting time must be before the ending time of the defined
+ time range. Note this means that a time range may not cross
+ daily boundaries (10PM - 2AM). (because only time value are
+ are used, it is possible for the two values to represent a valid
+ time range and rangeStartingTime > rangeEndingTime)
+
+
+
+ The range starting time in millis.
+ The range ending time in millis.
+
+
+
+ Determine whether the given time is 'included' by the
+ Calendar.
+
+
+
+
+
+
+ Determine the next time (in milliseconds) that is 'included' by the
+ Calendar after the given time. Return the original value if timeStamp is
+ included. Return 0 if all days are excluded.
+
+
+
+
+
+
+
+ Returns the start time of the time range of the day
+ specified in .
+
+
+ a DateTime representing the start time of the
+ time range for the specified date.
+
+
+
+
+ Returns the end time of the time range of the day
+ specified in
+
+
+ A DateTime representing the end time of the
+ time range for the specified date.
+
+
+
+
+ Returns a that represents the current .
+
+
+ A that represents the current .
+
+
+
+
+ Sets the time range for the to the times
+ represented in the specified Strings.
+
+ The range starting time string.
+ The range ending time string.
+
+
+
+ Sets the time range for the to the times
+ represented in the specified values.
+
+ The range starting hour of day.
+ The range starting minute.
+ The range starting second.
+ The range starting millis.
+ The range ending hour of day.
+ The range ending minute.
+ The range ending second.
+ The range ending millis.
+
+
+
+ Sets the time range for the to the times
+ represented in the specified s.
+
+ The range starting calendar.
+ The range ending calendar.
+
+
+
+ Sets the time range for the to the times
+ represented in the specified values.
+
+ The range starting time.
+ The range ending time.
+
+
+
+ Gets the start of day, practically zeroes time part.
+
+ The time.
+
+
+
+
+ Gets the end of day, pratically sets time parts to maximum allowed values.
+
+ The time.
+
+
+
+
+ Checks the specified values for validity as a set of time values.
+
+ The hour of day.
+ The minute.
+ The second.
+ The millis.
+
+
+
+ Indicates whether the time range represents an inverted time range (see
+ class description).
+
+ true if invert time range; otherwise, false.
+
+
+
+ This implementation of the Calendar stores a list of holidays (full days
+ that are excluded from scheduling).
+
+
+ The implementation DOES take the year into consideration, so if you want to
+ exclude July 4th for the next 10 years, you need to add 10 entries to the
+ exclude list.
+
+ Sharada Jambula
+ Juergen Donnerstag
+
+
+
+ Initializes a new instance of the class.
+
+
+
+
+ Initializes a new instance of the class.
+
+ The base calendar.
+
+
+
+ Determine whether the given time (in milliseconds) is 'included' by the
+ Calendar.
+
+ Note that this Calendar is only has full-day precision.
+
+
+
+
+
+ Determine the next time (in milliseconds) that is 'included' by the
+ Calendar after the given time.
+
+ Note that this Calendar is only has full-day precision.
+
+
+
+
+
+ Add the given Date to the list of excluded days. Only the month, day and
+ year of the returned dates are significant.
+
+
+
+
+ Removes the excluded date.
+
+ The date to remove.
+
+
+
+ Returns a of Dates representing the excluded
+ days. Only the month, day and year of the returned dates are
+ significant.
+
+
+
+
+ This implementation of the Calendar excludes a set of days of the month. You
+ may use it to exclude every 1. of each month for example. But you may define
+ any day of a month.
+
+
+
+ Juergen Donnerstag
+
+
+
+ Initializes a new instance of the class.
+
+
+
+
+ Constructor
+
+ The base calendar.
+
+
+
+ Initialize internal variables
+
+
+
+
+ Return true, if mday is defined to be exluded.
+
+
+
+
+ Redefine a certain day of the month to be excluded (true) or included
+ (false).
+
+
+
+
+ Check if all days are excluded. That is no day is included.
+
+ boolean
+
+
+
+
+ Determine whether the given time (in milliseconds) is 'included' by the
+ Calendar.
+
+ Note that this Calendar is only has full-day precision.
+
+
+
+
+
+ Determine the next time (in milliseconds) that is 'included' by the
+ Calendar after the given time. Return the original value if timeStamp is
+ included. Return DateTime.MinValue if all days are excluded.
+
+ Note that this Calendar is only has full-day precision.
+
+
+
+
+
+ Get or set the array which defines the exclude-value of each day of month
+ Setting will redefine the array of days excluded. The array must of size greater or
+ equal 31.
+
+
+
+
+ This implementation of the Calendar excludes a set of days of the week. You
+ may use it to exclude weekends for example. But you may define any day of
+ the week.
+
+
+
+ Juergen Donnerstag
+
+
+
+ Initializes a new instance of the class.
+
+
+
+
+ Initializes a new instance of the class.
+
+ The base calendar.
+
+
+
+ Initialize internal variables
+
+
+
+
+ Return true, if wday is defined to be exluded. E. g.
+ saturday and sunday.
+
+
+
+
+ Redefine a certain day of the week to be excluded (true) or included
+ (false). Use java.util.Calendar's constants like MONDAY to determine the
+ wday.
+
+
+
+
+ Check if all week ays are excluded. That is no day is included.
+
+
+
+
+ Determine whether the given time (in milliseconds) is 'included' by the
+ Calendar.
+
+ Note that this Calendar is only has full-day precision.
+
+
+
+
+
+ Determine the next time (in milliseconds) that is 'included' by the
+ Calendar after the given time. Return the original value if timeStamp is
+ included. Return DateTime.MinValue if all days are excluded.
+
+ Note that this Calendar is only has full-day precision.
+
+
+
+
+
+ Get the array with the week days.
+ Setting will redefine the array of days excluded. The array must of size greater or
+ equal 8. java.util.Calendar's constants like MONDAY should be used as
+ index. A value of true is regarded as: exclude it.
+
+
+
+
+ A singleton implementation of .
+
+
+ Here are some examples of using this class:
+
+ To create a scheduler that does not write anything to the database (is not
+ persistent), you can call :
+
+
+ DirectSchedulerFactory.Instance.CreateVolatileScheduler(10); // 10 threads
+ // don't forget to start the scheduler:
+ DirectSchedulerFactory.Instance.GetScheduler().Start();
+
+
+ Several create methods are provided for convenience. All create methods
+ eventually end up calling the create method with all the parameters:
+
+
+ public void createScheduler(String schedulerName, string schedulerInstanceId, ThreadPool threadPool, JobStore jobStore, string rmiRegistryHost, int rmiRegistryPort)
+
+
+ Here is an example of using this method:
+
+
+ // create the thread pool
+ SimpleThreadPool threadPool = new SimpleThreadPool(maxThreads, Thread.NORM_PRIORITY);
+ threadPool.Initialize();
+ // create the job store
+ JobStore jobStore = new RAMJobStore();
+ jobStore.Initialize();
+
+ DirectSchedulerFactory.Instance.CreateScheduler("My Quartz Scheduler", "My Instance", threadPool, jobStore, "localhost", 1099);
+ // don't forget to start the scheduler:
+ DirectSchedulerFactory.Instance.GetScheduler("My Quartz Scheduler", "My Instance").start();
+
+ >
+ Mohammad Rezaei
+ James House
+
+
+
+
+
+ Provides a mechanism for obtaining client-usable handles to
+ instances.
+
+
+
+ James House
+
+
+
+ Returns a client-usable handle to a .
+
+
+
+
+ Returns a handle to the Scheduler with the given name, if it exists.
+
+
+
+
+ Returns handles to all known Schedulers (made by any SchedulerFactory
+ within this app domain.).
+
+
+
+
+ Initializes a new instance of the class.
+
+
+
+
+ Creates an in memory job store ()
+ The thread priority is set to Thread.NORM_PRIORITY
+
+ The number of threads in the thread pool
+
+
+
+ Creates a proxy to a remote scheduler. This scheduler can be retrieved
+ via .
+
+ SchedulerException
+
+
+
+ Same as ,
+ with the addition of specifying the scheduler name and instance ID. This
+ scheduler can only be retrieved via .
+
+ The name for the scheduler.
+ The instance ID for the scheduler.
+
+ SchedulerException
+
+
+
+ Creates a scheduler using the specified thread pool and job store. This
+ scheduler can be retrieved via DirectSchedulerFactory#GetScheduler()
+
+
+ The thread pool for executing jobs
+
+
+ The type of job store
+
+ SchedulerException
+ if initialization failed
+
+
+
+
+ Same as DirectSchedulerFactory#createScheduler(ThreadPool threadPool, JobStore jobStore),
+ with the addition of specifying the scheduler name and instance ID. This
+ scheduler can only be retrieved via DirectSchedulerFactory#getScheduler(String)
+
+ The name for the scheduler.
+ The instance ID for the scheduler.
+ The thread pool for executing jobs
+ The type of job store
+
+
+
+ Creates a scheduler using the specified thread pool and job store and
+ binds it to RMI.
+
+ The name for the scheduler.
+ The instance ID for the scheduler.
+ The thread pool for executing jobs
+ The type of job store
+ The idle wait time. You can specify "-1" for
+ the default value, which is currently 30000 ms.
+ The db failure retry interval.
+
+
+
+ Creates a scheduler using the specified thread pool and job store and
+ binds it to RMI.
+
+ The name for the scheduler.
+ The instance ID for the scheduler.
+ The thread pool for executing jobs
+ The type of job store
+
+ The idle wait time. You can specify TimeSpan.Zero for
+ the default value, which is currently 30000 ms.
+ The db failure retry interval.
+
+
+
+ Returns a handle to the Scheduler produced by this factory.
+
+ you must call createRemoteScheduler or createScheduler methods before
+ calling getScheduler()
+
+
+
+ SchedulerException
+
+
+
+ Returns a handle to the Scheduler with the given name, if it exists.
+
+
+
+
+ Gets the log.
+
+ The log.
+
+
+
+ Gets the instance.
+
+ The instance.
+
+
+
+ Returns a handle to all known Schedulers (made by any
+ StdSchedulerFactory instance.).
+
+
+
+
+
+ An implementation of the interface that remotely
+ proxies all method calls to the equivalent call on a given
+ instance, via remoting or similar technology.
+
+
+
+
+ James House
+
+
+
+ This is the main interface of a Quartz Scheduler.
+
+
+
+ A maintains a registry of
+ s and s. Once
+ registered, the is responsible for executing
+ s when their associated s
+ fire (when their scheduled time arrives).
+
+
+ instances are produced by a
+ . A scheduler that has already been
+ created/initialized can be found and used through the same factory that
+ produced it. After a has been created, it is in
+ "stand-by" mode, and must have its method
+ called before it will fire any s.
+
+
+ s are to be created by the 'client program', by
+ defining a class that implements the interface.
+ objects are then created (also by the client) to
+ define a individual instances of the .
+ instances can then be registered with the
+ via the %IScheduler.ScheduleJob(JobDetail,
+ Trigger)% or %IScheduler.AddJob(JobDetail, bool)% method.
+
+
+ s can then be defined to fire individual
+ instances based on given schedules.
+ s are most useful for one-time firings, or
+ firing at an exact moment in time, with N repeats with a given delay between
+ them. s allow scheduling based on time of day,
+ day of week, day of month, and month of year.
+
+
+ s and s have a name and
+ group associated with them, which should uniquely identify them within a single
+ . The 'group' feature may be useful for creating
+ logical groupings or categorizations of s and
+ s. If you don't have need for assigning a group to a
+ given s of s, then you can use
+ the constant defined on
+ this interface.
+
+
+ Stored s can also be 'manually' triggered through the
+ use of the %IScheduler.TriggerJob(string, string)% function.
+
+
+ Client programs may also be interested in the 'listener' interfaces that are
+ available from Quartz. The interface provides
+ notifications of executions. The
+ interface provides notifications of
+ firings. The
+ interface provides notifications of events and
+ errors.
+
+
+ The setup/configuration of a instance is very
+ customizable. Please consult the documentation distributed with Quartz.
+
+
+
+
+
+
+
+
+
+
+
+ returns true if the given JobGroup
+ is paused
+
+
+
+
+
+
+ returns true if the given TriggerGroup
+ is paused
+
+
+
+
+
+
+ Get a object describiing the settings
+ and capabilities of the scheduler instance.
+
+
+ Note that the data returned is an 'instantaneous' snap-shot, and that as
+ soon as it's returned, the meta data values may be different.
+
+
+
+
+ Return a list of objects that
+ represent all currently executing Jobs in this Scheduler instance.
+
+
+
+ This method is not cluster aware. That is, it will only return Jobs
+ currently executing in this Scheduler instance, not across the entire
+ cluster.
+
+
+ Note that the list returned is an 'instantaneous' snap-shot, and that as
+ soon as it's returned, the true list of executing jobs may be different.
+ Also please read the doc associated with -
+ especially if you're using remoting.
+
+
+
+
+
+
+ Get the names of all groups that are paused.
+
+
+
+
+ Get the global that has
+ the given name.
+
+ Global job listener's name
+
+
+
+
+ Get the global that
+ has the given name.
+
+ Global trigger listener's name
+
+
+
+
+ Starts the 's threads that fire s.
+ When a scheduler is first created it is in "stand-by" mode, and will not
+ fire triggers. The scheduler can also be put into stand-by mode by
+ calling the method.
+
+
+ The misfire/recovery process will be started, if it is the initial call
+ to this method on this scheduler instance.
+
+
+
+
+
+
+
+ Calls after the indicated delay.
+ (This call does not block). This can be useful within applications that
+ have initializers that create the scheduler immediately, before the
+ resources needed by the executing jobs have been fully initialized.
+
+
+
+
+
+
+
+ Temporarily halts the 's firing of s.
+
+
+
+ When is called (to bring the scheduler out of
+ stand-by mode), trigger misfire instructions will NOT be applied
+ during the execution of the method - any misfires
+ will be detected immediately afterward (by the 's
+ normal process).
+
+
+ The scheduler is not destroyed, and can be re-started at any time.
+
+
+
+
+
+
+
+ Halts the 's firing of s,
+ and cleans up all resources associated with the Scheduler. Equivalent to
+ .
+
+
+ The scheduler cannot be re-started.
+
+
+
+
+
+ Halts the 's firing of s,
+ and cleans up all resources associated with the Scheduler.
+
+
+ The scheduler cannot be re-started.
+
+
+ if the scheduler will not allow this method
+ to return until all currently executing jobs have completed.
+
+
+
+
+
+ Add the given to the
+ Scheduler, and associate the given with
+ it.
+
+
+ If the given Trigger does not reference any , then it
+ will be set to reference the Job passed with it into this method.
+
+
+
+
+ Schedule the given with the
+ identified by the 's settings.
+
+
+
+
+ Remove the indicated from the scheduler.
+
+
+
+
+ Remove (delete) the with the
+ given name, and store the new given one - which must be associated
+ with the same job (the new trigger must have the job name & group specified)
+ - however, the new trigger need not have the same name as the old trigger.
+
+
+ The name of the to be replaced.
+
+
+ The group name of the to be replaced.
+
+
+ The new to be stored.
+
+
+ if a with the given
+ name and group was not found and removed from the store, otherwise
+ the first fire time of the newly scheduled trigger.
+
+
+
+
+ Add the given to the Scheduler - with no associated
+ . The will be 'dormant' until
+ it is scheduled with a , or
+ is called for it.
+
+
+ The must by definition be 'durable', if it is not,
+ SchedulerException will be thrown.
+
+
+
+
+ Delete the identified from the Scheduler - and any
+ associated s.
+
+ true if the Job was found and deleted.
+
+
+
+ Trigger the identified
+ (Execute it now) - the generated trigger will be non-volatile.
+
+
+
+
+ Trigger the identified
+ (Execute it now) - the generated trigger will be volatile.
+
+
+
+
+ Trigger the identified
+ (Execute it now) - the generated trigger will be non-volatile.
+
+ the name of the Job to trigger
+ the group name of the Job to trigger
+
+ the (possibly ) JobDataMap to be
+ associated with the trigger that fires the job immediately.
+
+
+
+
+ Trigger the identified
+ (Execute it now) - the generated trigger will be volatile.
+
+ the name of the Job to trigger
+ the group name of the Job to trigger
+
+ the (possibly ) JobDataMap to be
+ associated with the trigger that fires the job immediately.
+
+
+
+
+ Pause the with the given
+ name - by pausing all of its current s.
+
+
+
+
+ Pause all of the s in the
+ given group - by pausing all of their s.
+
+
+ The Scheduler will "remember" that the group is paused, and impose the
+ pause on any new jobs that are added to the group while the group is
+ paused.
+
+
+
+
+
+ Pause the with the given name.
+
+
+
+
+ Pause all of the s in the given group.
+
+
+ The Scheduler will "remember" that the group is paused, and impose the
+ pause on any new triggers that are added to the group while the group is
+ paused.
+
+
+
+
+
+ Resume (un-pause) the with
+ the given name.
+
+
+ If any of the 's s missed one
+ or more fire-times, then the 's misfire
+ instruction will be applied.
+
+
+
+
+ Resume (un-pause) all of the s
+ in the given group.
+
+
+ If any of the s had s that
+ missed one or more fire-times, then the 's
+ misfire instruction will be applied.
+
+
+
+
+
+ Resume (un-pause) the with the given
+ name.
+
+
+ If the missed one or more fire-times, then the
+ 's misfire instruction will be applied.
+
+
+
+
+ Resume (un-pause) all of the s in the
+ given group.
+
+
+ If any missed one or more fire-times, then the
+ 's misfire instruction will be applied.
+
+
+
+
+
+ Pause all triggers - similar to calling
+ on every group, however, after using this method
+ must be called to clear the scheduler's state of 'remembering' that all
+ new triggers will be paused as they are added.
+
+
+ When is called (to un-pause), trigger misfire
+ instructions WILL be applied.
+
+
+
+
+
+
+
+ Resume (un-pause) all triggers - similar to calling
+ on every group.
+
+
+ If any missed one or more fire-times, then the
+ 's misfire instruction will be applied.
+
+
+
+
+
+ Get the names of all the s in the given group.
+
+
+
+
+ Get all s that are associated with the
+ identified .
+
+
+
+
+ Get the names of all the s in the given
+ group.
+
+
+
+
+ Get the for the
+ instance with the given name and group.
+
+
+
+
+ Get the instance with the given name and
+ group.
+
+
+
+
+ Get the current state of the identified .
+
+
+
+
+
+
+
+
+
+
+ Add (register) the given to the Scheduler.
+
+ Name of the calendar.
+ The calendar.
+ if set to true [replace].
+ whether or not to update existing triggers that
+ referenced the already existing calendar so that they are 'correct'
+ based on the new trigger.
+
+
+
+ Delete the identified from the Scheduler.
+
+ Name of the calendar.
+
+ true if the Calendar was found and deleted.
+
+
+
+
+ Get the instance with the given name.
+
+
+
+
+ Get the names of all registered .
+
+ An array of calendar names.
+
+
+
+ Request the interruption, within this Scheduler instance, of all
+ currently executing instances of the identified , which
+ must be an implementor of the interface.
+
+
+
+ If more than one instance of the identified job is currently executing,
+ the method will be called on
+ each instance. However, there is a limitation that in the case that
+ on one instances throws an exception, all
+ remaining instances (that have not yet been interrupted) will not have
+ their method called.
+
+
+
+ If you wish to interrupt a specific instance of a job (when more than
+ one is executing) you can do so by calling
+ to obtain a handle
+ to the job instance, and then invoke on it
+ yourself.
+
+
+ This method is not cluster aware. That is, it will only interrupt
+ instances of the identified InterruptableJob currently executing in this
+ Scheduler instance, not across the entire cluster.
+
+
+
+
+
+ true is at least one instance of the identified job was found and interrupted.
+
+
+
+
+
+
+ Add the given to the 's
+ global list.
+
+
+ Listeners in the 'global' list receive notification of execution events
+ for ALL s.
+
+
+
+
+ Add the given to the 's
+ list, of registered s.
+
+
+
+
+ Remove the given from the 's
+ list of global listeners.
+
+
+ true if the identifed listener was found in the list, and removed.
+
+
+
+
+ Remove the identifed from the 's
+ list of global listeners.
+
+ Global job listener's name
+ true if the identifed listener was found in the list, and removed
+
+
+
+ Remove the identifed from the 's
+ list of registered listeners.
+
+
+ true if the identifed listener was found in the list, and removed.
+
+
+
+
+ Get the non-global that has
+ the given name.
+
+
+
+
+ Add the given to the 's
+ global list.
+
+
+ Listeners in the 'global' list receive notification of execution events
+ for ALL s.
+
+
+
+
+ Add the given to the 's
+ list, of registered s.
+
+
+
+
+ Remove the given from the 's
+ list of global listeners.
+
+
+ true if the identifed listener was found in the list, and removed.
+
+
+
+
+ Remove the identifed from the 's
+ list of global listeners.
+
+ The name.
+ true if the identifed listener was found in the list, and removed.
+
+
+
+ Remove the identifed from the
+ 's list of registered listeners.
+
+
+ true if the identifed listener was found in the list, and removed.
+
+
+
+
+ Get the non-global that
+ has the given name.
+
+
+
+
+ Register the given with the
+
+
+
+
+ Remove the given from the
+ .
+
+ true if the identifed listener was found in the list, and
+ removed.
+
+
+
+
+ Returns the name of the .
+
+
+
+
+ Returns the instance Id of the .
+
+
+
+
+ Returns the of the .
+
+
+
+
+ Reports whether the is in stand-by mode.
+
+
+
+
+
+
+ Reports whether the has been Shutdown.
+
+
+
+
+ Set the that will be responsible for producing
+ instances of classes.
+
+
+ JobFactories may be of use to those wishing to have their application
+ produce instances via some special mechanism, such as to
+ give the opertunity for dependency injection.
+
+
+
+
+
+ Get the names of all known groups.
+
+
+
+
+ Get the names of all known groups.
+
+
+
+
+ Get the names of all registered s.
+
+
+
+
+ Get a List containing all of the s in
+ the 'sglobal list.
+
+
+
+
+ Get a Set containing the names of all the non-global
+ s registered with the .
+
+
+
+
+ Get a List containing all of the
+ s in the 'sglobal list.
+
+
+
+
+ Get a Set containing the names of all the non-global
+ s registered with the .
+
+
+
+
+ Get a List containing all of the
+ s registered with the .
+
+
+
+
+ Whether the scheduler has been started.
+
+
+ Note: This only reflects whether has ever
+ been called on this Scheduler, so it will return even
+ if the is currently in standby mode or has been
+ since shutdown.
+
+
+
+
+
+
+
+ Construct a instance to proxy the given
+ RemoteableQuartzScheduler instance, and with the given
+ .
+
+
+
+
+ returns true if the given JobGroup
+ is paused
+
+
+
+
+
+
+ returns true if the given TriggerGroup
+ is paused
+
+
+
+
+
+
+ Get a object describiing the settings
+ and capabilities of the scheduler instance.
+
+ Note that the data returned is an 'instantaneous' snap-shot, and that as
+ soon as it's returned, the meta data values may be different.
+
+
+
+
+
+
+ Calls the equivalent method on the 'proxied' .
+
+
+
+
+ Get the global that has
+ the given name.
+
+
+
+
+
+
+ Get the global that
+ has the given name.
+
+
+
+
+
+
+ Get the names of all groups that are paused.
+
+
+
+
+
+ Calls the equivalent method on the 'proxied' .
+
+
+
+
+ Calls the equivalent method on the 'proxied' .
+
+
+
+
+ Calls the equivalent method on the 'proxied' .
+
+
+
+
+ Calls the equivalent method on the 'proxied' .
+
+
+
+
+ Calls the equivalent method on the 'proxied' .
+
+
+
+
+ Calls the equivalent method on the 'proxied' ,
+ passing the associated with this
+ instance.
+
+
+
+
+ Calls the equivalent method on the 'proxied' ,
+ passing the associated with this
+ instance.
+
+
+
+
+ Calls the equivalent method on the 'proxied' ,
+ passing the associated with this
+ instance.
+
+
+
+
+ Calls the equivalent method on the 'proxied' ,
+ passing the associated with this
+ instance.
+
+
+
+
+ Calls the equivalent method on the 'proxied' ,
+ passing the associated with this
+ instance.
+
+
+
+
+ Calls the equivalent method on the 'proxied' ,
+ passing the associated with this
+ instance.
+
+
+
+
+ Calls the equivalent method on the 'proxied' ,
+ passing the associated with this
+ instance.
+
+
+
+
+ Calls the equivalent method on the 'proxied' ,
+ passing the associated with this
+ instance.
+
+
+
+
+ Calls the equivalent method on the 'proxied' ,
+ passing the associated with this
+ instance.
+
+
+
+
+ Calls the equivalent method on the 'proxied' ,
+ passing the associated with this
+ instance.
+
+
+
+
+ Calls the equivalent method on the 'proxied' ,
+ passing the associated with this
+ instance.
+
+
+
+
+ Calls the equivalent method on the 'proxied' ,
+ passing the associated with this
+ instance.
+
+
+
+
+ Calls the equivalent method on the 'proxied' ,
+ passing the associated with this
+ instance.
+
+
+
+
+ Calls the equivalent method on the 'proxied' ,
+ passing the associated with this
+ instance.
+
+
+
+
+ Calls the equivalent method on the 'proxied' ,
+ passing the associated with this
+ instance.
+
+
+
+
+ Calls the equivalent method on the 'proxied' ,
+ passing the associated with this
+ instance.
+
+
+
+
+ Calls the equivalent method on the 'proxied' ,
+ passing the associated with this
+ instance.
+
+
+
+
+ Calls the equivalent method on the 'proxied' ,
+ passing the associated with this
+ instance.
+
+
+
+
+ Calls the equivalent method on the 'proxied' ,
+ passing the associated with this
+ instance.
+
+
+
+
+ Calls the equivalent method on the 'proxied' ,
+ passing the associated with this
+ instance.
+
+
+
+
+ Calls the equivalent method on the 'proxied' ,
+ passing the associated with this
+ instance.
+
+
+
+
+ Calls the equivalent method on the 'proxied' ,
+ passing the associated with this
+ instance.
+
+
+
+
+ Calls the equivalent method on the 'proxied' ,
+ passing the associated with this
+ instance.
+
+
+
+
+ Calls the equivalent method on the 'proxied' ,
+ passing the associated with this
+ instance.
+
+
+
+
+ Calls the equivalent method on the 'proxied' ,
+ passing the associated with this
+ instance.
+
+
+
+
+ Calls the equivalent method on the 'proxied' ,
+ passing the associated with this
+ instance.
+
+
+
+
+ Calls the equivalent method on the 'proxied' ,
+ passing the associated with this
+ instance.
+
+
+
+
+ Calls the equivalent method on the 'proxied' ,
+ passing the associated with this
+ instance.
+
+
+
+
+ Calls the equivalent method on the 'proxied' ,
+ passing the associated with this
+ instance.
+
+
+
+
+ Get the names of all registered .
+
+
+
+
+
+ Calls the equivalent method on the 'proxied' ,
+ passing the associated with this
+ instance.
+
+
+
+
+ Calls the equivalent method on the 'proxied' ,
+ passing the associated with this
+ instance.
+
+
+
+
+ Calls the equivalent method on the 'proxied' ,
+ passing the associated with this
+ instance.
+
+
+
+
+ Remove the identifed from the 's
+ list of global listeners.
+
+
+
+ true if the identifed listener was found in the list, and removed
+
+
+
+
+ Calls the equivalent method on the 'proxied' ,
+ passing the associated with this
+ instance.
+
+
+
+
+ Calls the equivalent method on the 'proxied' .
+
+
+
+
+ Calls the equivalent method on the 'proxied' .
+
+
+
+
+ Calls the equivalent method on the 'proxied' .
+
+
+
+
+ Calls the equivalent method on the 'proxied' .
+
+
+
+
+ Remove the identifed from the 's
+ list of global listeners.
+
+ The name.
+
+ true if the identifed listener was found in the list, and removed.
+
+
+
+
+ Calls the equivalent method on the 'proxied' .
+
+
+
+
+ Calls the equivalent method on the 'proxied' .
+
+
+
+
+ Calls the equivalent method on the 'proxied' .
+
+
+
+
+ Calls the equivalent method on the 'proxied' .
+
+
+
+
+ Calls the equivalent method on the 'proxied' .
+
+
+
+
+ Returns the name of the .
+
+
+
+
+ Returns the instance Id of the .
+
+
+
+
+ Gets or sets the remote scheduler address.
+
+ The remote scheduler address.
+
+
+
+ Returns the of the .
+
+
+
+
+ Calls the equivalent method on the 'proxied' .
+
+
+
+
+ Gets a value indicating whether this instance is paused.
+
+ true if this instance is paused; otherwise, false.
+
+
+
+ Calls the equivalent method on the 'proxied' .
+
+
+
+
+ Calls the equivalent method on the 'proxied' ,
+ passing the associated with this
+ instance.
+
+
+
+
+ Calls the equivalent method on the 'proxied' ,
+ passing the associated with this
+ instance.
+
+
+
+
+ Calls the equivalent method on the 'proxied' ,
+ passing the associated with this
+ instance.
+
+
+
+
+ Calls the equialent method on the 'proxied' .
+
+
+
+
+ Calls the equivalent method on the 'proxied' .
+
+
+
+
+ Calls the equivalent method on the 'proxied' .
+
+
+
+
+ Calls the equivalent method on the 'proxied' .
+
+
+
+
+ Calls the equivalent method on the 'proxied' .
+
+
+
+
+ Set the that will be responsible for producing
+ instances of classes.
+
+ JobFactories may be of use to those wishing to have their application
+ produce instances via some special mechanism, such as to
+ give the opertunity for dependency injection.
+
+
+
+
+ SchedulerException
+
+
+
+ Whether the scheduler has been started.
+
+
+
+ Note: This only reflects whether has ever
+ been called on this Scheduler, so it will return even
+ if the is currently in standby mode or has been
+ since shutdown.
+
+
+
+
+
+
+
+ Holds references to Scheduler instances - ensuring uniqueness, and
+ preventing garbage collection, and allowing 'global' lookups.
+
+ James House
+ Marko Lahma (.NET)
+
+
+
+ Binds the specified sched.
+
+ The sched.
+
+
+
+ Removes the specified sched name.
+
+ Name of the sched.
+
+
+
+
+ Lookups the specified sched name.
+
+ Name of the sched.
+
+
+
+
+ Lookups all.
+
+
+
+
+
+ Gets the singleton instance.
+
+ The instance.
+
+
+
+ Responsible for creating the instances of
+ to be used within the instance.
+
+ This implementation does not re-use any objects, it simply makes a new
+ JobRunShell each time is called.
+
+
+ James House
+
+
+
+ Initialize the factory, providing a handle to the
+ that should be made available within the and
+ the s within it, and a handle to the
+ that the shell will use in its own
+ operations with the .
+
+
+
+
+ Called by the to obtain instances of
+ .
+
+
+
+
+ Called by the to return instances of
+ .
+
+
+
+
+ An implementation of the interface that directly
+ proxies all method calls to the equivalent call on a given
+ instance.
+
+
+
+
+ James House
+
+
+
+ returns true if the given JobGroup
+ is paused
+
+
+
+
+
+
+ returns true if the given TriggerGroup
+ is paused
+
+
+
+
+
+
+ Get a object describiing the settings
+ and capabilities of the scheduler instance.
+
+ Note that the data returned is an 'instantaneous' snap-shot, and that as
+ soon as it's returned, the meta data values may be different.
+
+
+
+
+
+
+ Calls the equivalent method on the 'proxied' .
+
+
+
+
+
+
+
+
+ Get the global that has
+ the given name.
+
+
+
+
+
+
+ Get the global that
+ has the given name.
+
+
+
+
+
+
+ Construct a instance to proxy the given
+ instance, and with the given .
+
+
+
+
+ Calls the equivalent method on the 'proxied' .
+
+
+
+
+ Calls the equivalent method on the 'proxied' .
+
+
+
+
+ Calls the equivalent method on the 'proxied' .
+
+
+
+
+ Calls the equivalent method on the 'proxied' .
+
+
+
+
+ Calls the equivalent method on the 'proxied' .
+
+
+
+
+ Calls the equivalent method on the 'proxied' ,
+ passing the associated with this
+ instance.
+
+
+
+
+ Calls the equivalent method on the 'proxied' ,
+ passing the associated with this
+ instance.
+
+
+
+
+ Calls the equivalent method on the 'proxied' ,
+ passing the associated with this
+ instance.
+
+
+
+
+ Calls the equivalent method on the 'proxied' ,
+ passing the associated with this
+ instance.
+
+
+
+
+ Calls the equivalent method on the 'proxied' ,
+ passing the associated with this
+ instance.
+
+
+
+
+ Calls the equivalent method on the 'proxied' ,
+ passing the associated with this
+ instance.
+
+
+
+
+ Calls the equivalent method on the 'proxied' ,
+ passing the associated with this
+ instance.
+
+
+
+
+ Calls the equivalent method on the 'proxied' ,
+ passing the associated with this
+ instance.
+
+
+
+
+ Calls the equivalent method on the 'proxied' ,
+ passing the associated with this
+ instance.
+
+
+
+
+ Calls the equivalent method on the 'proxied' ,
+ passing the associated with this
+ instance.
+
+
+
+
+ Calls the equivalent method on the 'proxied' ,
+ passing the associated with this
+ instance.
+
+
+
+
+ Calls the equivalent method on the 'proxied' ,
+ passing the associated with this
+ instance.
+
+
+
+
+ Calls the equivalent method on the 'proxied' ,
+ passing the associated with this
+ instance.
+
+
+
+
+ Calls the equivalent method on the 'proxied' ,
+ passing the associated with this
+ instance.
+
+
+
+
+ Calls the equivalent method on the 'proxied' ,
+ passing the associated with this
+ instance.
+
+
+
+
+ Calls the equivalent method on the 'proxied' ,
+ passing the associated with this
+ instance.
+
+
+
+
+ Calls the equivalent method on the 'proxied' ,
+ passing the associated with this
+ instance.
+
+
+
+
+ Calls the equivalent method on the 'proxied' ,
+ passing the associated with this
+ instance.
+
+
+
+
+ Calls the equivalent method on the 'proxied' ,
+ passing the associated with this
+ instance.
+
+
+
+
+ Calls the equivalent method on the 'proxied' ,
+ passing the associated with this
+ instance.
+
+
+
+
+ Calls the equivalent method on the 'proxied' ,
+ passing the associated with this
+ instance.
+
+
+
+
+ Calls the equivalent method on the 'proxied' ,
+ passing the associated with this
+ instance.
+
+
+
+
+ Calls the equivalent method on the 'proxied' ,
+ passing the associated with this
+ instance.
+
+
+
+
+ Calls the equivalent method on the 'proxied' ,
+ passing the associated with this
+ instance.
+
+
+
+
+ Calls the equivalent method on the 'proxied' ,
+ passing the associated with this
+ instance.
+
+
+
+
+ Calls the equivalent method on the 'proxied' ,
+ passing the associated with this
+ instance.
+
+
+
+
+ Calls the equivalent method on the 'proxied' ,
+ passing the associated with this
+ instance.
+
+
+
+
+ Calls the equivalent method on the 'proxied' ,
+ passing the associated with this
+ instance.
+
+
+
+
+ Calls the equivalent method on the 'proxied' ,
+ passing the associated with this
+ instance.
+
+
+
+
+ Get the names of all registered .
+
+
+
+
+
+ Calls the equivalent method on the 'proxied' .
+
+
+
+
+ Calls the equivalent method on the 'proxied' .
+
+
+
+
+ Calls the equivalent method on the 'proxied' .
+
+
+
+
+ Remove the identifed from the 's
+ list of global listeners.
+
+
+
+ true if the identifed listener was found in the list, and removed
+
+
+
+
+ Calls the equivalent method on the 'proxied' .
+
+
+
+
+ Calls the equivalent method on the 'proxied' .
+
+
+
+
+ Calls the equivalent method on the 'proxied' .
+
+
+
+
+ Calls the equivalent method on the 'proxied' .
+
+
+
+
+ Calls the equivalent method on the 'proxied' .
+
+
+
+
+ Remove the identifed from the 's
+ list of global listeners.
+
+ The name.
+
+ true if the identifed listener was found in the list, and removed.
+
+
+
+
+ Calls the equivalent method on the 'proxied' .
+
+
+
+
+ Calls the equivalent method on the 'proxied' .
+
+
+
+
+ Calls the equivalent method on the 'proxied' .
+
+
+
+
+ Calls the equivalent method on the 'proxied' .
+
+
+
+
+ Request the interruption, within this Scheduler instance, of all
+ currently executing instances of the identified , which
+ must be an implementor of the interface.
+
+
+
+ If more than one instance of the identified job is currently executing,
+ the method will be called on
+ each instance. However, there is a limitation that in the case that
+ on one instances throws an exception, all
+ remaining instances (that have not yet been interrupted) will not have
+ their method called.
+
+
+ If you wish to interrupt a specific instance of a job (when more than
+ one is executing) you can do so by calling
+ to obtain a handle
+ to the job instance, and then invoke on it
+ yourself.
+
+
+ This method is not cluster aware. That is, it will only interrupt
+ instances of the identified InterruptableJob currently executing in this
+ Scheduler instance, not across the entire cluster.
+
+
+
+
+ true is at least one instance of the identified job was found and interrupted.
+ UnableToInterruptJobException if the job does not implement
+
+
+
+
+
+ Returns the name of the .
+
+
+
+
+ Returns the instance Id of the .
+
+
+
+
+ Returns the of the .
+
+
+
+
+ Whether the scheduler has been started.
+
+
+
+ Note: This only reflects whether has ever
+ been called on this Scheduler, so it will return even
+ if the is currently in standby mode or has been
+ since shutdown.
+
+
+
+
+
+
+
+ Calls the equivalent method on the 'proxied' .
+
+
+
+
+ Calls the equivalent method on the 'proxied' .
+
+
+
+
+ Calls the equivalent method on the 'proxied' ,
+ passing the associated with this
+ instance.
+
+
+
+
+ Calls the equivalent method on the 'proxied' ,
+ passing the associated with this
+ instance.
+
+
+
+
+ Calls the equivalent method on the 'proxied' ,
+ passing the associated with this
+ instance.
+
+
+
+
+ Calls the equivalent method on the 'proxied' .
+
+
+
+
+ Calls the equivalent method on the 'proxied' .
+
+
+
+
+ Calls the equivalent method on the 'proxied' .
+
+
+
+
+ Calls the equivalent method on the 'proxied' .
+
+
+
+
+ Calls the equivalent method on the 'proxied' .
+
+
+
+
+
+
+
+
+ An implementation of that
+ does all of it's work of creating a instance
+ based on the contenents of a properties file.
+
+
+
+ By default a properties are loaded from App.config's quartz section.
+ If that fails, then the "quartz.properties"
+ file located (as a embedded resource) in Quartz.dll is loaded. If you
+ wish to use a file other than these defaults, you must define the system
+ property 'quartz.properties' to point to the file you want.
+
+
+
+ See the sample properties that are distributed with Quartz for
+ information about the various settings available within the file.
+
+
+
+ Alternativly, you can explicitly Initialize the factory by calling one of
+ the methods before calling .
+
+
+
+ Instances of the specified ,
+ , classes will be created
+ by name, and then any additional properties specified for them in the config
+ file will be set on the instance by calling an equivalent 'set' method. For
+ example if the properties file contains the property 'quartz.jobStore.
+ myProp = 10' then after the JobStore class has been instantiated, the property
+ 'MyProp' will be set with the value. Type conversion to primitive CLR types
+ (int, long, float, double, boolean, enum and string) are performed before calling
+ the property's setter method.
+
+
+ James House
+ Anthony Eden
+ Mohammad Rezaei
+ Marko Lahma (.NET)
+
+
+
+ Initializes a new instance of the class.
+
+
+
+
+ Initializes a new instance of the class.
+
+ The props.
+
+
+
+ Initialize the with
+ the contenents of a Properties file.
+
+
+ By default a properties file named "quartz.properties" is loaded from
+ the 'current working directory'. If that fails, then the
+ "quartz.properties" file located (as a resource) in the org/quartz
+ package is loaded. If you wish to use a file other than these defaults,
+ you must define the system property 'quartz.properties' to point to
+ the file you want.
+
+
+
+
+
+ Creates a new name value collection and overrides its values
+ with system values (environment variables).
+
+ The base properties to override.
+ A new NameValueCollection instance.
+
+
+
+ Initialize the with
+ the contenents of the given Properties object.
+
+
+
+
+
+
+
+ Returns a handle to the Scheduler produced by this factory.
+
+
+
+ If one of the methods has not be previously
+ called, then the default (no-arg) method
+ will be called by this method.
+
+
+
+
+ Returns a handle to the Scheduler with the given name, if it exists (if
+ it has already been instantiated).
+
+
+
+
+
+ Returns a handle to the default Scheduler, creating it if it does not
+ yet exist.
+
+
+
+
+
+
+ Returns a handle to all known Schedulers (made by any
+ StdSchedulerFactory instance.).
+
+
+
+
+
+ Inspects a file and compares whether it's "last modified date" has changed
+ since the last time it was inspected. If the file has been updated, the
+ job invokes a "call-back" method on an identified
+ that can be found in the
+ .
+
+ James House
+
+
+
+
+ A marker interface for s that
+ wish to have their state maintained between executions.
+
+
+ instances follow slightly different rules from
+ regular instances. The key difference is that their
+ associated is re-persisted after every
+ execution of the job, thus preserving state for the next execution. The
+ other difference is that stateful jobs are not allowed to Execute
+ concurrently, which means new triggers that occur before the completion of
+ the method will be delayed.
+
+
+
+
+
+ James House
+ Marko Lahma (.NET)
+
+
+
+ The interface to be implemented by classes which represent a 'job' to be
+ performed.
+
+
+ Instances of this interface must have a
+ no-argument constructor. provides a mechanism for 'instance member data'
+ that may be required by some implementations of this interface.
+
+
+
+
+
+ James House
+ Marko Lahma (.NET)
+
+
+
+ Called by the when a
+ fires that is associated with the .
+
+
+ The implementation may wish to set a result object on the
+ JobExecutionContext before this method exits. The result itself
+ is meaningless to Quartz, but may be informative to
+ s or
+ s that are watching the job's
+ execution.
+
+ The execution context.
+
+
+
+ Initializes a new instance of the class.
+
+
+
+
+ Called by the when a
+ fires that is associated with the .
+
+ The implementation may wish to set a result object on the
+ JobExecutionContext before this method exits. The result itself
+ is meaningless to Quartz, but may be informative to
+ s or
+ s that are watching the job's
+ execution.
+
+
+ The execution context.
+
+
+
+
+
+ Gets the last modified date.
+
+ Name of the file.
+
+
+
+
+ Gets the log.
+
+ The log.
+
+
+
+ Interface for objects wishing to receive a 'call-back' from a
+ .
+
+ James House
+
+
+
+
+ Ïnforms that certain file has been updated.
+
+ Name of the file.
+
+
+
+ Built in job for executing native executables in a separate process.
+
+ Matthew Payne
+ James House
+ Steinar Overbeck Cook
+
+
+
+ Required parameter that specifies the name of the command (executable)
+ to be ran.
+
+
+
+
+ Optional parameter that specifies the parameters to be passed to the
+ executed command.
+
+
+
+
+ Optional parameter (value should be 'true' or 'false') that specifies
+ whether the job should wait for the execution of the native process to
+ complete before it completes.
+
+ Defaults to .
+
+
+
+
+ Optional parameter (value should be 'true' or 'false') that specifies
+ whether the spawned process's stdout and stderr streams should be
+ consumed. If the process creates output, it is possible that it might
+ 'hang' if the streams are not consumed.
+
+ Defaults to .
+
+
+
+
+ Optional parameter that specifies the workling directory to be used by
+ the executed command.
+
+
+
+
+ Initializes a new instance of the class.
+
+
+
+
+ Called by the when a
+ fires that is associated with the .
+
+ The implementation may wish to set a result object on the
+ JobExecutionContext before this method exits. The result itself
+ is meaningless to Quartz, but may be informative to
+ s or
+ s that are watching the job's
+ execution.
+
+
+
+
+
+
+ Gets the log.
+
+ The log.
+
+
+
+ Consumes data from the given input stream until EOF and prints the data to stdout
+
+ cooste
+ James House
+
+
+
+ Initializes a new instance of the class.
+
+ The enclosing instance.
+ The input stream.
+ The type.
+
+
+
+ Runs this object as a separate thread, printing the contents of the input stream
+ supplied during instantiation, to either Console. or stderr
+
+
+
+
+ An implementation of Job, that does absolutely nothing - useful for system
+ which only wish to use s
+ and s, rather than writing
+ Jobs that perform work.
+
+ James House
+
+
+
+ Do nothing.
+
+
+
+
+ A Job which sends an e-mail with the configured content to the configured
+ recipient.
+
+ James House
+ Marko Lahma (.NET)
+
+
+ The host name of the smtp server. REQUIRED.
+
+
+ The e-mail address to send the mail to. REQUIRED.
+
+
+ The e-mail address to cc the mail to. Optional.
+
+
+ The e-mail address to claim the mail is from. REQUIRED.
+
+
+ The e-mail address the message should say to reply to. Optional.
+
+
+ The subject to place on the e-mail. REQUIRED.
+
+
+ The e-mail message body. REQUIRED.
+
+
+
+ Executes the job.
+
+ The job execution context.
+
+
+
+ Holds a List of references to SchedulerListener instances and broadcasts all
+ events to them (in order).
+
+
+ This may be more convenient than registering all of the listeners
+ directly with the Scheduler, and provides the flexibility of easily changing
+ which listeners get notified.
+
+
+
+ James House
+
+
+
+ Construct an instance with the given List of listeners.
+
+ The initial List of SchedulerListeners to broadcast to.
+
+
+
+ Holds a List of references to JobListener instances and broadcasts all
+ events to them (in order) - if the event is not excluded via filtering
+ (read on).
+
+
+
+ The broadcasting behavior of this listener to delegate listeners may be
+ more convenient than registering all of the listeners directly with the
+ Trigger, and provides the flexibility of easily changing which listeners
+ get notified.
+
+
+
+ You may also register a number of Regular Expression patterns to match
+ the events against. If one or more patterns are registered, the broadcast
+ will only take place if the event applies to a job who's name/group
+ matches one or more of the patterns.
+
+
+
+
+
+
+
+ James House
+
+
+ Construct an instance with the given name.
+
+ (Remember to add some delegate listeners!)
+
+ @param name the name of this instance
+
+
+ Construct an instance with the given name, and List of listeners.
+
+ @param name the name of this instance
+ @param listeners the initial List of JobListeners to broadcast to.
+
+
+
+ If one or more name patterns are specified, only events relating to
+ jobs who's name matches the given regular expression pattern
+ will be dispatched to the delegate listeners.
+
+
+
+
+
+ If one or more group patterns are specified, only events relating to
+ jobs who's group matches the given regular expression pattern
+ will be dispatched to the delegate listeners.
+
+
+
+
+
+ Holds a List of references to TriggerListener instances and broadcasts all
+ events to them (in order) - if the event is not excluded via filtering
+ (read on).
+
+
+
+ The broadcasting behavior of this listener to delegate listeners may be
+ more convenient than registering all of the listeners directly with the
+ Trigger, and provides the flexibility of easily changing which listeners
+ get notified.
+
+
+
+ You may also register a number of Regular Expression patterns to match
+ the events against. If one or more patterns are registered, the broadcast
+ will only take place if the event applies to a trigger who's name/group
+ matches one or more of the patterns.
+
+
+
+
+
+
+
+ James House
+
+
+
+ The interface to be implemented by classes that want to be informed when a
+ fires. In general, applications that use a
+ will not have use for this mechanism.
+
+
+
+
+
+ James House
+
+
+
+ Called by the when a
+ has fired, and it's associated
+ is about to be executed.
+
+ It is called before the method of this
+ interface.
+
+
+ The that has fired.
+
+ The that will be passed to the 's method.
+
+
+
+
+ Called by the when a
+ has fired, and it's associated
+ is about to be executed.
+
+ It is called after the method of this
+ interface.
+
+
+ The that has fired.
+ The that will be passed to
+ the 's method.
+ Returns true if job execution should be vetoed, false otherwise.
+
+
+
+ Called by the when a
+ has misfired.
+
+ Consideration should be given to how much time is spent in this method,
+ as it will affect all triggers that are misfiring. If you have lots
+ of triggers misfiring at once, it could be an issue it this method
+ does a lot.
+
+
+ The that has misfired.
+
+
+
+ Called by the when a
+ has fired, it's associated
+ has been executed, and it's method has been
+ called.
+
+ The that was fired.
+
+ The that was passed to the
+ 's method.
+
+
+ The result of the call on the 's method.
+
+
+
+
+ Get the name of the .
+
+
+
+
+ Construct an instance with the given name.
+
+ (Remember to add some delegate listeners!)
+
+ the name of this instance
+
+
+
+ Construct an instance with the given name, and List of listeners.
+
+ the name of this instance
+ the initial List of TriggerListeners to broadcast to
+
+
+
+ If one or more name patterns are specified, only events relating to
+ triggers who's name matches the given regular expression pattern
+ will be dispatched to the delegate listeners.
+
+
+
+
+
+ If one or more group patterns are specified, only events relating to
+ triggers who's group matches the given regular expression pattern
+ will be dispatched to the delegate listeners.
+
+
+
+
+
+ Keeps a collection of mappings of which Job to trigger after the completion
+ of a given job. If this listener is notified of a job completing that has a
+ mapping, then it will then attempt to trigger the follow-up job. This
+ achieves "job chaining", or a "poor man's workflow".
+
+
+
+ Generally an instance of this listener would be registered as a global
+ job listener, rather than being registered directly to a given job.
+
+
+ If for some reason there is a failure creating the trigger for the
+ follow-up job (which would generally only be caused by a rare serious
+ failure in the system, or the non-existence of the follow-up job), an error
+ messsage is logged, but no other action is taken. If you need more rigorous
+ handling of the error, consider scheduling the triggering of the flow-up
+ job within your job itself.
+
+
+ James House
+
+
+
+ A helpful abstract base class for implementors of .
+
+
+
+ The methods in this class are empty so you only need to override the
+ subset for the events you care about.
+
+
+
+ You are required to implement
+ to return the unique name of your .
+
+
+
+
+
+
+ Initializes a new instance of the class.
+
+
+
+
+ Called by the when a
+ is about to be executed (an associated
+ has occured).
+
+ This method will not be invoked if the execution of the Job was vetoed
+ by a .
+
+
+
+
+
+
+
+ Called by the when a
+ was about to be executed (an associated
+ has occured), but a vetoed it's
+ execution.
+
+
+
+
+
+
+ Called by the after a
+ has been executed, and be for the associated 's
+ method has been called.
+
+
+
+
+
+
+ Get the for this class's category.
+ This should be used by subclasses for logging.
+
+
+
+
+ Get the name of the .
+
+
+
+
+
+ Construct an instance with the given name.
+
+ The name of this instance.
+
+
+
+ Add a chain mapping - when the Job identified by the first key completes
+ the job identified by the second key will be triggered.
+
+ a Key with the name and group of the first job
+ a Key with the name and group of the follow-up job
+
+
+
+ A helpful abstract base class for implementors of
+ .
+
+
+
+ The methods in this class are empty so you only need to override the
+ subset for the events
+ you care about.
+
+
+
+ You are required to implement
+ to return the unique name of your .
+
+
+
+
+
+
+ Get the for this
+ class's category. This should be used by subclasses for logging.
+
+
+
+
+ Get the name of the .
+
+
+
+
+
+ Logs a history of all job executions (and execution vetos) via common
+ logging.
+
+
+
+ The logged message is customizable by setting one of the following message
+ properties to a string that conforms to the syntax of .
+
+
+ JobToBeFiredMessage - available message data are:
+
+ | Element |
+ Data Type |
+ Description |
+
+
+ | 0 |
+ String |
+ The Job's Name. |
+
+
+ | 1 |
+ String |
+ The Job's Group. |
+
+
+ | 2 |
+ Date |
+ The current time. |
+
+
+ | 3 |
+ String |
+ The Trigger's name. |
+
+
+ | 4 |
+ String |
+ The Triggers's group. |
+
+
+ | 5 |
+ Date |
+ The scheduled fire time. |
+
+
+ | 6 |
+ Date |
+ The next scheduled fire time. |
+
+
+ | 7 |
+ Integer |
+ The re-fire count from the JobExecutionContext. |
+
+
+ The default message text is "Job {1}.{0} fired (by trigger {4}.{3}) at:
+ {2, date, HH:mm:ss MM/dd/yyyy"
+
+
+ JobSuccessMessage - available message data are:
+
+ | Element |
+ Data Type |
+ Description |
+
+
+ | 0 |
+ String |
+ The Job's Name. |
+
+
+ | 1 |
+ String |
+ The Job's Group. |
+
+
+ | 2 |
+ Date |
+ The current time. |
+
+
+ | 3 |
+ String |
+ The Trigger's name. |
+
+
+ | 4 |
+ String |
+ The Triggers's group. |
+
+
+ | 5 |
+ Date |
+ The scheduled fire time. |
+
+
+ | 6 |
+ Date |
+ The next scheduled fire time. |
+
+
+ | 7 |
+ Integer |
+ The re-fire count from the JobExecutionContext. |
+
+
+ | 8 |
+ Object |
+ The string value (toString() having been called) of the result (if any)
+ that the Job set on the JobExecutionContext, with on it. "NULL" if no
+ result was set. |
+
+
+ The default message text is "Job {1}.{0} execution complete at {2, date,
+ HH:mm:ss MM/dd/yyyy} and reports: {8"
+
+
+ JobFailedMessage - available message data are:
+
+ | Element |
+ Data Type |
+ Description |
+
+
+ | 0 |
+ String |
+ The Job's Name. |
+
+
+ | 1 |
+ String |
+ The Job's Group. |
+
+
+ | 2 |
+ Date |
+ The current time. |
+
+
+ | 3 |
+ String |
+ The Trigger's name. |
+
+
+ | 4 |
+ String |
+ The Triggers's group. |
+
+
+ | 5 |
+ Date |
+ The scheduled fire time. |
+
+
+ | 6 |
+ Date |
+ The next scheduled fire time. |
+
+
+ | 7 |
+ Integer |
+ The re-fire count from the JobExecutionContext. |
+
+
+ | 8 |
+ String |
+ The message from the thrown JobExecution Exception.
+ |
+
+
+ The default message text is "Job {1}.{0} execution failed at {2, date,
+ HH:mm:ss MM/dd/yyyy} and reports: {8"
+
+
+ JobWasVetoedMessage - available message data are:
+
+ | Element |
+ Data Type |
+ Description |
+
+
+ | 0 |
+ String |
+ The Job's Name. |
+
+
+ | 1 |
+ String |
+ The Job's Group. |
+
+
+ | 2 |
+ Date |
+ The current time. |
+
+
+ | 3 |
+ String |
+ The Trigger's name. |
+
+
+ | 4 |
+ String |
+ The Triggers's group. |
+
+
+ | 5 |
+ Date |
+ The scheduled fire time. |
+
+
+ | 6 |
+ Date |
+ The next scheduled fire time. |
+
+
+ | 7 |
+ Integer |
+ The re-fire count from the JobExecutionContext. |
+
+
+ The default message text is "Job {1}.{0} was vetoed. It was to be fired
+ (by trigger {4}.{3}) at: {2, date, HH:mm:ss MM/dd/yyyy"
+
+
+
+
+
+ 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 ,
+ , and/or .
+
+ If you use 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 's
+ as part of its
+ method.
+
+
+ James House
+
+
+
+ Called during creation of the in order to give
+ the a chance to Initialize.
+
+
+ At this point, the Scheduler's is not yet
+
+ If you need direct access your plugin, you can have it explicitly put a
+ reference to itself in the 's
+ as part of its
+ method.
+
+
+
+ The name by which the plugin is identified.
+
+
+ The scheduler to which the plugin is registered.
+
+
+
+
+ Called when the associated is started, in order
+ to let the plug-in know it can now make calls into the scheduler if it
+ needs to.
+
+
+
+
+ Called in order to inform the that it
+ should free up all of it's resources because the scheduler is shutting
+ down.
+
+
+
+
+ Called during creation of the in order to give
+ the a chance to Initialize.
+
+
+
+
+ Called when the associated is started, in order
+ to let the plug-in know it can now make calls into the scheduler if it
+ needs to.
+
+
+
+
+ Called in order to inform the that it
+ should free up all of it's resources because the scheduler is shutting
+ down.
+
+
+
+
+ Called by the when a is
+ about to be executed (an associated has occurred).
+
+ This method will not be invoked if the execution of the Job was vetoed by a
+ .
+
+
+
+
+
+
+ Called by the after a
+ has been executed, and be for the associated 's
+ method has been called.
+
+
+
+
+
+
+ Called by the when a
+ was about to be executed (an associated
+ has occured), but a vetoed it's
+ execution.
+
+
+
+
+
+
+ Logger instance to use. Defaults to common logging.
+
+
+
+
+ Get or sets the message that is logged when a Job successfully completes its
+ execution.
+
+
+
+
+ Get or sets the message that is logged when a Job fails its
+ execution.
+
+
+
+
+ Gets or sets the message that is logged when a Job is about to Execute.
+
+
+
+
+ Gets or sets the message that is logged when a Job execution is vetoed by a
+ trigger listener.
+
+
+
+
+ Get the name of the .
+
+
+
+
+
+ Logs a history of all trigger firings via the Jakarta Commons-Logging
+ framework.
+
+
+
+ The logged message is customizable by setting one of the following message
+ properties to a string that conforms to the syntax of .
+
+
+
+ TriggerFiredMessage - available message data are:
+
+ | Element |
+ Data Type |
+ Description |
+
+
+ | 0 |
+ String |
+ The Trigger's Name. |
+
+
+ | 1 |
+ String |
+ The Trigger's Group. |
+
+
+ | 2 |
+ Date |
+ The scheduled fire time. |
+
+
+ | 3 |
+ Date |
+ The next scheduled fire time. |
+
+
+ | 4 |
+ Date |
+ The actual fire time. |
+
+
+ | 5 |
+ String |
+ The Job's name. |
+
+
+ | 6 |
+ String |
+ The Job's group. |
+
+
+ | 7 |
+ Integer |
+ The re-fire count from the JobExecutionContext. |
+
+
+
+ The default message text is "Trigger {1}.{0} fired job {6}.{5} at: {4,
+ date, HH:mm:ss MM/dd/yyyy"
+
+
+
+ TriggerMisfiredMessage - available message data are:
+
+ | Element |
+ Data Type |
+ Description |
+
+
+ | 0 |
+ String |
+ The Trigger's Name. |
+
+
+ | 1 |
+ String |
+ The Trigger's Group. |
+
+
+ | 2 |
+ Date |
+ The scheduled fire time. |
+
+
+ | 3 |
+ Date |
+ The next scheduled fire time. |
+
+
+ | 4 |
+ Date |
+ The actual fire time. (the time the misfire was detected/handled) |
+
+
+ | 5 |
+ String |
+ The Job's name. |
+
+
+ | 6 |
+ String |
+ The Job's group. |
+
+
+
+ The default message text is "Trigger {1}.{0} misfired job {6}.{5} at:
+ {4, date, HH:mm:ss MM/dd/yyyy}. Should have fired at: {3, date, HH:mm:ss
+ MM/dd/yyyy"
+
+
+
+ TriggerCompleteMessage - available message data are:
+
+ | Element |
+ Data Type |
+ Description |
+
+
+ | 0 |
+ String |
+ The Trigger's Name. |
+
+
+ | 1 |
+ String |
+ The Trigger's Group. |
+
+
+ | 2 |
+ Date |
+ The scheduled fire time. |
+
+
+ | 3 |
+ Date |
+ The next scheduled fire time. |
+
+
+ | 4 |
+ Date |
+ The job completion time. |
+
+
+ | 5 |
+ String |
+ The Job's name. |
+
+
+ | 6 |
+ String |
+ The Job's group. |
+
+
+ | 7 |
+ Integer |
+ The re-fire count from the JobExecutionContext. |
+
+
+ | 8 |
+ Integer |
+ The trigger's resulting instruction code. |
+
+
+ | 9 |
+ String |
+ A human-readable translation of the trigger's resulting instruction
+ code. |
+
+
+
+ The default message text is "Trigger {1}.{0} completed firing job
+ {6}.{5} at {4, date, HH:mm:ss MM/dd/yyyy} with resulting trigger instruction
+ code: {9"
+
+
+ James House
+
+
+
+ Called during creation of the in order to give
+ the a chance to Initialize.
+
+
+
+
+ Called when the associated is started, in order
+ to let the plug-in know it can now make calls into the scheduler if it
+ needs to.
+
+
+
+
+ Called in order to inform the that it
+ should free up all of it's resources because the scheduler is shutting
+ down.
+
+
+
+
+ Called by the when a
+ has fired, and it's associated
+ is about to be executed.
+
+ It is called before the method of this
+ interface.
+
+
+ The that has fired.
+ The that will be passed to the 's method.
+
+
+
+ Called by the when a
+ has misfired.
+
+ Consideration should be given to how much time is spent in this method,
+ as it will affect all triggers that are misfiring. If you have lots
+ of triggers misfiring at once, it could be an issue it this method
+ does a lot.
+
+
+ The that has misfired.
+
+
+
+ Called by the when a
+ has fired, it's associated
+ has been executed, and it's method has been
+ called.
+
+ The that was fired.
+ The that was passed to the
+ 's method.
+ The result of the call on the 's method.
+
+
+
+ Called by the when a
+ has fired, and it's associated
+ is about to be executed.
+
+ It is called after the method of this
+ interface.
+
+
+ The that has fired.
+ The that will be passed to
+ the 's method.
+
+
+
+
+ Logger instance to use. Defaults to common logging.
+
+
+
+
+ Get or set the message that is printed upon the completion of a trigger's
+ firing.
+
+
+
+
+ Get or set the message that is printed upon a trigger's firing.
+
+
+
+
+ Get or set the message that is printed upon a trigger's mis-firing.
+
+
+
+
+ Get the name of the .
+
+
+
+
+
+ This plugin catches the event of the VM terminating (such as upon a CRTL-C)
+ and tells the scheuler to Shutdown.
+
+
+ James House
+
+
+
+ Called during creation of the in order to give
+ the a chance to Initialize.
+
+
+
+
+ Called when the associated is started, in order
+ to let the plug-in know it can now make calls into the scheduler if it
+ needs to.
+
+
+
+
+ Called in order to inform the that it
+ should free up all of it's resources because the scheduler is shutting
+ down.
+
+
+
+
+ Determine whether or not the plug-in is configured to cause a clean
+ Shutdown of the scheduler.
+
+ The default value is .
+
+
+
+
+
+
+ Attribute to use with public properties that
+ can be set with Quartz configuration. Attribute can be used to advice
+ parsing to use correct type of time span (milliseconds, seconds, minutes, hours)
+ as it may depend on property.
+
+
+
+
+
+ Initializes a new instance of the class.
+
+ The rule.
+
+
+
+ Gets the rule.
+
+ The rule.
+
+
+
+ Possible parse rules for s.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ This plugin loads XML file(s) to add jobs and schedule them with triggers
+ as the scheduler is initialized, and can optionally periodically scan the
+ file for changes.
+
+
+ The periodically scanning of files for changes is not currently supported in a
+ clustered environment.
+
+ James House
+ Pierre Awaragi
+
+
+
+ Initializes a new instance of the class.
+
+
+
+
+
+
+
+
+
+
+ Called during creation of the in order to give
+ the a chance to initialize.
+
+ The name.
+ The scheduler.
+ SchedulerConfigException
+
+
+
+ Called when the associated is started, in order
+ to let the plug-in know it can now make calls into the scheduler if it
+ needs to.
+
+
+
+ Helper method for generating unique job/trigger name for the
+ file scanning jobs (one per FileJob). The unique names are saved
+ in jobTriggerNameSet.
+
+
+
+ Called in order to inform the that it
+ should free up all of it's resources because the scheduler is shutting
+ down.
+
+
+
+
+ Gets the log.
+
+ The log.
+
+
+
+ Comma separated list of file names (with paths) to the XML files that should be read.
+
+
+
+
+ Whether or not jobs defined in the XML file should be overwrite existing
+ jobs with the same name.
+
+
+
+
+ The interval at which to scan for changes to the file.
+ If the file has been changed, it is re-loaded and parsed. The default
+ value for the interval is 0, which disables scanning.
+
+
+
+
+ Whether or not initialization of the plugin should fail (throw an
+ exception) if the file cannot be found. Default is .
+
+
+
+
+ Whether or not the XML should be validated. Default is .
+
+
+
+
+ Whether or not the XML schema should be validated. Default is .
+
+
+
+
+ A uses all of the
+ types that are found in this package in its attempts to load a class, when
+ one scheme is found to work, it is promoted to the scheme that will be used
+ first the next time a class is loaded (in order to improve perfomance).
+
+
+ This approach is used because of the wide variance in class loader behavior
+ between the various environments in which Quartz runs (e.g. disparate
+ application servers, stand-alone, mobile devices, etc.). Because of this
+ disparity, Quartz ran into difficulty with a one class-load style fits-all
+ design. Thus, this class loader finds the approach that works, then
+ 'remembers' it.
+
+ James House
+
+
+
+ Called to give the ClassLoadHelper a chance to Initialize itself,
+ including the oportunity to "steal" the class loader off of the calling
+ thread, which is the thread that is initializing Quartz.
+
+
+
+
+ Return the class with the given name.
+
+
+
+ Finds a resource with a given name. This method returns null if no
+ resource with this name is found.
+
+ name of the desired resource
+
+ a java.net.URL object
+
+
+
+ Finds a resource with a given name. This method returns null if no
+ resource with this name is found.
+
+ name of the desired resource
+
+ a java.io.InputStream object
+
+
+
+
+ that names the scheduler instance using
+ just the machine hostname.
+
+ This class is useful when you know that your scheduler instance will be the
+ only one running on a particular machine. Each time the scheduler is
+ restarted, it will get the same instance id as long as the machine is not
+ renamed.
+
+
+
+
+
+
+
+
+ An IInstanceIdGenerator is responsible for generating the clusterwide unique
+ instance id for a nodde.
+
+ This interface may be of use to those wishing to have specific control over
+ the mechanism by which the instances in their
+ application are named.
+
+
+
+
+
+
+ Generate the instance id for a
+
+
+ The clusterwide unique instance id.
+
+
+
+
+ Generate the instance id for a
+
+ The clusterwide unique instance id.
+
+
+
+ A that uses either the loader of it's own
+ class.
+
+
+
+
+ James House
+
+
+
+ Called to give the ClassLoadHelper a chance to Initialize itself,
+ including the oportunity to "steal" the class loader off of the calling
+ thread, which is the thread that is initializing Quartz.
+
+
+
+ Return the class with the given name.
+
+
+ Finds a resource with a given name. This method returns null if no
+ resource with this name is found.
+
+ name of the desired resource
+
+ a java.net.URL object
+
+
+
+ Finds a resource with a given name. This method returns null if no
+ resource with this name is found.
+
+ name of the desired resource
+
+ a java.io.InputStream object
+
+
+
+
+ A JobFactory that instantiates the Job instance (using the default no-arg
+ constructor, or more specifically: ), and
+ then attempts to set all values in the 's
+ onto bean properties of the .
+
+
+
+
+
+
+ James Houser
+ Marko Lahma (.NET)
+
+
+
+ The default JobFactory used by Quartz - simply calls
+ on the job class.
+
+
+
+ James House
+ Marko Lahma (.NET)
+
+
+
+ A JobFactory is responsible for producing instances of
+ classes.
+
+
+ This interface may be of use to those wishing to have their application
+ produce instances via some special mechanism, such as to
+ give the opertunity for dependency injection.
+
+
+
+
+ James House
+
+
+
+ Called by the scheduler at the time of the trigger firing, in order to
+ produce a instance on which to call Execute.
+
+
+
+ It should be extremely rare for this method to throw an exception -
+ basically only the the case where there is no way at all to instantiate
+ and prepare the Job for execution. When the exception is thrown, the
+ Scheduler will move all triggers associated with the Job into the
+ state, which will require human
+ intervention (e.g. an application restart after fixing whatever
+ configuration problem led to the issue wih instantiating the Job.
+
+
+
+
+ The TriggerFiredBundle from which the
+ and other info relating to the trigger firing can be obtained.
+
+ SchedulerException if there is a problem instantiating the Job.
+ the newly instantiated Job
+
+
+
+
+ Called by the scheduler at the time of the trigger firing, in order to
+ produce a instance on which to call Execute.
+
+
+ It should be extremely rare for this method to throw an exception -
+ basically only the the case where there is no way at all to instantiate
+ and prepare the Job for execution. When the exception is thrown, the
+ Scheduler will move all triggers associated with the Job into the
+ state, which will require human
+ intervention (e.g. an application restart after fixing whatever
+ configuration problem led to the issue wih instantiating the Job.
+
+ The TriggerFiredBundle from which the
+ and other info relating to the trigger firing can be obtained.
+ the newly instantiated Job
+ SchedulerException if there is a problem instantiating the Job.
+
+
+
+ Called by the scheduler at the time of the trigger firing, in order to
+ produce a instance on which to call Execute.
+
+
+
+ It should be extremely rare for this method to throw an exception -
+ basically only the the case where there is no way at all to instantiate
+ and prepare the Job for execution. When the exception is thrown, the
+ Scheduler will move all triggers associated with the Job into the
+ state, which will require human
+ intervention (e.g. an application restart after fixing whatever
+ configuration problem led to the issue wih instantiating the Job.
+
+
+ The TriggerFiredBundle from which the
+ and other info relating to the trigger firing can be obtained.
+ the newly instantiated Job
+ SchedulerException if there is a problem instantiating the Job.
+
+
+
+ Sets the object properties.
+
+ The object to set properties to.
+ The data to set.
+
+
+
+ Whether the JobInstantiation should fail and throw and exception if
+ a key (name) and value (type) found in the JobDataMap does not
+ correspond to a proptery setter on the Job class.
+
+
+
+
+ Get or set whether a warning should be logged if
+ a key (name) and value (type) found in the JobDataMap does not
+ correspond to a proptery setter on the Job class.
+
+
+
+
+ This class implements a that
+ utilizes RAM as its storage device.
+
+ As you should know, the ramification of this is that access is extrememly
+ fast, but the data is completely volatile - therefore this
+ should not be used if true persistence between program shutdowns is
+ required.
+
+
+ James House
+ Sharada Jambula
+ Marko Lahma (.NET)
+
+
+
+ Initializes a new instance of the class.
+
+
+
+
+ Called by the QuartzScheduler before the is
+ used, in order to give the it a chance to Initialize.
+
+
+
+
+ Called by the QuartzScheduler to inform the that
+ the scheduler has started.
+
+
+
+
+ Called by the QuartzScheduler to inform the that
+ it should free up all of it's resources because the scheduler is
+ shutting down.
+
+
+
+
+ Store the given and .
+
+ The scheduling context.
+ The to be stored.
+ The to be stored.
+
+
+
+ Returns true if the given job group is paused.
+
+
+ Job group name
+
+
+
+
+ returns true if the given TriggerGroup is paused.
+
+
+
+
+
+
+
+ Store the given .
+
+ The scheduling context.
+ The to be stored.
+ If , any existing in the
+ with the same name and group should be
+ over-written.
+
+
+
+ Remove (delete) the with the given
+ name, and any s that reference
+ it.
+
+ The scheduling context.
+ The name of the to be removed.
+ The group name of the to be removed.
+
+ if a with the given name and
+ group was found and removed from the store.
+
+
+
+
+ Remove (delete) the with the
+ given name.
+
+ The scheduling context.
+ The name of the to be removed.
+ The group name of the to be removed.
+
+ if a with the given
+ name and group was found and removed from the store.
+
+
+
+
+ Store the given .
+
+ The scheduling context.
+ The to be stored.
+ If , any existing in
+ the with the same name and group should
+ be over-written.
+
+
+
+ Remove (delete) the with the
+ given name.
+
+ The scheduling context.
+ The name of the to be removed.
+ The group name of the to be removed.
+
+ if a with the given
+ name and group was found and removed from the store.
+
+ Whether to delete orpahaned job details from scheduler if job becomes orphaned from removing the trigger.
+
+
+
+ Replaces the trigger.
+
+ The scheduling context.
+ Name of the trigger.
+ Name of the group.
+ The new trigger.
+
+
+
+
+ Retrieve the for the given
+ .
+
+ The scheduling context.
+ The name of the to be retrieved.
+ The group name of the to be retrieved.
+
+ The desired , or null if there is no match.
+
+
+
+
+ Retrieve the given .
+
+ The scheduling context.
+ The name of the to be retrieved.
+ The group name of the to be retrieved.
+
+ The desired , or null if there is no match.
+
+
+
+
+ Get the current state of the identified .
+
+
+
+
+
+
+
+
+
+
+ Store the given .
+
+ The scheduling context.
+ The name.
+ The to be stored.
+ If , any existing
+ in the with the same name and group
+ should be over-written.
+ If , any s existing
+ in the that reference an existing
+ Calendar with the same name with have their next fire time
+ re-computed with the new .
+
+
+
+ Remove (delete) the with the
+ given name.
+
+ If removal of the would result in
+ s pointing to non-existent calendars, then a
+ will be thrown.
+
+ The scheduling context.
+ The name of the to be removed.
+
+ if a with the given name
+ was found and removed from the store.
+
+
+
+
+ Retrieve the given .
+
+ The scheduling context.
+ The name of the to be retrieved.
+
+ The desired , or null if there is no match.
+
+
+
+
+ Get the number of s that are
+ stored in the .
+
+
+
+
+ Get the number of s that are
+ stored in the .
+
+
+
+
+ Get the number of s that are
+ stored in the .
+
+
+
+
+ Get the names of all of the s that
+ have the given group name.
+
+
+
+
+ Get the names of all of the s
+ in the .
+
+ If there are no ICalendars in the given group name, the result should be
+ a zero-length array (not ).
+
+
+
+
+
+ Get the names of all of the s
+ that have the given group name.
+
+
+
+
+ Get the names of all of the
+ groups.
+
+
+
+
+ Get the names of all of the groups.
+
+
+
+
+ Get all of the Triggers that are associated to the given Job.
+
+ If there are no matches, a zero-length array should be returned.
+
+
+
+
+
+ Gets the trigger wrappers for job.
+
+ Name of the job.
+ Name of the group.
+
+
+
+
+ Gets the trigger wrappers for calendar.
+
+ Name of the cal.
+
+
+
+
+ Pause the with the given name.
+
+
+
+
+ Pause all of the s in the given group.
+
+ The JobStore should "remember" that the group is paused, and impose the
+ pause on any new triggers that are added to the group while the group is
+ paused.
+
+
+
+
+
+ Pause the with the given
+ name - by pausing all of its current s.
+
+
+
+
+ Pause all of the s in the
+ given group - by pausing all of their s.
+
+ The JobStore should "remember" that the group is paused, and impose the
+ pause on any new jobs that are added to the group while the group is
+ paused.
+
+
+
+
+
+ Resume (un-pause) the with the given name.
+
+
+ If the missed one or more fire-times, then the
+ 's misfire instruction will be applied.
+
+
+
+
+ Resume (un-pause) all of the s in the
+ given group.
+
+ If any missed one or more fire-times, then the
+ 's misfire instruction will be applied.
+
+
+
+
+
+ Resume (un-pause) the with
+ the given name.
+
+ If any of the 's s missed one
+ or more fire-times, then the 's misfire
+ instruction will be applied.
+
+
+
+
+
+ Resume (un-pause) all of the s
+ in the given group.
+
+ If any of the s had s that
+ missed one or more fire-times, then the 's
+ misfire instruction will be applied.
+
+
+
+
+
+ Pause all triggers - equivalent of calling
+ on every group.
+
+ When is called (to un-pause), trigger misfire
+ instructions WILL be applied.
+
+
+
+
+
+
+ Resume (un-pause) all triggers - equivalent of calling
+ on every trigger group and setting all job groups unpaused />.
+
+ If any missed one or more fire-times, then the
+ 's misfire instruction will be applied.
+
+
+
+
+
+
+ Applies the misfire.
+
+ The trigger wrapper.
+
+
+
+
+ Get a handle to the next trigger to be fired, and mark it as 'reserved'
+ by the calling scheduler.
+
+
+
+
+
+ Inform the that the scheduler no longer plans to
+ fire the given , that it had previously acquired
+ (reserved).
+
+
+
+
+ Inform the that the scheduler is now firing the
+ given (executing its associated ),
+ that it had previously acquired (reserved).
+
+
+
+
+ Inform the that the scheduler has completed the
+ firing of the given (and the execution its
+ associated ), and that the
+ in the given should be updated if the
+ is stateful.
+
+
+
+
+ Sets the state of all triggers of job to specified state.
+
+ Name of the job.
+ The job group.
+ The internal state to set.
+
+
+
+ Peeks the triggers.
+
+
+
+
+
+
+
+
+ The time span by which a trigger must have missed its
+ next-fire-time, in order for it to be considered "misfired" and thus
+ have its misfire instruction applied.
+
+
+
+
+ Gets the fired trigger record id.
+
+ The fired trigger record id.
+
+
+
+ Returns whether this instance supports persistence.
+
+
+
+
+
+
+ Comparer for triggers.
+
+
+
+
+ Possible internal trigger states
+ in RAMJobStore
+
+
+
+
+ Waiting
+
+
+
+
+ Acquired
+
+
+
+
+ Executing
+
+
+
+
+ Complete
+
+
+
+
+ Paused
+
+
+
+
+ Blocked
+
+
+
+
+ Paused and Blocked
+
+
+
+
+ Error
+
+
+
+
+ Helper wrapper class
+
+
+
+
+ The key used
+
+
+
+
+ Job's key
+
+
+
+
+ The trigger
+
+
+
+
+ Current state
+
+
+
+
+ Determines whether the specified is equal to the current .
+
+ The to compare with the current .
+
+ true if the specified is equal to the current ; otherwise, false.
+
+
+
+
+ Serves as a hash function for a particular type. is suitable for use in hashing algorithms and data structures like a hash table.
+
+
+ A hash code for the current .
+
+
+
+
+ Gets the trigger
+
+ The trigger
+
+
+
+ Scheduler exporter that exports scheduler to remoting context.
+
+ Marko Lahma
+
+
+
+ Service interface for scheduler exporters.
+
+ Marko Lahma
+
+
+
+ Binds (exports) scheduler to external context.
+
+
+
+
+
+ Unbinds scheduler from external context.
+
+
+
+
+
+ Registers remoting channel if needed. This is determined
+ by checking whether there is a positive value for port.
+
+
+
+
+ Gets or sets the port used for remoting.
+
+
+
+
+ Gets or sets the name to use when exporting
+ scheduler to remoting context.
+
+
+
+
+ Sets the channel type when registering remoting.
+
+
+
+
+
+ Sets the used when
+ exporting to remoting context. Defaults to
+ .
+
+
+
+
+ A that simply calls .
+
+
+
+ James House
+
+
+
+ Called to give the ClassLoadHelper a chance to Initialize itself,
+ including the oportunity to "steal" the class loader off of the calling
+ thread, which is the thread that is initializing Quartz.
+
+
+
+ Return the class with the given name.
+
+
+
+ Finds a resource with a given name. This method returns null if no
+ resource with this name is found.
+
+ name of the desired resource
+
+ a Uri object
+
+
+
+ Finds a resource with a given name. This method returns null if no
+ resource with this name is found.
+
+ name of the desired resource
+
+ a Stream object
+
+
+
+
+ The default InstanceIdGenerator used by Quartz when instance id is to be
+ automatically generated. Instance id is of the form HOSTNAME + CURRENT_TIME.
+
+
+
+
+
+
+
+
+ Generate the instance id for a
+
+ The clusterwide unique instance id.
+
+
+
+ This is class is a simple implementation of a thread pool, based on the
+ interface.
+
+ objects are sent to the pool with the
+ method, which blocks until a becomes available.
+
+
+
+ The pool has a fixed number of s, and does not grow or
+ shrink based on demand.
+
+
+ James House
+ Juergen Donnerstag
+
+
+
+ The interface to be implemented by classes that want to provide a thread
+ pool for the 's use.
+
+
+ implementation instances should ideally be made
+ for the sole use of Quartz. Most importantly, when the method
+ returns a value of 1 or greater,
+ there must still be at least one available thread in the pool when the
+ method is called a few moments (or
+ many moments) later. If this assumption does not hold true, it may
+ result in extra JobStore queries and updates, and if clustering features
+ are being used, it may result in greater imballance of load.
+
+
+ James House
+
+
+
+ Execute the given in the next
+ available .
+
+
+ The implementation of this interface should not throw exceptions unless
+ there is a serious problem (i.e. a serious misconfiguration). If there
+ are no available threads, rather it should either queue the Runnable, or
+ block until a thread is available, depending on the desired strategy.
+
+
+
+
+ Determines the number of threads that are currently available in in
+ the pool. Useful for determining the number of times
+ can be called before returning
+ false.
+
+
+ The implementation of this method should block until there is at
+ least one available thread.
+
+ the number of currently available threads
+
+
+
+ Called by the QuartzScheduler before the is
+ used, in order to give the it a chance to Initialize.
+
+
+
+
+ Called by the QuartzScheduler to inform the
+ that it should free up all of it's resources because the scheduler is
+ shutting down.
+
+
+
+
+ Gets the size of the pool.
+
+ The size of the pool.
+
+
+
+ Create a new (unconfigured) .
+
+
+
+
+ Create a new with the specified number
+ of s that have the given priority.
+
+
+ the number of worker s in the pool, must
+ be > 0.
+
+
+ the thread priority for the worker threads.
+
+
+
+
+
+ Called by the QuartzScheduler before the is
+ used, in order to give the it a chance to Initialize.
+
+
+
+
+ Terminate any worker threads in this thread group.
+ Jobs currently in progress will complete.
+
+
+
+
+ Run the given object in the next available
+ . If while waiting the thread pool is asked to
+ shut down, the Runnable is executed immediately within a new additional
+ thread.
+
+ The to be added.
+
+
+
+ Creates the worker threads.
+
+ The thread count.
+
+
+
+
+ Terminate any worker threads in this thread group.
+ Jobs currently in progress will complete.
+
+
+
+
+ Gets or sets the number of worker threads in the pool.
+ Set has no effect after has been called.
+
+
+
+
+ Get or set the thread priority of worker threads in the pool.
+ Set operation has no effect after has been called.
+
+
+
+
+ Gets or sets the thread name prefix.
+
+ The thread name prefix.
+
+
+
+ Gets or sets the value of makeThreadsDaemons.
+
+
+
+
+ Gets the size of the pool.
+
+ The size of the pool.
+
+
+
+ A Worker loops, waiting to Execute tasks.
+
+
+
+
+ Create a worker thread and start it. Waiting for the next Runnable,
+ executing it, and waiting for the next Runnable, until the Shutdown
+ flag is set.
+
+
+
+
+ Create a worker thread, start it, Execute the runnable and terminate
+ the thread (one time execution).
+
+
+
+
+ Signal the thread that it should terminate.
+
+
+
+
+ Loop, executing targets as they are received.
+
+
+
+
+ This is class is a simple implementation of a zero size thread pool, based on the
+ {@link org.quartz.spi.ThreadPool} interface.
+
+
+ The pool has zero s and does not grow or shrink based on demand.
+ Which means it is obviously not useful for most scenarios. When it may be useful
+ is to prevent creating any worker threads at all - which may be desirable for
+ the sole purpose of preserving system resources in the case where the scheduler
+ instance only exists in order to schedule jobs, but which will never execute
+ jobs (e.g. will never have Start() called on it).
+
+ Wayne Fay
+
+
+
+ Initializes a new instance of the class.
+
+
+
+
+ Called by the QuartzScheduler before the is
+ used, in order to give the it a chance to Initialize.
+
+
+
+
+ Shutdowns this instance.
+
+
+
+
+ Called by the QuartzScheduler to inform the
+ that it should free up all of it's resources because the scheduler is
+ shutting down.
+
+
+
+
+
+ Execute the given in the next
+ available .
+
+
+
+
+ The implementation of this interface should not throw exceptions unless
+ there is a serious problem (i.e. a serious misconfiguration). If there
+ are no available threads, rather it should either queue the Runnable, or
+ block until a thread is available, depending on the desired strategy.
+
+
+
+
+ Determines the number of threads that are currently available in in
+ the pool. Useful for determining the number of times
+ can be called before returning
+ false.
+
+
+ the number of currently available threads
+
+
+ The implementation of this method should block until there is at
+ least one available thread.
+
+
+
+
+ Gets the log.
+
+ The log.
+
+
+
+ Gets the size of the pool.
+
+ The size of the pool.
+
+
+
+ A simple class (structure) used for returning execution-time data from the
+ JobStore to the .
+
+
+ James House
+
+
+
+ Initializes a new instance of the class.
+
+ The job.
+ The trigger.
+ The calendar.
+ if set to true [job is recovering].
+ The fire time.
+ The scheduled fire time.
+ The previous fire time.
+ The next fire time.
+
+
+
+ Gets the job detail.
+
+ The job detail.
+
+
+
+ Gets the trigger.
+
+ The trigger.
+
+
+
+ Gets the calendar.
+
+ The calendar.
+
+
+
+ Gets a value indicating whether this is recovering.
+
+ true if recovering; otherwise, false.
+
+
+
+ Returns the UTC fire time.
+
+
+
+
+ Gets the next UTC fire time.
+
+ The next fire time.
+ Returns the nextFireTimeUtc.
+
+
+
+ Gets the previous UTC fire time.
+
+ The previous fire time.
+ Returns the previous fire time.
+
+
+
+ Returns the scheduled UTC fire time.
+
+
+
+
+ DateTime related utility methods.
+
+
+
+
+ Assumes that given input is in UTC and sets the kind to be UTC.
+ Just a precaution if somebody does not set it explicitly.
+ This only works in .NET Framework 2.0 onwards.
+
+ The datetime to check.
+ DateTime with kind set to UTC.
+
+
+
+ Assumes that given input is in UTC and sets the kind to be UTC.
+ Just a precaution if somebody does not set it explicitly.
+
+ The datetime to check.
+ DateTime with kind set to UTC.
+
+
+
+ Manages a collection of IDbProviders, and provides transparent access
+ to their database.
+
+
+ James House
+ Sharada Jambula
+ Mohammad Rezaei
+
+
+
+ Private constructor
+
+
+
+
+ Adds the connection provider.
+
+ Name of the data source.
+ The provider.
+
+
+
+ Get a database connection from the DataSource with the given name.
+
+ a database connection
+
+
+
+ Shuts down database connections from the DataSource with the given name,
+ if applicable for the underlying provider.
+
+ a database connection
+
+
+
+ Gets the db provider.
+
+ Name of the ds.
+
+
+
+
+ Get the class instance.
+
+ an instance of this class
+
+
+
+
+ An implementation of that wraps another
+ and flags itself 'dirty' when it is modified.
+
+ James House
+
+
+
+ Create a DirtyFlagMap that 'wraps' a .
+
+
+
+
+ Create a DirtyFlagMap that 'wraps' a that has the
+ given initial capacity.
+
+
+
+
+ Create a DirtyFlagMap that 'wraps' a that has the
+ given initial capacity and load factor.
+
+
+
+
+ Creates a new object that is a copy of the current instance.
+
+
+ A new object that is a copy of this instance.
+
+
+
+
+ When implemented by a class, removes all elements from the .
+
+
+ The is read-only.
+
+
+
+
+ When implemented by a class, determines whether the contains an element with the specified key.
+
+ The key to locate in the .
+
+ if the contains an element with the key; otherwise, .
+
+
+ is .
+
+
+
+ When implemented by a class, removes the element with the
+ specified key from the .
+
+ The key of the element to remove.
+
+ is .
+
+ The is read-only.
+ -or-
+ The has a fixed size.
+
+
+
+
+ When implemented by a class, returns an
+ for the .
+
+
+ An for the .
+
+
+
+
+ When implemented by a class, adds an element with the provided key and value to the .
+
+ The to use as the key of the element to add.
+ The to use as the value of the element to add.
+ is .
+
+ An element with the same key already exists in the .
+
+
+ The is read-only.
+ -or-
+ The has a fixed size.
+
+
+
+
+ When implemented by a class, copies the elements of
+ the to an , starting at a particular index.
+
+ The one-dimensional that is the destination of the elements copied from . The must have zero-based indexing.
+ The zero-based index in at which copying begins.
+
+ is .
+
+ is less than zero.
+
+
+ is multidimensional.
+ -or-
+
+ is equal to or greater than the length of .
+ -or-
+ The number of elements in the source is greater than the available space from to the end of the destination .
+
+ The type of the source cannot be cast automatically to the type of the destination .
+
+
+
+ Clear the 'dirty' flag (set dirty flag to ).
+
+
+
+
+ Determines whether the specified obj contains value.
+
+ The obj.
+
+ true if the specified obj contains value; otherwise, false.
+
+
+
+
+ Gets the entries as a set.
+
+
+
+
+
+ Determines whether the specified is equal to the current .
+
+ The to compare with the current .
+
+ if the specified is equal to the
+ current ; otherwise, .
+
+
+
+
+ Serves as a hash function for a particular type, suitable
+ for use in hashing algorithms and data structures like a hash table.
+
+
+ A hash code for the current .
+
+
+
+
+ Gets keyset for this map.
+
+
+
+
+
+ Puts the value behind a specified key.
+
+ The key.
+ The val.
+
+
+
+
+ Puts all.
+
+ The t.
+
+
+
+ Determine whether the is flagged dirty.
+
+
+
+
+ Get a direct handle to the underlying Map.
+
+
+
+
+ Gets a value indicating whether this instance is empty.
+
+ true if this instance is empty; otherwise, false.
+
+
+
+ Gets or sets the with the specified key.
+
+
+
+
+
+ When implemented by a class, gets the number of
+ elements contained in the .
+
+
+
+
+
+ When implemented by a class, gets an containing the values in the .
+
+
+
+
+
+ When implemented by a class, gets an containing the keys of the .
+
+
+
+
+
+ When implemented by a class, gets a value indicating whether the
+ is read-only.
+
+
+
+
+
+ When implemented by a class, gets a value indicating whether the
+ has a fixed size.
+
+
+
+
+
+ When implemented by a class, gets an object that
+ can be used to synchronize access to the .
+
+
+
+
+
+ When implemented by a class, gets a value
+ indicating whether access to the is synchronized
+ (thread-safe).
+
+
+
+
+
+ Utility class for file handling related things.
+
+
+
+
+ Resolves file to actual file if for example relative '~' used.
+
+ File name to check
+ Expanded file name or actual no resolving was done.
+
+
+
+ object representing a job or trigger key.
+
+ Jeffrey Wescott
+
+
+
+
+ Utility class for storing two pieces of information together.
+
+ Jeffrey Wescott
+
+
+
+ Test equality of this object with that.
+
+ object to compare
+ true if objects are equal, false otherwise
+
+
+
+ Serves as a hash function for a particular type. is suitable for use in hashing algorithms and data structures like a hash table.
+
+
+ A hash code for the current .
+
+
+
+
+ Get or sets the first object in the pair.
+
+
+
+
+ Get or sets the second object in the pair.
+
+
+
+ Construct a new key with the given name and group.
+
+
+
+ the name
+
+
+ the group
+
+
+
+
+ Return the string representation of the key. The format will be:
+ <group>.<name>.
+
+
+
+ the string representation of the key
+
+
+
+
+ Get the name portion of the key.
+
+ the name
+
+
+
+
+ Get the group portion of the key.
+
+
+
+ the group
+
+
+
+
+ Wrapper class to access thread local data.
+ Data is either accessed from thread or HTTP Context's
+ data if HTTP Context is avaiable.
+
+ Marko Lahma (.NET)
+
+
+
+ Retrieves an object with the specified name.
+
+ The name of the item.
+ The object in the call context associated with the specified name or null if no object has been stored previously
+
+
+
+ Stores a given object and associates it with the specified name.
+
+ The name with which to associate the new item.
+ The object to store in the call context.
+
+
+
+ Empties a data slot with the specified name.
+
+ The name of the data slot to empty.
+
+
+
+ Utility methods that are used to convert objects from one type into another.
+
+ Aleksandar Seovic
+
+
+
+ Convert the value to the required (if necessary from a string).
+
+ The proposed change value.
+
+ The we must convert to.
+
+ The new value, possibly the result of type conversion.
+
+
+
+ Determines whether value is assignable to required type.
+
+ The value to check.
+ Type of the required.
+
+ true if value can be assigned as given type; otherwise, false.
+
+
+
+
+ Instantiates an instance of the type specified.
+
+ The type to instantiate.
+
+
+
+
+ Sets the object properties using reflection.
+
+ The object to set values to.
+ The properties to set to object.
+
+
+
+ This is an utility class used to parse the properties.
+
+ James House
+
+
+
+ Initializes a new instance of the class.
+
+ The props.
+
+
+
+ Gets the string property.
+
+ The name.
+
+
+
+
+ Gets the string property.
+
+ The name.
+ The default value.
+
+
+
+
+ Gets the string array property.
+
+ The name.
+
+
+
+
+ Gets the string array property.
+
+ The name.
+ The default value.
+
+
+
+
+ Gets the boolean property.
+
+ The name.
+
+
+
+
+ Gets the boolean property.
+
+ The name.
+ if set to true [defaultValue].
+
+
+
+
+ Gets the byte property.
+
+ The name.
+
+
+
+
+ Gets the byte property.
+
+ The name.
+ The default value.
+
+
+
+
+ Gets the char property.
+
+ The name.
+
+
+
+
+ Gets the char property.
+
+ The name.
+ The default value.
+
+
+
+
+ Gets the double property.
+
+ The name.
+
+
+
+
+ Gets the double property.
+
+ The name.
+ The default value.
+
+
+
+
+ Gets the float property.
+
+ The name.
+
+
+
+
+ Gets the float property.
+
+ The name.
+ The default value.
+
+
+
+
+ Gets the int property.
+
+ The name.
+
+
+
+
+ Gets the int property.
+
+ The name.
+ The default value.
+
+
+
+
+ Gets the int array property.
+
+ The name.
+
+
+
+
+ Gets the int array property.
+
+ The name.
+ The default value.
+
+
+
+
+ Gets the long property.
+
+ The name.
+
+
+
+
+ Gets the long property.
+
+ The name.
+ The def.
+
+
+
+
+ Gets the TimeSpan property.
+
+ The name.
+ The def.
+
+
+
+
+ Gets the short property.
+
+ The name.
+
+
+
+
+ Gets the short property.
+
+ The name.
+ The default value.
+
+
+
+
+ Gets the property groups.
+
+ The prefix.
+
+
+
+
+ Gets the property group.
+
+ The prefix.
+
+
+
+
+ Gets the property group.
+
+ The prefix.
+ if set to true [strip prefix].
+
+
+
+
+ Get all properties that start with the given prefix.
+
+ The prefix for which to search. If it does not end in a "." then one will be added to it for search purposes.
+ Whether to strip off the given in the result's keys.
+ Optional array of fully qualified prefixes to exclude. For example if is "a.b.c", then might be "a.b.c.ignore".
+ Group of that start with the given prefix, optionally have that prefix removed, and do not include properties that start with one of the given excluded prefixes.
+
+
+
+ Reads the properties from assembly (embedded resource).
+
+ The file name to read resources from.
+
+
+
+
+ Reads the properties from file system.
+
+ The file name to read resources from.
+
+
+
+
+ Gets the underlying properties.
+
+ The underlying properties.
+
+
+
+ An implementation of that wraps another
+ and flags itself 'dirty' when it is modified, enforces that all keys are
+ strings.
+
+
+
+
+ Initializes a new instance of the class.
+
+
+
+
+ Initializes a new instance of the class.
+
+ The initial capacity.
+
+
+
+ Initializes a new instance of the class.
+
+ The initial capacity.
+ The load factor.
+
+
+
+ Gets the keys.
+
+
+
+
+
+ Adds the name-value pairs in the given to the .
+
+ All keys must be s, and all values must be serializable.
+
+
+
+
+
+ Adds the given value to the 's
+ data map.
+
+
+
+
+ Adds the given value to the 's
+ data map.
+
+
+
+
+ Adds the given value to the 's
+ data map.
+
+
+
+
+ Adds the given value to the 's
+ data map.
+
+
+
+
+ Adds the given value to the 's
+ data map.
+
+
+
+
+ Adds the given value to the 's
+ data map.
+
+
+
+
+ Adds the given value to the 's
+ data map.
+
+
+
+
+ Adds the given serializable object value to the .
+
+
+
+
+ Retrieve the identified value from the .
+
+
+
+
+ Retrieve the identified value from the .
+
+
+
+
+ Retrieve the identified value from the .
+
+
+
+
+ Retrieve the identified value from the .
+
+
+
+
+ Retrieve the identified value from the .
+
+
+
+
+ Retrieve the identified value from the .
+
+
+
+
+ Retrieve the identified value from the .
+
+
+
+
+ Object representing a job or trigger key.
+
+ James House
+
+
+
+ Construct a new TriggerStatus with the status name and nextFireTime.
+
+ The trigger's status
+ The next UTC time the trigger will fire
+
+
+
+ Return the string representation of the TriggerStatus.
+
+
+
+
+ Gets or sets the job key.
+
+ The job key.
+
+
+
+ Gets or sets the key.
+
+ The key.
+
+
+
+ Get the name portion of the key.
+
+ the name
+
+
+
+ Get the group portion of the key.
+
+ the group
+
+
+
+ Wraps a .
+
+ Chris Bonham
+
+
+
+ Gets or sets the name of the calendar.
+
+ The name of the calendar.
+
+
+
+ Gets or sets the name of the class.
+
+ The name of the class.
+
+
+
+ Gets or sets the calendar.
+
+ The calendar.
+
+
+
+ Gets or sets a description for the instance - may be
+ useful for remembering/displaying the purpose of the calendar, though
+ the description has no meaning to Quartz.
+
+
+
+
+
+ Set a new base calendar or remove the existing one.
+
+
+
+
+
+ Wraps a and .
+
+ Chris Bonham
+ James House
+
+
+
+ Adds a trigger to this bundle.
+
+ The trigger.
+
+
+
+ Removes the given trigger from this bundle.
+
+ The trigger.
+
+
+
+ Gets or sets the job detail.
+
+ The job detail.
+
+
+
+ Gets or sets the triggers associated with this bundle.
+
+ The triggers.
+
+
+
+ Gets the name of the bundle.
+
+ The name.
+
+
+
+ Gets the full name.
+
+ The full name.
+
+
+
+ Gets a value indicating whether this is valid.
+
+ true if valid; otherwise, false.
+
+
+
+ Parses an XML file that declares Jobs and their schedules (Triggers).
+
+
+
+ The xml document must conform to the format defined in
+ "job_scheduling_data.xsd"
+
+
+
+ After creating an instance of this class, you should call one of the
+ functions, after which you may call the
+ function to get a handle to the defined Jobs and Triggers, which can then be
+ scheduled with the . Alternatively, you could call
+ the function to do all of this
+ in one step.
+
+
+
+ The same instance can be used again and again, with the list of defined Jobs
+ being cleared each time you call a method,
+ however a single instance is not thread-safe.
+
+
+ Chris Bonham
+ James House
+ Marko Lahma (.NET)
+
+
+
+ XML Schema dateTime datatype format.
+
+ See
+ http://www.w3.org/TR/2001/REC-xmlschema-2-20010502/#dateTime
+
+
+
+
+
+ Constructor for JobSchedulingDataProcessor.
+
+
+
+
+ Constructor for JobSchedulingDataProcessor.
+
+ whether or not to validate XML.
+ whether or not to validate XML schema.
+
+
+
+ Process the xml file in the default location (a file named
+ "quartz_jobs.xml" in the current working directory).
+
+
+
+
+ Process the xml file named .
+
+ meta data file name.
+
+
+
+ Process the xmlfile named with the given system
+ ID.
+
+ Name of the file.
+ The system id.
+
+
+
+ Process the xmlfile named with the given system
+ ID.
+
+ The stream.
+ The system id.
+
+
+
+ Process the xml file in the default location, and schedule all of the
+ jobs defined within it.
+
+
+
+
+ Process the xml file in the given location, and schedule all of the
+ jobs defined within it.
+
+ meta data file name.
+ The scheduler.
+ if set to true overwrite existing jobs.
+
+
+
+ Process the xml file in the given location, and schedule all of the
+ jobs defined within it.
+
+ Name of the file.
+ The system id.
+ The sched.
+ if set to true [over write existing jobs].
+
+
+
+ Add the Jobs and Triggers defined in the given map of
+ s to the given scheduler.
+
+ The job bundles.
+ The sched.
+ if set to true [over write existing jobs].
+
+
+
+ Returns a for the job name.
+
+ The name.
+
+ a for the job name.
+
+
+
+
+ Returns an from the fileName as a resource.
+
+ Name of the file.
+
+ an from the fileName as a resource.
+
+
+
+
+ Schedules a given job and trigger (both wrapped by a ).
+
+ job wrapper.
+
+ if the Job or Trigger cannot be added to the Scheduler, or
+ there is an internal Scheduler error.
+
+
+
+
+ Schedules a given job and trigger (both wrapped by a ).
+
+ The job.
+ The sched.
+ if set to true [local over write existing jobs].
+
+ if the Job or Trigger cannot be added to the Scheduler, or
+ there is an internal Scheduler error.
+
+
+
+
+ Adds a scheduled job.
+
+ The job.
+
+
+
+ Adds a calendar.
+
+ The sched.
+ calendar bundle.
+ SchedulerException if the Calendar cannot be added to the Scheduler, or
+
+
+
+ Adds a detected validation exception.
+
+ The exception.
+
+
+
+ Resets the the number of detected validation exceptions.
+
+
+
+
+ Throws a ValidationException if the number of validationExceptions
+ detected is greater than zero.
+
+
+ DTD validation exception.
+
+
+
+
+ Gets or sets whether to overwrite existing jobs.
+
+
+
+
+ Gets the log.
+
+ The log.
+
+
+
+ Returns a of scheduled jobs.
+
+ The key is the job name and the value is a
+ containing the and .
+
+
+ a of scheduled jobs.
+
+
+
+
+ Helper class to map constant names to their values.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Reports JobSchedulingDataProcessor validation exceptions.
+
+ Chris Bonham
+
+
+
+ Constructor for ValidationException.
+
+
+
+
+ Constructor for ValidationException.
+
+ exception message.
+
+
+
+ Constructor for ValidationException.
+
+ collection of validation exceptions.
+
+
+
+ Gets the validation exceptions.
+
+ The validation exceptions.
+
+
+
+ Returns the detail message string.
+
+
+
+
+ An exception that is thrown to indicate that there has been a critical
+ failure within the scheduler's core services (such as loss of database
+ connectivity).
+
+ James House
+
+
+
+ Create a with the given message.
+
+
+
+
+ Initializes a new instance of the class.
+
+ The that holds the serialized object data about the exception being thrown.
+ The that contains contextual information about the source or destination.
+ The class name is null or is zero (0).
+ The info parameter is null.
+
+
+
+ Provides a parser and evaluator for unix-like cron expressions. Cron
+ expressions provide the ability to specify complex time combinations such as
+ "At 8:00am every Monday through Friday" or "At 1:30am every
+ last Friday of the month".
+
+
+
+ Cron expressions are comprised of 6 required fields and one optional field
+ separated by white space. The fields respectively are described as follows:
+
+
+
+ | Field Name |
+ |
+ Allowed Values |
+ |
+ Allowed Special Characters |
+
+
+ | Seconds |
+ |
+ 0-59 |
+ |
+ , - /// / |
+
+
+ | Minutes |
+ |
+ 0-59 |
+ |
+ , - /// / |
+
+
+ | Hours |
+ |
+ 0-23 |
+ |
+ , - /// / |
+
+
+ | Day-of-month |
+ |
+ 1-31 |
+ |
+ , - /// ? / L W C |
+
+
+ | Month |
+ |
+ 1-12 or JAN-DEC |
+ |
+ , - /// / |
+
+
+ | Day-of-Week |
+ |
+ 1-7 or SUN-SAT |
+ |
+ , - /// ? / L # |
+
+
+ | Year (Optional) |
+ |
+ empty, 1970-2099 |
+ |
+ , - /// / |
+
+
+
+ The '*' character is used to specify all values. For example, "*"
+ in the minute field means "every minute".
+
+
+ The '?' character is allowed for the day-of-month and day-of-week fields. It
+ is used to specify 'no specific value'. This is useful when you need to
+ specify something in one of the two fields, but not the other.
+
+
+ The '-' character is used to specify ranges For example "10-12" in
+ the hour field means "the hours 10, 11 and 12".
+
+
+ The ',' character is used to specify additional values. For example
+ "MON,WED,FRI" in the day-of-week field means "the days Monday,
+ Wednesday, and Friday".
+
+
+ The '/' character is used to specify increments. For example "0/15"
+ in the seconds field means "the seconds 0, 15, 30, and 45". And
+ "5/15" in the seconds field means "the seconds 5, 20, 35, and
+ 50". Specifying '*' before the '/' is equivalent to specifying 0 is
+ the value to start with. Essentially, for each field in the expression, there
+ is a set of numbers that can be turned on or off. For seconds and minutes,
+ the numbers range from 0 to 59. For hours 0 to 23, for days of the month 0 to
+ 31, and for months 1 to 12. The "/" character simply helps you turn
+ on every "nth" value in the given set. Thus "7/6" in the
+ month field only turns on month "7", it does NOT mean every 6th
+ month, please note that subtlety.
+
+
+ The 'L' character is allowed for the day-of-month and day-of-week fields.
+ This character is short-hand for "last", but it has different
+ meaning in each of the two fields. For example, the value "L" in
+ the day-of-month field means "the last day of the month" - day 31
+ for January, day 28 for February on non-leap years. If used in the
+ day-of-week field by itself, it simply means "7" or
+ "SAT". But if used in the day-of-week field after another value, it
+ means "the last xxx day of the month" - for example "6L"
+ means "the last friday of the month". When using the 'L' option, it
+ is important not to specify lists, or ranges of values, as you'll get
+ confusing results.
+
+
+ The 'W' character is allowed for the day-of-month field. This character
+ is used to specify the weekday (Monday-Friday) nearest the given day. As an
+ example, if you were to specify "15W" as the value for the
+ day-of-month field, the meaning is: "the nearest weekday to the 15th of
+ the month". So if the 15th is a Saturday, the trigger will fire on
+ Friday the 14th. If the 15th is a Sunday, the trigger will fire on Monday the
+ 16th. If the 15th is a Tuesday, then it will fire on Tuesday the 15th.
+ However if you specify "1W" as the value for day-of-month, and the
+ 1st is a Saturday, the trigger will fire on Monday the 3rd, as it will not
+ 'jump' over the boundary of a month's days. The 'W' character can only be
+ specified when the day-of-month is a single day, not a range or list of days.
+
+
+ The 'L' and 'W' characters can also be combined for the day-of-month
+ expression to yield 'LW', which translates to "last weekday of the
+ month".
+
+
+ The '#' character is allowed for the day-of-week field. This character is
+ used to specify "the nth" XXX day of the month. For example, the
+ value of "6#3" in the day-of-week field means the third Friday of
+ the month (day 6 = Friday and "#3" = the 3rd one in the month).
+ Other examples: "2#1" = the first Monday of the month and
+ "4#5" = the fifth Wednesday of the month. Note that if you specify
+ "#5" and there is not 5 of the given day-of-week in the month, then
+ no firing will occur that month. If the '#' character is used, there can
+ only be one expression in the day-of-week field ("3#1,6#3" is
+ not valid, since there are two expressions).
+
+
+
+
+
+ The legal characters and the names of months and days of the week are not
+ case sensitive.
+
+
+ NOTES:
+
+ - Support for specifying both a day-of-week and a day-of-month value is
+ not complete (you'll need to use the '?' character in one of these fields).
+
+ - Overflowing ranges is supported - that is, having a larger number on
+ the left hand side than the right. You might do 22-2 to catch 10 o'clock
+ at night until 2 o'clock in the morning, or you might have NOV-FEB. It is
+ very important to note that overuse of overflowing ranges creates ranges
+ that don't make sense and no effort has been made to determine which
+ interpretation CronExpression chooses. An example would be
+ "0 0 14-6 ? * FRI-MON".
+
+
+
+ Sharada Jambula
+ James House
+ Contributions from Mads Henderson
+ Refactoring from CronTrigger to CronExpression by Aaron Craven
+
+
+
+ Field specification for second.
+
+
+
+
+ Field specification for minute.
+
+
+
+
+ Field specification for hour.
+
+
+
+
+ Field specification for day of month.
+
+
+
+
+ Field specification for month.
+
+
+
+
+ Field specification for day of week.
+
+
+
+
+ Field specification for year.
+
+
+
+
+ Field specification for all wildcard value '*'.
+
+
+
+
+ Field specification for not specified value '?'.
+
+
+
+
+ Field specification for wildcard '*'.
+
+
+
+
+ Field specification for no specification at all '?'.
+
+
+
+
+ Seconds.
+
+
+
+
+ minutes.
+
+
+
+
+ Hours.
+
+
+
+
+ Days of month.
+
+
+
+
+ Months.
+
+
+
+
+ Days of week.
+
+
+
+
+ Years.
+
+
+
+
+ Last day of week.
+
+
+
+
+ Nth day of week.
+
+
+
+
+ Last day of month.
+
+
+
+
+ Nearest weekday.
+
+
+
+
+ Calendar day of week.
+
+
+
+
+ Calendar day of month.
+
+
+
+
+ Expression parsed.
+
+
+
+
+ Constructs a new based on the specified
+ parameter.
+
+
+ String representation of the cron expression the new object should represent
+
+
+
+
+
+ Indicates whether the given date satisfies the cron expression.
+
+
+ Note that milliseconds are ignored, so two Dates falling on different milliseconds
+ of the same second will always have the same result here.
+
+ The date to evaluate.
+ a boolean indicating whether the given date satisfies the cron expression
+
+
+
+ Returns the next date/time after the given date/time which
+ satisfies the cron expression.
+
+ the date/time at which to begin the search for the next valid date/time
+ the next valid date/time
+
+
+
+ Returns the next date/time after the given date/time which does
+ not satisfy the expression.
+
+ the date/time at which to begin the search for the next invalid date/time
+ the next valid date/time
+
+
+
+ Returns the string representation of the
+
+ The string representation of the
+
+
+
+ Indicates whether the specified cron expression can be parsed into a
+ valid cron expression
+
+ the expression to evaluate
+ a boolean indicating whether the given expression is a valid cron
+ expression
+
+
+
+ Builds the expression.
+
+ The expression.
+
+
+
+ Stores the expression values.
+
+ The position.
+ The string to traverse.
+ The type of value.
+
+
+
+
+ Checks the next value.
+
+ The position.
+ The string to check.
+ The value.
+ The type to search.
+
+
+
+
+ Gets the expression summary.
+
+
+
+
+
+ Gets the expression set summary.
+
+ The data.
+
+
+
+
+ Skips the white space.
+
+ The i.
+ The s.
+
+
+
+
+ Finds the next white space.
+
+ The i.
+ The s.
+
+
+
+
+ Adds to set.
+
+ The val.
+ The end.
+ The incr.
+ The type.
+
+
+
+ Gets the set of given type.
+
+ The type of set to get.
+
+
+
+
+ Gets the value.
+
+ The v.
+ The s.
+ The i.
+
+
+
+
+ Gets the numeric value from string.
+
+ The string to parse from.
+ The i.
+
+
+
+
+ Gets the month number.
+
+ The string to map with.
+
+
+
+
+ Gets the day of week number.
+
+ The s.
+
+
+
+
+ Gets the time from given time parts.
+
+ The seconds.
+ The minutes.
+ The hours.
+ The day of month.
+ The month.
+
+
+
+
+ Gets the next fire time after the given time.
+
+ The UTC time to start searching from.
+
+
+
+
+ Creates the date time without milliseconds.
+
+ The time.
+
+
+
+
+ Advance the calendar to the particular hour paying particular attention
+ to daylight saving problems.
+
+ The date.
+ The hour.
+
+
+
+
+ Gets the time before.
+
+ The end time.
+
+
+
+
+ NOT YET IMPLEMENTED: Returns the final time that the
+ will match.
+
+
+
+
+
+ Determines whether given year is a leap year.
+
+ The year.
+
+ true if the specified year is a leap year; otherwise, false.
+
+
+
+
+ Gets the last day of month.
+
+ The month num.
+ The year.
+
+
+
+
+ Creates a new object that is a copy of the current instance.
+
+
+ A new object that is a copy of this instance.
+
+
+
+
+ Sets or gets the time zone for which the of this
+ will be resolved.
+
+
+
+
+ Gets the cron expression string.
+
+ The cron expression string.
+
+
+
+ Helper class for cron expression handling.
+
+
+
+
+ The value.
+
+
+
+
+ The position.
+
+
+
+
+ A concrete that is used to fire a
+ at given moments in time, defined with Unix 'cron-like' definitions.
+
+
+
+ For those unfamiliar with "cron", this means being able to create a firing
+ schedule such as: "At 8:00am every Monday through Friday" or "At 1:30am
+ every last Friday of the month".
+
+
+
+ The format of a "Cron-Expression" string is documented on the
+ class.
+
+
+
+ Here are some full examples:
+
+
+ | Expression |
+ |
+ Meaning |
+
+
+ | "0 0 12 * * ?"" /> |
+ |
+ Fire at 12pm (noon) every day" /> |
+
+
+ | "0 15 10 ? * *"" /> |
+ |
+ Fire at 10:15am every day" /> |
+
+
+ | "0 15 10 * * ?"" /> |
+ |
+ Fire at 10:15am every day" /> |
+
+
+ | "0 15 10 * * ? *"" /> |
+ |
+ Fire at 10:15am every day" /> |
+
+
+ | "0 15 10 * * ? 2005"" /> |
+ |
+ Fire at 10:15am every day during the year 2005" />
+ |
+
+
+ | "0 * 14 * * ?"" /> |
+ |
+ Fire every minute starting at 2pm and ending at 2:59pm, every day" />
+ |
+
+
+ | "0 0/5 14 * * ?"" /> |
+ |
+ Fire every 5 minutes starting at 2pm and ending at 2:55pm, every day" />
+ |
+
+
+ | "0 0/5 14,18 * * ?"" /> |
+ |
+ Fire every 5 minutes starting at 2pm and ending at 2:55pm, AND fire every 5 minutes starting at 6pm and ending at 6:55pm, every day" />
+ |
+
+
+ | "0 0-5 14 * * ?"" /> |
+ |
+ Fire every minute starting at 2pm and ending at 2:05pm, every day" />
+ |
+
+
+ | "0 10,44 14 ? 3 WED"" /> |
+ |
+ Fire at 2:10pm and at 2:44pm every Wednesday in the month of March." />
+ |
+
+
+ | "0 15 10 ? * MON-FRI"" /> |
+ |
+ Fire at 10:15am every Monday, Tuesday, Wednesday, Thursday and Friday" />
+ |
+
+
+ | "0 15 10 15 * ?"" /> |
+ |
+ Fire at 10:15am on the 15th day of every month" />
+ |
+
+
+ | "0 15 10 L * ?"" /> |
+ |
+ Fire at 10:15am on the last day of every month" />
+ |
+
+
+ | "0 15 10 ? * 6L"" /> |
+ |
+ Fire at 10:15am on the last Friday of every month" />
+ |
+
+
+ | "0 15 10 ? * 6L"" /> |
+ |
+ Fire at 10:15am on the last Friday of every month" />
+ |
+
+
+ | "0 15 10 ? * 6L 2002-2005"" /> |
+ |
+ Fire at 10:15am on every last friday of every month during the years 2002, 2003, 2004 and 2005" />
+ |
+
+
+ | "0 15 10 ? * 6#3"" /> |
+ |
+ Fire at 10:15am on the third Friday of every month" />
+ |
+
+
+
+
+
+ Pay attention to the effects of '?' and '*' in the day-of-week and
+ day-of-month fields!
+
+
+
+ NOTES:
+
+ - Support for specifying both a day-of-week and a day-of-month value is
+ not complete (you'll need to use the '?' character in on of these fields).
+
+ - Be careful when setting fire times between mid-night and 1:00 AM -
+ "daylight savings" can cause a skip or a repeat depending on whether the
+ time moves back or jumps forward.
+
+
+
+
+
+
+ Sharada Jambula
+ James House
+ Contributions from Mads Henderson
+
+
+
+ The base abstract class to be extended by all triggers.
+
+
+
+ s have a name and group associated with them, which
+ should uniquely identify them within a single .
+
+
+
+ s are the 'mechanism' by which s
+ are scheduled. Many s can point to the same ,
+ but a single can only point to one .
+
+
+
+ Triggers can 'send' parameters/data to s by placing contents
+ into the on the .
+
+
+
+
+
+
+
+
+ James House
+ Sharada Jambula
+
+
+
+ The default value for priority.
+
+
+
+
+ Remove all s from the .
+
+
+
+
+ Create a with no specified name, group, or .
+
+
+ Note that the , and
+ the and properties
+ must be set before the can be placed into a
+ .
+
+
+
+
+ Create a with the given name, and default group.
+
+
+ Note that the and
+ properties must be set before the
+ can be placed into a .
+
+ The name.
+
+
+
+ Create a with the given name, and group.
+
+
+ Note that the and
+ properties must be set before the
+ can be placed into a .
+
+ The name.
+ if , Scheduler.DefaultGroup will be used.
+
+
+
+ Create a with the given name, and group.
+
+ The name.
+ if , Scheduler.DefaultGroup will be used.
+ Name of the job.
+ The job group.
+ ArgumentException
+ if name is null or empty, or the group is an empty string.
+
+
+
+
+ Add the specified name of a to
+ the end of the 's list of listeners.
+
+ Name of the listener.
+
+
+
+ Remove the specified name of a
+ from the 's list of listeners.
+
+ true if the given name was found in the list, and removed
+
+
+
+
+ This method should not be used by the Quartz client.
+
+ Called when the has decided to 'fire'
+ the trigger (Execute the associated ), in order to
+ give the a chance to update itself for its next
+ triggering (if any).
+
+
+
+
+
+
+
+
+ This method should not be used by the Quartz client.
+
+
+
+ Called by the scheduler at the time a is first
+ added to the scheduler, in order to have the
+ compute its first fire time, based on any associated calendar.
+
+
+
+ After this method has been called,
+ should return a valid answer.
+
+
+
+ The first time at which the will be fired
+ by the scheduler, which is also the same value
+ will return (until after the first firing of the ).
+
+
+
+
+ This method should not be used by the Quartz client.
+
+
+ Called after the has executed the
+ associated with the
+ in order to get the final instruction code from the trigger.
+
+
+ is the that was used by the
+ 's method.
+ is the thrown by the
+ , if any (may be null).
+
+
+ One of the members.
+
+
+
+
+
+
+
+
+
+ Used by the to determine whether or not
+ it is possible for this to fire again.
+
+ If the returned value is then the
+ may remove the from the .
+
+
+
+
+
+ Returns the next time at which the is scheduled to fire. If
+ the trigger will not fire again, will be returned. Note that
+ the time returned can possibly be in the past, if the time that was computed
+ for the trigger to next fire has already arrived, but the scheduler has not yet
+ been able to fire the trigger (which would likely be due to lack of resources
+ e.g. threads).
+
+
+ The value returned is not guaranteed to be valid until after the
+ has been added to the scheduler.
+
+
+
+
+
+
+ Returns the previous time at which the fired.
+ If the trigger has not yet fired, will be returned.
+
+
+
+
+ Returns the next time at which the will fire,
+ after the given time. If the trigger will not fire after the given time,
+ will be returned.
+
+
+
+
+ Validates the misfire instruction.
+
+ The misfire instruction.
+
+
+
+
+ This method should not be used by the Quartz client.
+
+ To be implemented by the concrete classes that extend this class.
+
+
+ The implementation should update the 's state
+ based on the MISFIRE_INSTRUCTION_XXX that was selected when the
+ was created.
+
+
+
+
+
+ This method should not be used by the Quartz client.
+
+ The implementation should update the 's state
+ based on the given new version of the associated
+ (the state should be updated so that it's next fire time is appropriate
+ given the Calendar's new settings).
+
+
+
+
+
+
+
+ Validates whether the properties of the are
+ valid for submission into a .
+
+
+
+
+ Return a simple string representation of this object.
+
+
+
+
+ Compare the next fire time of this to that of
+ another.
+
+
+
+
+ Determines whether the specified is equal to the current .
+
+ The to compare with the current .
+
+ true if the specified is equal to the current ; otherwise, false.
+
+
+
+
+ Serves as a hash function for a particular type. is suitable for use in hashing algorithms and data structures like a hash table.
+
+
+ A hash code for the current .
+
+
+
+
+ Creates a new object that is a copy of the current instance.
+
+
+ A new object that is a copy of this instance.
+
+
+
+
+ Get or sets the name of this .
+
+ If name is null or empty.
+
+
+
+ Get the group of this . If , Scheduler.DefaultGroup will be used.
+
+
+ if group is an empty string.
+
+
+
+
+ Get or set the name of the associated .
+
+
+ if jobName is null or empty.
+
+
+
+
+ Gets or sets the name of the associated 's
+ group. If set with , Scheduler.DefaultGroup will be used.
+
+ ArgumentException
+ if group is an empty string.
+
+
+
+
+ Returns the 'full name' of the in the format
+ "group.name".
+
+
+
+
+ Gets the key.
+
+ The key.
+
+
+
+ Returns the 'full name' of the that the
+ points to, in the format "group.name".
+
+
+
+
+ Get or set the description given to the instance by
+ its creator (if any).
+
+
+
+
+ Get or set the with the given name with
+ this Trigger. Use when setting to dis-associate a Calendar.
+
+
+
+
+ Get or set the that is associated with the
+ .
+
+ Changes made to this map during job execution are not re-persisted, and
+ in fact typically result in an illegal state.
+
+
+
+
+
+ Whether or not the should be persisted in the
+ for re-use after program restarts.
+
+ If not explicitly set, the default value is .
+
+
+
+
+
+ Returns an array of s containing the names of all
+ s assigned to the ,
+ in the order in which they should be notified.
+
+
+
+
+ Returns the last UTC time at which the will fire, if
+ the Trigger will repeat indefinitely, null will be returned.
+
+ Note that the return time *may* be in the past.
+
+
+
+
+
+ Get or set the instruction the should be given for
+ handling misfire situations for this - the
+ concrete type that you are using will have
+ defined a set of additional MISFIRE_INSTRUCTION_XXX
+ constants that may be passed to this method.
+
+ If not explicitly set, the default value is .
+
+
+
+
+
+
+
+
+
+ This method should not be used by the Quartz client.
+
+ Usable by
+ implementations, in order to facilitate 'recognizing' instances of fired
+ s as their jobs complete execution.
+
+
+
+
+
+ Returns the date/time on which the trigger must stop firing. This
+ defines the final boundary for trigger firings 舒 the trigger will
+ not fire after to this date and time. If this value is null, no end time
+ boundary is assumed, and the trigger can continue indefinitely.
+
+ Sets the date/time on which the trigger must stop firing. This defines
+ the final boundary for trigger firings 舒 the trigger will not
+ fire after to this date and time. If this value is null, no end time
+ boundary is assumed, and the trigger can continue indefinitely.
+
+
+
+
+ The time at which the trigger's scheduling should start. May or may not
+ be the first actual fire time of the trigger, depending upon the type of
+ trigger and the settings of the other properties of the trigger. However
+ the first actual first time will not be before this date.
+
+
+ Setting a value in the past may cause a new trigger to compute a first
+ fire time that is in the past, which may cause an immediate misfire
+ of the trigger.
+
+
+
+
+ Tells whether this Trigger instance can handle events
+ in millisecond precision.
+
+
+
+
+ The priority of a acts as a tie breaker such that if
+ two s have the same scheduled fire time, then Quartz
+ will do its best to give the one with the higher priority first access
+ to a worker thread.
+
+
+ If not explicitly set, the default value is 5.
+
+
+
+
+
+
+ Gets a value indicating whether this instance has additional properties
+ that should be considered when for example saving to database.
+
+
+ If trigger implementation has additional properties that need to be saved
+ with base properties you need to make your class override this property with value true.
+ Returning true will effectively mean that ADOJobStore needs to serialize
+ this trigger instance to make sure additional properties are also saved.
+
+
+ true if this instance has additional properties; otherwise, false.
+
+
+
+
+ Create a with no settings.
+
+
+ The start-time will also be set to the current time, and the time zone
+ will be set the the system's default time zone.
+
+
+
+
+ Create a with the given name and default group.
+
+
+ The start-time will also be set to the current time, and the time zone
+ will be set the the system's default time zone.
+
+ The name.
+
+
+
+ Create a with the given name and group.
+
+
+ The start-time will also be set to the current time, and the time zone
+ will be set the the system's default time zone.
+
+ The name.
+ The group.
+
+
+
+ Create a with the given name, group and
+ expression.
+
+
+ The start-time will also be set to the current time, and the time zone
+ will be set the the system's default time zone.
+
+ The name.
+ The group.
+ The cron expression.
+
+
+
+ Create a with the given name and group, and
+ associated with the identified .
+
+
+ The start-time will also be set to the current time, and the time zone
+ will be set the the system's default time zone.
+
+ The name.
+ The group.
+ Name of the job.
+ The job group.
+
+
+
+ Create a with the given name and group,
+ associated with the identified ,
+ and with the given "cron" expression.
+
+
+ The start-time will also be set to the current time, and the time zone
+ will be set the the system's default time zone.
+
+ The name.
+ The group.
+ Name of the job.
+ The job group.
+ The cron expression.
+
+
+
+ Create a with the given name and group,
+ associated with the identified ,
+ and with the given "cron" expression resolved with respect to the .
+
+ The name.
+ The group.
+ Name of the job.
+ The job group.
+ The cron expression.
+ The time zone.
+
+
+
+ Create a that will occur at the given time,
+ until the given end time.
+
+ If null, the start-time will also be set to the current time, the time
+ zone will be set the the system's default.
+
+
+ The name.
+ The group.
+ Name of the job.
+ The job group.
+ The start time.
+ The end time.
+ The cron expression.
+
+
+
+ Create a with fire time dictated by the
+ resolved with respect to the specified
+ occuring from the until
+ the given .
+
+ The name.
+ The group.
+ Name of the job.
+ The job group.
+ The start time.
+ The end time.
+
+
+
+ Clones this instance.
+
+
+
+
+
+ Returns the next time at which the is scheduled to fire. If
+ the trigger will not fire again, will be returned. Note that
+ the time returned can possibly be in the past, if the time that was computed
+ for the trigger to next fire has already arrived, but the scheduler has not yet
+ been able to fire the trigger (which would likely be due to lack of resources
+ e.g. threads).
+
+
+ The value returned is not guaranteed to be valid until after the
+ has been added to the scheduler.
+
+
+
+
+
+
+ Returns the previous time at which the fired.
+ If the trigger has not yet fired, will be returned.
+
+
+
+
+
+ Sets the next fire time.
+
+ This method should not be invoked by client code.
+
+
+ The fire time.
+
+
+
+ Sets the previous fire time.
+
+ This method should not be invoked by client code.
+
+
+ The fire time.
+
+
+
+ Returns the next time at which the will fire,
+ after the given time. If the trigger will not fire after the given time,
+ will be returned.
+
+
+
+
+
+
+ Used by the to determine whether or not
+ it is possible for this to fire again.
+
+ If the returned value is then the
+ may remove the from the .
+
+
+
+
+
+
+ Validates the misfire instruction.
+
+ The misfire instruction.
+
+
+
+
+ This method should not be used by the Quartz client.
+
+ To be implemented by the concrete classes that extend this class.
+
+
+ The implementation should update the 's state
+ based on the MISFIRE_INSTRUCTION_XXX that was selected when the
+ was created.
+
+
+
+
+
+
+
+ Determines whether the date and (optionally) time of the given Calendar
+ instance falls on a scheduled fire-time of this trigger.
+
+
+
+ Equivalent to calling .
+
+
+ The date to compare.
+
+
+
+
+ Determines whether the date and (optionally) time of the given Calendar
+ instance falls on a scheduled fire-time of this trigger.
+
+ Note that the value returned is NOT validated against the related
+ ICalendar (if any).
+
+
+ The date to compare
+ If set to true, the method will only determine if the
+ trigger will fire during the day represented by the given Calendar
+ (hours, minutes and seconds will be ignored).
+
+
+
+
+ Called when the has decided to 'fire'
+ the trigger (Execute the associated ), in order to
+ give the a chance to update itself for its next
+ triggering (if any).
+
+
+
+
+
+
+ Updates the trigger with new calendar.
+
+ The calendar to update with.
+ The misfire threshold.
+
+
+
+ Called by the scheduler at the time a is first
+ added to the scheduler, in order to have the
+ compute its first fire time, based on any associated calendar.
+
+ After this method has been called,
+ should return a valid answer.
+
+
+
+
+ the first time at which the will be fired
+ by the scheduler, which is also the same value
+ will return (until after the first firing of the ).
+
+
+
+
+ Gets the expression summary.
+
+
+
+
+
+ Gets the next time to fire after the given time.
+
+ The time to compute from.
+
+
+
+
+ NOT YET IMPLEMENTED: Returns the time before the given time
+ that this will fire.
+
+ The date.
+
+
+
+
+ Gets or sets the cron expression string.
+
+ The cron expression string.
+
+
+
+ Set the CronExpression to the given one. The TimeZone on the passed-in
+ CronExpression over-rides any that was already set on the Trigger.
+
+ The cron expression.
+
+
+
+ Returns the date/time on which the trigger may begin firing. This
+ defines the initial boundary for trigger firings the trigger
+ will not fire prior to this date and time.
+
+
+
+
+
+ Get or sets the time at which the CronTrigger should quit
+ repeating - even if repeastCount isn't yet satisfied.
+
+
+
+
+ Sets the time zone for which the of this
+ will be resolved.
+
+
+ If is set after this
+ property, the TimeZone setting on the CronExpression will "win". However
+ if is set after this property, the
+ time zone applied by this method will remain in effect, since the
+ string cron expression does not carry a time zone!
+
+ The time zone.
+
+
+
+ Returns the last UTC time at which the will fire, if
+ the Trigger will repeat indefinitely, null will be returned.
+
+ Note that the return time *may* be in the past.
+
+
+
+
+
+ Tells whether this Trigger instance can handle events
+ in millisecond precision.
+
+
+
+
+
+ The interface to be implemented by s that provide a
+ mechanism for having their execution interrupted. It is NOT a requirment
+ for jobs to implement this interface - in fact, for most people, none of
+ their jobs will.
+
+
+
+ The means of actually interrupting the Job must be implemented within the
+ itself (the method of this
+ interface is simply a means for the scheduler to inform the
+ that a request has been made for it to be interrupted). The mechanism that
+ your jobs use to interrupt themselves might vary between implementations.
+ However the principle idea in any implementation should be to have the
+ body of the job's periodically check some flag to
+ see if an interruption has been requested, and if the flag is set, somehow
+ abort the performance of the rest of the job's work. An example of
+ interrupting a job can be found in the java source for the class
+ Quartz.Examples.Example7.DumbInterruptableJob. It is legal to use
+ some combination of and
+ synchronization within and
+ in order to have the method block until the
+ signals that it has noticed the set flag.
+
+
+
+ If the Job performs some form of blocking I/O or similar functions, you may
+ want to consider having the method store a
+ reference to the calling as a member variable. Then the
+ impplementation of this interfaces method can call
+ on that Thread. Before attempting this, make
+ sure that you fully understand what
+ does and doesn't do. Also make sure that you clear the Job's member
+ reference to the Thread when the Execute(..) method exits (preferrably in a
+ block.
+
+
+
+
+ James House
+
+
+
+ Called by the when a user
+ interrupts the .
+
+ void (nothing) if job interrupt is successful.
+
+
+
+ Scheduler constants.
+
+
+
+
+ A (possibly) usefull constant that can be used for specifying the group
+ that and instances belong to.
+
+
+
+
+ A constant group name used internally by the
+ scheduler - clients should not use the value of this constant
+ ("MANUAL_TRIGGER") for thename of a 's group.
+
+
+
+
+ A constant group name used internally by the
+ scheduler - clients should not use the value of this constant
+ ("RECOVERING_JOBS") for thename of a 's group.
+
+
+
+
+ A constant group name used internally by the
+ scheduler - clients should not use the value of this constant
+ ("FAILED_OVER_JOBS") for thename of a 's group.
+
+
+
+
+ A constant key that can be used to retrieve the
+ name of the original from a recovery trigger's
+ data map in the case of a job recovering after a failed scheduler
+ instance.
+
+
+
+
+
+ A constant key that can be used to retrieve the
+ group of the original from a recovery trigger's
+ data map in the case of a job recovering after a failed scheduler
+ instance.
+
+
+
+
+
+ A constant key that can be used to retrieve the
+ scheduled fire time of the original from a recovery
+ trigger's data map in the case of a job recovering after a failed scheduler
+ instance.
+
+
+
+
+
+ Holds state information for instances.
+
+
+ instances are stored once when the
+ is added to a scheduler. They are also re-persisted after every execution of
+ instances.
+
+ instances can also be stored with a
+ . This can be useful in the case where you have a Job
+ that is stored in the scheduler for regular/repeated use by multiple
+ Triggers, yet with each independent triggering, you want to supply the
+ Job with different data inputs.
+
+
+ The passed to a Job at execution time
+ also contains a convenience that is the result
+ of merging the contents of the trigger's JobDataMap (if any) over the
+ Job's JobDataMap (if any).
+
+
+
+
+
+
+ James House
+
+
+
+ Create an empty .
+
+
+
+
+ Create a with the given data.
+
+
+
+
+ Adds the given value as a string version to the
+ 's data map.
+
+
+
+
+ Adds the given value as a string version to the
+ 's data map.
+
+
+
+
+ Adds the given value as a string version to the
+ 's data map.
+
+
+
+
+ Adds the given value as a string version to the
+ 's data map.
+
+
+
+
+ Adds the given value as a string version to the
+ 's data map.
+
+
+
+
+ Adds the given value as a string version to the
+ 's data map.
+
+
+
+
+ Retrieve the identified value from the .
+
+
+
+
+ Retrieve the identified value from the .
+
+
+
+
+ Retrieve the identified value from the .
+
+
+
+
+ Retrieve the identified value from the .
+
+
+
+
+ Retrieve the identified value from the
+ .
+
+
+
+
+ Retrieve the identified value from the .
+
+
+
+
+ Retrieve the identified value from the .
+
+
+
+
+ Retrieve the identified value from the .
+
+
+
+
+ Retrieve the identified value from the .
+
+
+
+
+ Retrieve the identified value from the .
+
+
+
+
+ Retrieve the identified value from the .
+
+
+
+
+ Retrieve the identified value from the .
+
+
+
+
+ Retrieve the identified value from the .
+
+
+
+
+ Retrieve the identified value from the .
+
+
+
+
+ Retrieve the identified value from the .
+
+
+
+
+ Gets the date time.
+
+ The key.
+
+
+
+
+ Gets the value behind the specified key.
+
+ The key.
+
+
+
+
+ Conveys the detail properties of a given instance.
+
+
+ Quartz does not store an actual instance of a type, but
+ instead allows you to define an instance of one, through the use of a .
+
+ s have a name and group associated with them, which
+ should uniquely identify them within a single .
+
+
+ s are the 'mechanism' by which s
+ are scheduled. Many s can point to the same ,
+ but a single can only point to one .
+
+
+
+
+
+
+ James House
+ Sharada Jambula
+
+
+
+ Create a with no specified name or group, and
+ the default settings of all the other properties.
+
+ Note that the , and
+ properties must be set before the job can be
+ placed into a .
+
+
+
+
+
+ Create a with the given name, default group, and
+ the default settings of all the other properties.
+ If , Scheduler.DefaultGroup will be used.
+
+
+ If name is null or empty, or the group is an empty string.
+
+
+
+
+ Create a with the given name, and group, and
+ the default settings of all the other properties.
+ If , Scheduler.DefaultGroup will be used.
+
+
+ If name is null or empty, or the group is an empty string.
+
+
+
+
+ Create a with the given name, and group, and
+ the given settings of all the other properties.
+
+ The name.
+ if , Scheduler.DefaultGroup will be used.
+ Type of the job.
+ if set to true, job will be volatile.
+ if set to true, job will be durable.
+ if set to true, job will request recovery.
+
+ ArgumentException if name is null or empty, or the group is an empty string.
+
+
+
+
+ Validates whether the properties of the are
+ valid for submission into a .
+
+
+
+
+ Add the specified name of a to the
+ end of the 's list of listeners.
+
+
+
+
+ Remove the specified name of a from
+ the 's list of listeners.
+
+ true if the given name was found in the list, and removed
+
+
+
+ Return a simple string representation of this object.
+
+
+
+
+ Creates a new object that is a copy of the current instance.
+
+
+ A new object that is a copy of this instance.
+
+
+
+
+ Determines whether the specified detail is equal to this instance.
+
+ The detail to examine.
+
+ true if the specified detail is equal; otherwise, false.
+
+
+
+
+ Determines whether the specified is equal to the current .
+
+ The to compare with the current .
+
+ if the specified is equal to the
+ current ; otherwise, .
+
+
+
+
+ Checks equality between given job detail and this instance.
+
+ The detail to compare this instance with.
+
+
+
+
+ Serves as a hash function for a particular type, suitable
+ for use in hashing algorithms and data structures like a hash table.
+
+
+ A hash code for the current .
+
+
+
+
+ Get or sets the name of this .
+
+
+ if name is null or empty.
+
+
+
+
+ Get or sets the group of this .
+ If , will be used.
+
+
+ If the group is an empty string.
+
+
+
+
+ Returns the 'full name' of the in the format
+ "group.name".
+
+
+
+
+ Gets the key.
+
+ The key.
+
+
+
+ Get or set the description given to the instance by its
+ creator (if any).
+
+
+ May be useful for remembering/displaying the purpose of the job, though the
+ description has no meaning to Quartz.
+
+
+
+
+ Get or sets the instance of that will be executed.
+
+
+ if jobType is null or the class is not a .
+
+
+
+
+ Get or set the that is associated with the .
+
+
+
+
+ Set whether or not the the should re-Execute
+ the if a 'recovery' or 'fail-over' situation is
+ encountered.
+
+ If not explicitly set, the default value is .
+
+
+
+
+
+
+ Whether or not the should not be persisted in the
+ for re-use after program
+ restarts.
+
+ If not explicitly set, the default value is .
+
+
+ if the should be garbage
+ collected along with the .
+
+
+
+
+ Whether or not the should remain stored after it is
+ orphaned (no s point to it).
+
+ If not explicitly set, the default value is .
+
+
+
+ if the Job should remain persisted after
+ being orphaned.
+
+
+
+
+ Whether or not the implements the interface .
+
+
+
+
+ Gets or sets an array of s containing the names of all
+ s assigned to the ,
+ in the order in which they should be notified. Setting the array
+ clears any listener names that were in the list.
+
+
+
+
+ A context bundle containing handles to various environment information, that
+ is given to a instance as it is
+ executed, and to a instance after the
+ execution completes.
+
+
+
+ The found on this object (via the
+ method) serves as a convenience -
+ it is a merge of the found on the
+ and the one found on the , with
+ the value in the latter overriding any same-named values in the former.
+ It is thus considered a 'best practice' that the Execute code of a Job
+ retrieve data from the JobDataMap found on this object NOTE: Do not
+ expect value 'set' into this JobDataMap to somehow be set back onto a
+ 's own JobDataMap.
+
+
+
+ s are also returned from the
+
+ method. These are the same instances as those past into the jobs that are
+ currently executing within the scheduler. The exception to this is when your
+ application is using Quartz remotely (i.e. via RMI) - in which case you get
+ a clone of the s, and their references to
+ the and instances have been lost (a
+ clone of the is still available - just not a handle
+ to the job instance that is running).
+
+
+
+
+
+
+
+ James House
+
+
+
+ Create a JobExcecutionContext with the given context data.
+
+
+
+
+ Increments the refire count.
+
+
+
+
+ Returns a that represents the current .
+
+
+ A that represents the current .
+
+
+
+
+ Put the specified value into the context's data map with the given key.
+ Possibly useful for sharing data between listeners and jobs.
+
+ NOTE: this data is volatile - it is lost after the job execution
+ completes, and all TriggerListeners and JobListeners have been
+ notified.
+
+
+
+
+
+
+
+
+
+ Get the value with the given key from the context's data map.
+
+
+
+
+
+
+ Get a handle to the instance that fired the
+ .
+
+
+
+
+ Get a handle to the instance that fired the
+ .
+
+
+
+
+ Get a handle to the referenced by the
+ instance that fired the .
+
+
+
+
+ If the is being re-executed because of a 'recovery'
+ situation, this method will return .
+
+
+
+
+ Gets the refire count.
+
+ The refire count.
+
+
+
+ Get the convenience of this execution context.
+
+
+
+ The found on this object serves as a convenience -
+ it is a merge of the found on the
+ and the one found on the , with
+ the value in the latter overriding any same-named values in the former.
+ It is thus considered a 'best practice' that the Execute code of a Job
+ retrieve data from the JobDataMap found on this object.
+
+
+ NOTE: Do not expect value 'set' into this JobDataMap to somehow be
+ set back onto a 's own JobDataMap.
+
+
+
+ Attempts to change the contents of this map typically result in an
+ illegal state.
+
+
+
+
+
+
+ Get the associated with the .
+
+
+
+
+ Get the instance of the that was created for this
+ execution.
+
+ Note: The Job instance is not available through remote scheduler
+ interfaces.
+
+
+
+
+
+ The actual time the trigger fired. For instance the scheduled time may
+ have been 10:00:00 but the actual fire time may have been 10:00:03 if
+ the scheduler was too busy.
+
+ Returns the fireTimeUtc.
+
+
+
+
+ The scheduled time the trigger fired for. For instance the scheduled
+ time may have been 10:00:00 but the actual fire time may have been
+ 10:00:03 if the scheduler was too busy.
+
+ Returns the scheduledFireTimeUtc.
+
+
+
+
+ Gets the previous fire time.
+
+ The previous fire time.
+
+
+
+ Gets the next fire time.
+
+ The next fire time.
+
+
+
+ Returns the result (if any) that the set before its
+ execution completed (the type of object set as the result is entirely up
+ to the particular job).
+
+
+
+ The result itself is meaningless to Quartz, but may be informative
+ to s or
+ s that are watching the job's
+ execution.
+
+
+ Set the result (if any) of the 's execution (the type of
+ object set as the result is entirely up to the particular job).
+
+
+ The result itself is meaningless to Quartz, but may be informative
+ to s or
+ s that are watching the job's
+ execution.
+
+
+
+
+
+ The amount of time the job ran for. The returned
+ value will be until the job has actually completed (or thrown an
+ exception), and is therefore generally only useful to
+ s and s.
+
+
+
+
+ An exception that can be thrown by a
+ to indicate to the Quartz that an error
+ occured while executing, and whether or not the requests
+ to be re-fired immediately (using the same ,
+ or whether it wants to be unscheduled.
+
+
+ Note that if the flag for 'refire immediately' is set, the flags for
+ unscheduling the Job are ignored.
+
+
+
+
+ James House
+
+
+
+ Create a JobExcecutionException, with the 're-fire immediately' flag set
+ to .
+
+
+
+
+ Create a JobExcecutionException, with the given cause.
+
+ The cause.
+
+
+
+ Create a JobExcecutionException, with the given message.
+
+
+
+
+ Initializes a new instance of the class.
+
+ The message.
+ The original cause.
+
+
+
+ Create a JobExcecutionException with the 're-fire immediately' flag set
+ to the given value.
+
+
+
+
+ Create a JobExcecutionException with the given underlying exception, and
+ the 're-fire immediately' flag set to the given value.
+
+
+
+
+ Create a JobExcecutionException with the given message, and underlying
+ exception, and the 're-fire immediately' flag set to the given value.
+
+
+
+
+ Initializes a new instance of the class.
+
+ The that holds the serialized object data about the exception being thrown.
+ The that contains contextual information about the source or destination.
+ The class name is null or is zero (0).
+ The info parameter is null.
+
+
+
+ Creates and returns a string representation of the current exception.
+
+
+ A string representation of the current exception.
+
+
+
+
+
+ Gets or sets a value indicating whether to unschedule firing trigger.
+
+
+ true if firing trigger should be unscheduled; otherwise, false.
+
+
+
+
+ Gets or sets a value indicating whether to unschedule all triggers.
+
+
+ true if all triggers should be unscheduled; otherwise, false.
+
+
+
+
+ Gets or sets a value indicating whether to refire immediately.
+
+ true if to refire immediately; otherwise, false.
+
+
+
+ Misfire instructions.
+
+
+
+
+ Instruction not set (yet).
+
+
+
+
+ Use smart policy.
+
+
+
+
+ Misfire policy settings for SimpleTrigger.
+
+
+
+
+ Instructs the that upon a mis-fire
+ situation, the wants to be fired
+ now by .
+
+ NOTE: This instruction should typically only be used for
+ 'one-shot' (non-repeating) Triggers. If it is used on a trigger with a
+ repeat count > 0 then it is equivalent to the instruction
+ .
+
+
+
+
+
+ Instructs the that upon a mis-fire
+ situation, the wants to be
+ re-scheduled to 'now' (even if the associated
+ excludes 'now') with the repeat count left as-is. This does obey the
+ end-time however, so if 'now' is after the
+ end-time the will not fire again.
+
+
+
+ NOTE: Use of this instruction causes the trigger to 'forget'
+ the start-time and repeat-count that it was originally setup with (this
+ is only an issue if you for some reason wanted to be able to tell what
+ the original values were at some later time).
+
+
+
+
+
+ Instructs the that upon a mis-fire
+ situation, the wants to be
+ re-scheduled to 'now' (even if the associated
+ excludes 'now') with the repeat count set to what it would be, if it had
+ not missed any firings. This does obey the end-time
+ however, so if 'now' is after the end-time the will
+ not fire again.
+
+
+ NOTE: Use of this instruction causes the trigger to 'forget'
+ the start-time and repeat-count that it was originally setup with.
+ Instead, the repeat count on the trigger will be changed to whatever
+ the remaining repeat count is (this is only an issue if you for some
+ reason wanted to be able to tell what the original values were at some
+ later time).
+
+
+
+ NOTE: This instruction could cause the
+ to go to the 'COMPLETE' state after firing 'now', if all the
+ repeat-fire-times where missed.
+
+
+
+
+
+ Instructs the that upon a mis-fire
+ situation, the wants to be
+ re-scheduled to the next scheduled time after 'now' - taking into
+ account any associated , and with the
+ repeat count set to what it would be, if it had not missed any firings.
+
+
+ NOTE/WARNING: This instruction could cause the
+ to go directly to the 'COMPLETE' state if all fire-times where missed.
+
+
+
+
+ Instructs the that upon a mis-fire
+ situation, the wants to be
+ re-scheduled to the next scheduled time after 'now' - taking into
+ account any associated , and with the
+ repeat count left unchanged.
+
+
+
+ NOTE/WARNING: This instruction could cause the
+ to go directly to the 'COMPLETE' state if all the end-time of the trigger
+ has arrived.
+
+
+
+
+
+ misfire instructions for CronTrigger
+
+
+
+
+ Instructs the that upon a mis-fire
+ situation, the wants to be fired now
+ by .
+
+
+
+
+ Instructs the that upon a mis-fire
+ situation, the wants to have it's
+ next-fire-time updated to the next time in the schedule after the
+ current time (taking into account any associated ,
+ but it does not want to be fired now.
+
+
+
+
+ misfire instructions for NthIncludedDayTrigger
+
+
+
+
+ Instructs the that upon a mis-fire situation, the
+ wants to be fired now by the
+
+
+
+
+
+ Instructs the that upon a mis-fire situation, the
+ wants to have
+ nextFireTime updated to the next time in the schedule after
+ the current time, but it does not want to be fired now.
+
+
+
+
+ A trigger which fires on the Nth day of every interval type
+ , or
+ that is not excluded by the associated
+ calendar.
+
+
+ When determining what the Nth day of the month or year
+ is, will skip excluded days on the
+ associated calendar. This would commonly be used in an Nth
+ business day situation, in which the user wishes to fire a particular job on
+ the Nth business day (i.e. the 5th business day of
+ every month). Each also has an associated
+ which indicates at what time of day the trigger is
+ to fire.
+
+ All s default to a monthly interval type
+ (fires on the Nth day of every month) with N = 1 (first
+ non-excluded day) and set to 12:00 PM (noon). These
+ values can be changed using the , , and
+ methods. Users may also want to note the
+ and
+ methods.
+
+
+ Take, for example, the following calendar:
+
+
+ July August September
+ Su Mo Tu We Th Fr Sa Su Mo Tu We Th Fr Sa Su Mo Tu We Th Fr Sa
+ 1 W 1 2 3 4 5 W 1 2 W
+ W H 5 6 7 8 W W 8 9 10 11 12 W W H 6 7 8 9 W
+ W 11 12 13 14 15 W W 15 16 17 18 19 W W 12 13 14 15 16 W
+ W 18 19 20 21 22 W W 22 23 24 25 26 W W 19 20 21 22 23 W
+ W 25 26 27 28 29 W W 29 30 31 W 26 27 28 29 30
+ W
+
+ Where W's represent weekend days, and H's represent holidays, all of which
+ are excluded on a calendar associated with an
+ with n=5 and
+ intervalType=IntervalTypeMonthly. In this case, the trigger
+ would fire on the 8th of July (because of the July 4 holiday),
+ the 5th of August, and the 8th of September (because
+ of Labor Day).
+
+ Aaron Craven
+
+
+
+ Indicates a monthly trigger type (fires on the Nth included
+ day of every month).
+
+
+
+ indicates a yearly trigger type (fires on the Nth included
+ day of every year).
+
+
+
+
+ Indicates a weekly trigger type (fires on the Nth included
+ day of every week). When using this interval type, care must be taken
+ not to think of the value of as an analog to
+ . Such a comparison can only
+ be drawn when there are no calendars associated with the trigger. To
+ illustrate, consider an with
+ n = 3 which is associated with a Calendar excluding
+ non-weekdays. The trigger would fire on the 3rd
+ included day of the week, which would be 4th
+ actual day of the week.
+
+
+
+
+ Create an with no specified name,
+ group, or . This will result initially in a
+ default monthly trigger that fires on the first day of every month at
+ 12:00 PM (n = 1,
+ intervalType=,
+ fireAtTime="12:00").
+
+
+ Note that , ,
+ , and , must be
+ called before the can be placed into
+ a .
+
+
+
+
+ Create an with the given name and
+ default group but no specified . This will result
+ initially in a default monthly trigger that fires on the first day of
+ every month at 12:00 PM (=1,
+ intervalType=,
+ fireAtTime=12:00").
+
+ Note that and must
+ be called before the can be placed
+ into a .
+
+
+ the name for the
+
+
+
+ Create an with the given name and
+ group but no specified . This will result
+ initially in a default monthly trigger that fires on the first day of
+ every month at 12:00 PM (=1,
+ intervalType=,
+ fireAtTime=12:00").
+
+ Note that and must
+ be called before the can be placed
+ into a .
+
+
+ the name for the
+
+ the group for the
+
+
+
+
+ Create an with the given name and
+ group and the specified . This will result
+ initially in a default monthly trigger that fires on the first day of
+ every month at 12:00 PM (=1,
+ intervalType=,
+ fireAtTime="12:00").
+
+ The name for the .
+ The group for the .
+ The name of the job to associate with the .
+ The group containing the job to associate with the .
+
+
+
+ Returns the next UTC time at which the
+ will fire. If the trigger will not fire again, will be
+ returned.
+
+
+
+ Because of the conceptual design of ,
+ it is not always possible to decide with certainty that the trigger
+ will never fire again. Therefore, it will search for the next
+ fire time up to a given cutoff. These cutoffs can be changed by using the
+ property. The default cutoff is 12
+ of the intervals specified by intervalType.
+
+
+ The returned value is not guaranteed to be valid until after
+ the trigger has been added to the scheduler.
+
+
+ the next fire time for the trigger
+
+
+
+
+ Returns the previous UTC time at which the
+ fired. If the trigger has not yet
+ fired, will be returned.
+
+ the previous fire time for the trigger
+
+
+
+ Returns the first time the will fire
+ after the specified date.
+
+
+
+ Because of the conceptual design of ,
+ it is not always possible to decide with certainty that the trigger
+ will never fire again. Therefore, it will search for the next
+ fire time up to a given cutoff. These cutoffs can be changed by using the
+ property. The default cutoff is 12
+ of the intervals specified by intervalType.
+
+
+ Therefore, for triggers with intervalType =
+ , if the trigger
+ will not fire within 12
+ weeks after the given date/time, will be returned. For
+ triggers with intervalType =
+
+ , if the trigger will not fire within 12
+ months after the given date/time, will be returned.
+ For triggers with intervalType =
+
+ , if the trigger will not fire within 12
+ years after the given date/time, will be returned. In
+ all cases, if the trigger will not fire before ,
+ will be returned.
+
+
+ The time after which to find the nearest fire time.
+ This argument is treated as exclusive 舒 that is,
+ if afterTime is a valid fire time for the trigger, it
+ will not be returned as the next fire time.
+
+
+ the first time the trigger will fire following the specified date
+
+
+
+
+ Called when the has decided to 'fire' the trigger
+ (Execute the associated ), in order to give the
+ a chance to update itself for its next triggering
+ (if any).
+
+
+
+
+ Called by the scheduler at the time a is first
+ added to the scheduler, in order to have the
+ compute its first fire time, based on any associated calendar.
+
+ After this method has been called,
+ should return a valid answer.
+
+
+
+ the first time at which the will be fired
+ by the scheduler, which is also the same value
+ will return (until after the first
+ firing of the ).
+
+
+
+
+ Called after the has executed the
+ associated with the in order
+ to get the final instruction code from the trigger.
+
+
+ The that was used by the
+ 's method.
+
+
+ The thrown by the
+ , if any (may be )
+
+ one of the Trigger.INSTRUCTION_XXX constants.
+
+
+
+
+ Used by the to determine whether or not it is
+ possible for this to fire again.
+ '
+
+
+ If the returned value is then the
+ may remove the from the
+
+
+
+
+ A boolean indicator of whether the trigger could potentially fire
+ again.
+
+
+
+
+ Indicates whether is a valid misfire
+ instruction for this .
+
+ Whether is valid.
+
+
+ Updates the 's state based on the
+ MisfireInstruction that was selected when the
+ was created
+
+ If the misfire instruction is set to MISFIRE_INSTRUCTION_SMART_POLICY,
+ then the instruction will be interpreted as
+ .
+
+
+ a new or updated calendar to use for the trigger
+
+
+
+
+ Updates the 's state based on the
+ given new version of the associated .
+
+ A new or updated calendar to use for the trigger
+ the amount of time that must
+ be between "now" and the time the next
+ firing of the trigger is supposed to occur.
+
+
+
+
+ Calculates the first time an with
+ intervalType = IntervalTypeWeekly will fire
+ after the specified date. See for more
+ information.
+
+ The time after which to find the nearest fire time.
+ This argument is treated as exclusive 舒 that is,
+ if afterTime is a valid fire time for the trigger, it
+ will not be returned as the next fire time.
+
+ the first time the trigger will fire following the specified
+ date
+
+
+
+
+ Calculates the first UTC time an with
+ intervalType = will fire
+ after the specified date. See for more
+ information.
+
+
+ The UTC time after which to find the nearest fire time.
+ This argument is treated as exclusive 舒 that is,
+ if afterTime is a valid fire time for the trigger, it
+ will not be returned as the next fire time.
+
+ the first time the trigger will fire following the specified date
+
+
+
+ Calculates the first time an with
+ intervalType = will fire
+ after the specified date. See for more
+ information.
+
+
+ The UTC time after which to find the nearest fire time.
+ This argument is treated as exclusive 舒 that is,
+ if afterTime is a valid fire time for the trigger, it
+ will not be returned as the next fire time.
+
+ the first time the trigger will fire following the specified
+ date
+
+
+
+
+ Gets or sets the day of the interval on which the
+ should fire. If the Nth
+ day of the interval does not exist (i.e. the 32nd of a
+ month), the trigger simply will never fire. N may not be less than 1.
+
+
+
+
+ Returns the interval type for the .
+
+
+ Sets the interval type for the . If
+ , the trigger will fire on the
+ Nth included day of every month. If
+ , the trigger will fire on the
+ Nth included day of every year. If
+ , the trigger will fire on the
+ Nth included day of every week.
+
+
+
+
+
+
+
+ Returns the fire time for the as a
+ string with the format "HH:MM[:SS]", with HH representing the
+ 24-hour clock hour of the fire time. Seconds are optional and their
+ inclusion depends on whether or not they were provided to
+ .
+
+
+
+
+ Returns the for the
+ .
+
+
+
+ Because of the conceptual design of ,
+ it is not always possible to decide with certainty that the trigger
+ will never fire again. Therefore, it will search for the next
+ fire time up to a given cutoff. These cutoffs can be changed by using the
+ property. The default cutoff is 12
+ of the intervals specified by intervalType" />.
+
+
+ Because of the conceptual design of ,
+ it is not always possible to decide with certainty that the trigger
+ will never fire again. Therefore, it will search for the next
+ fire time up to a given cutoff. These cutoffs can be changed by using the
+ method. The default cutoff is 12
+ of the intervals specified by intervalType".
+
+
+ In most cases, the default value of this setting (12) is sufficient (it
+ is highly unlikely, for example, that you will need to look at more than
+ 12 months of dates to ensure that your trigger will never fire again).
+ However, this setting is included to allow for the rare exceptions where
+ this might not be true.
+
+
+ For example, if your trigger is associated with a calendar that excludes
+ a great many dates in the next 12 months, and hardly any following that,
+ it is possible (if is large enough) that you could run
+ into this situation.
+
+
+
+
+
+ Returns the last UTC time the will fire.
+ If the trigger will not fire at any point between
+ and , will be returned.
+
+ the last time the trigger will fire.
+
+
+
+ Tells whether this Trigger instance can handle events
+ in millisecond precision.
+
+
+
+
+
+ Sets or gets the time zone in which the will be resolved.
+ If no time zone is provided, then the default time zone will be used.
+
+
+
+
+
+
+ Gets or sets the trigger's calendar week rule.
+
+ The trigger calendar week rule.
+
+
+
+ Gets or sets the trigger's calendar first day of week rule.
+
+ The trigger calendar first day of week.
+
+
+
+ An exception that is thrown to indicate that an attempt to store a new
+ object (i.e. ,
+ or ) in a
+ failed, because one with the same name and group already exists.
+
+ James House
+
+
+
+ Create a with the given
+ message.
+
+
+
+
+
+ Initializes a new instance of the class.
+
+ The that holds the serialized object data about the exception being thrown.
+ The that contains contextual information about the source or destination.
+ The class name is null or is zero (0).
+ The info parameter is null.
+
+
+
+ Create a and auto-generate a
+ message using the name/group from the given .
+
+
+
+ The message will read:
"Unable to store Job with name: '__' and
+ group: '__', because one already exists with this identification."
+
+
+
+
+
+ Create a and auto-generate a
+ message using the name/group from the given .
+
+
+
+ The message will read:
"Unable to store Trigger with name: '__' and
+ group: '__', because one already exists with this identification."
+
+
+
+
+
+ An exception that is thrown to indicate that there is a misconfiguration of
+ the - or one of the components it
+ configures.
+
+ James House
+
+
+
+ Create a with the given message.
+
+
+
+
+ Create a with the given message
+ and cause.
+
+
+
+
+ Initializes a new instance of the class.
+
+ The that holds the serialized object data about the exception being thrown.
+ The that contains contextual information about the source or destination.
+ The class name is null or is zero (0).
+ The info parameter is null.
+
+
+
+ Holds context/environment data that can be made available to Jobs as they
+ are executed.
+
+
+ James House
+
+
+
+ Create an empty .
+
+
+
+
+ Create a with the given data.
+
+
+
+
+ Instructs Scheduler what to do with a trigger and job.
+
+
+
+
+ Instructs the that the
+ has no further instructions.
+
+
+
+
+ Instructs the that the
+ wants the to re-Execute
+ immediately. If not in a 'RECOVERING' or 'FAILED_OVER' situation, the
+ execution context will be re-used (giving the the
+ abilitiy to 'see' anything placed in the context by its last execution).
+
+
+
+
+ Instructs the that the
+ should be put in the state.
+
+
+
+
+ Instructs the that the
+ wants itself deleted.
+
+
+
+
+ Instructs the that all
+ s referencing the same as
+ this one should be put in the state.
+
+
+
+
+ Instructs the that all
+ s referencing the same as
+ this one should be put in the state.
+
+
+
+
+ Instructs the that the
+ should be put in the state.
+
+
+
+
+ Describes the settings and capabilities of a given
+ instance.
+
+ James House
+
+
+
+ Initializes a new instance of the class.
+
+ Name of the scheduler.
+ The scheduler instance.
+ The scheduler type.
+ if set to true, scheduler is a remote scheduler.
+ if set to true, scheduler is started.
+ if set to true, scheduler is in standby mode.
+ if set to true, scheduler is shutdown.
+ The start time.
+ The number of jobs executed.
+ The job store type.
+ if set to true, job store is persistent.
+ The thread pool type.
+ Size of the thread pool.
+ The version string.
+
+
+
+ Returns a formatted (human readable) string describing all the 's
+ meta-data values.
+
+
+
+ The format of the string looks something like this:
+
+ Quartz Scheduler 'SchedulerName' with instanceId 'SchedulerInstanceId' Scheduler class: 'Quartz.Impl.StdScheduler' - running locally. Running since: '11:33am on Jul 19, 2002' Not currently paused. Number of Triggers fired: '123' Using thread pool 'Quartz.Simpl.SimpleThreadPool' - with '8' threads Using job-store 'Quartz.Impl.JobStore' - which supports persistence.
+
+
+
+
+
+
+ Return a simple string representation of this object.
+
+
+
+
+ Returns the name of the .
+
+
+
+
+ Returns the instance Id of the .
+
+
+
+
+ Returns the class-name of the instance.
+
+
+
+
+ Returns whether the is being used remotely (via remoting).
+
+
+
+
+ Returns whether the scheduler has been started.
+
+
+ Note: may return even if
+ returns .
+
+
+
+
+ Reports whether the is in standby mode.
+
+
+ Note: may return even if
+ returns .
+
+
+
+
+ Reports whether the has been Shutdown.
+
+
+
+
+ Returns the class-name of the instance that is
+ being used by the .
+
+
+
+
+ Returns the type name of the instance that is
+ being used by the .
+
+
+
+
+ Returns the number of threads currently in the 's
+
+
+
+
+ Returns the version of Quartz that is running.
+
+
+
+
+ Returns the at which the Scheduler started running.
+
+ null if the scheduler has not been started.
+
+
+
+
+ Returns the number of jobs executed since the
+ started..
+
+
+
+
+ Returns whether or not the 's
+ instance supports persistence.
+
+
+
+
+ A concrete that is used to fire a
+ at a given moment in time, and optionally repeated at a specified interval.
+
+
+
+
+
+ James House
+ Contributions by Lieven Govaerts of Ebitec Nv, Belgium.
+ Marko Lahma (.NET)
+
+
+
+ Used to indicate the 'repeat count' of the trigger is indefinite. Or in
+ other words, the trigger should repeat continually until the trigger's
+ ending timestamp.
+
+
+
+
+ Create a with no settings.
+
+
+
+
+ Create a that will occur immediately, and
+ not repeat.
+
+
+
+
+ Create a that will occur immediately, and
+ not repeat.
+
+
+
+
+ Create a that will occur immediately, and
+ repeat at the the given interval the given number of times.
+
+
+
+
+ Create a that will occur immediately, and
+ repeat at the the given interval the given number of times.
+
+
+
+
+ Create a that will occur at the given time,
+ and not repeat.
+
+
+
+
+ Create a that will occur at the given time,
+ and not repeat.
+
+
+
+
+ Create a that will occur at the given time,
+ and repeat at the the given interval the given number of times, or until
+ the given end time.
+
+ The name.
+ A UTC set to the time for the to fire.
+ A UTC set to the time for the
+ to quit repeat firing.
+ The number of times for the to repeat
+ firing, use for unlimited times.
+ The time span to pause between the repeat firing.
+
+
+
+ Create a that will occur at the given time,
+ and repeat at the the given interval the given number of times, or until
+ the given end time.
+
+ The name.
+ The group.
+ A UTC set to the time for the to fire.
+ A UTC set to the time for the
+ to quit repeat firing.
+ The number of times for the to repeat
+ firing, use for unlimited times.
+ The time span to pause between the repeat firing.
+
+
+
+ Create a that will occur at the given time,
+ fire the identified and repeat at the the given
+ interval the given number of times, or until the given end time.
+
+ The name.
+ The group.
+ Name of the job.
+ The job group.
+ A set to the time for the
+ to fire.
+ A set to the time for the
+ to quit repeat firing.
+ The number of times for the to repeat
+ firing, use RepeatIndefinitely for unlimited times.
+ The time span to pause between the repeat firing.
+
+
+
+ Validates the misfire instruction.
+
+ The misfire instruction.
+
+
+
+
+ Updates the 's state based on the
+ MisfireInstruction value that was selected when the
+ was created.
+
+
+ If MisfireSmartPolicyEnabled is set to true,
+ then the following scheme will be used:
+
+ - If the Repeat Count is 0, then the instruction will
+ be interpreted as .
+ - If the Repeat Count is , then
+ the instruction will be interpreted as .
+ WARNING: using MisfirePolicy.SimpleTrigger.RescheduleNowWithRemainingRepeatCount
+ with a trigger that has a non-null end-time may cause the trigger to
+ never fire again if the end-time arrived during the misfire time span.
+
+ - If the Repeat Count is > 0, then the instruction
+ will be interpreted as .
+
+
+
+
+
+
+ Called when the has decided to 'fire'
+ the trigger (Execute the associated ), in order to
+ give the a chance to update itself for its next
+ triggering (if any).
+
+
+
+
+
+ Updates the instance with new calendar.
+
+ The calendar.
+ The misfire threshold.
+
+
+
+ Called by the scheduler at the time a is first
+ added to the scheduler, in order to have the
+ compute its first fire time, based on any associated calendar.
+
+ After this method has been called,
+ should return a valid answer.
+
+
+
+ The first time at which the will be fired
+ by the scheduler, which is also the same value
+ will return (until after the first firing of the ).
+
+
+
+
+ Returns the next time at which the will
+ fire. If the trigger will not fire again, will be
+ returned. The value returned is not guaranteed to be valid until after
+ the has been added to the scheduler.
+
+
+
+
+ Returns the previous time at which the fired.
+ If the trigger has not yet fired, will be
+ returned.
+
+
+
+
+ Set the next UTC time at which the should fire.
+ This method should not be invoked by client code.
+
+
+
+
+ Set the previous UTC time at which the fired.
+ This method should not be invoked by client code.
+
+
+
+
+ Returns the next UTC time at which the will
+ fire, after the given UTC time. If the trigger will not fire after the given
+ time, will be returned.
+
+
+
+
+ Returns the last UTC time at which the will
+ fire, before the given time. If the trigger will not fire before the
+ given time, will be returned.
+
+
+
+
+ Computes the number of times fired between the two UTC date times.
+
+ The UTC start date and time.
+ The UTC end date and time.
+
+
+
+
+ Determines whether or not the will occur
+ again.
+
+
+
+
+ Validates whether the properties of the are
+ valid for submission into a .
+
+
+
+
+ Get or set thhe number of times the should
+ repeat, after which it will be automatically deleted.
+
+
+
+
+
+ Get or set the the time interval at which the should repeat.
+
+
+
+
+ Get or set the number of times the has already
+ fired.
+
+
+
+
+ Returns the final UTC time at which the will
+ fire, if repeatCount is RepeatIndefinitely, null will be returned.
+
+ Note that the return time may be in the past.
+
+
+
+
+
+ Tells whether this Trigger instance can handle events
+ in millisecond precision.
+
+
+
+
+
+ All trigger states known to Scheduler.
+
+
+
+
+ Indicates that the is in the "normal" state.
+
+
+
+
+ Indicates that the is in the "paused" state.
+
+
+
+
+ Indicates that the is in the "complete" state.
+
+
+ "Complete" indicates that the trigger has not remaining fire-times in
+ its schedule.
+
+
+
+
+ Indicates that the is in the "error" state.
+
+
+
+ A arrives at the error state when the scheduler
+ attempts to fire it, but cannot due to an error creating and executing
+ its related job. Often this is due to the 's
+ class not existing in the classpath.
+
+
+
+ When the trigger is in the error state, the scheduler will make no
+ attempts to fire it.
+
+
+
+
+
+ Indicates that the is in the "blocked" state.
+
+
+ A arrives at the blocked state when the job that
+ it is associated with is a and it is
+ currently executing.
+
+
+
+
+
+ Indicates that the does not exist.
+
+
+
+
+ Convenience and utility methods for simplifying the construction and
+ configuration of s.
+
+
+ Please submit suggestions for additional convenience methods to either the
+ Quartz user forum or the developer's mail list at
+ source forge.
+
+
+
+ James House
+
+
+
+ Constant indicating last day of month.
+
+
+
+
+ Milliseconds in minute.
+
+
+
+
+ Milliseconds in hour.
+
+
+
+
+ Seconds in day.
+
+
+
+
+ Milliseconds in day.
+
+
+
+
+ Initializes a new instance of the class.
+
+
+
+
+ Set the given 's name to the given value, and its
+ group to the default group ().
+
+ the tigger to change name to
+ the new trigger name
+
+
+
+ Set the given 's name to the given value, and its
+ group to the given group.
+
+ the tigger to change name to
+ the new trigger name
+ the new trigger group
+
+
+
+ Make a trigger that will fire every day at the given time.
+
+ The generated trigger will not have its name, group,
+ or end-time set. The Start time defaults to 'now'.
+
+
+ the hour (0-23) upon which to fire
+ the minute (0-59) upon which to fire
+ the new trigger
+
+
+
+ Make a trigger that will fire every day at the given time.
+
+ The generated trigger will not have its group or end-time set.
+ The Start time defaults to 'now'.
+
+
+ the trigger's name
+ the hour (0-23) upon which to fire
+ the minute (0-59) upon which to fire
+ the newly created trigger
+
+
+
+ Make a trigger that will fire every week at the given day and time.
+
+ The generated trigger will not have its name, group,
+ or end-time set. The Start time defaults to 'now'.
+
+
+ (1-7) the day of week upon which to fire
+ the hour (0-23) upon which to fire
+ the minute (0-59) upon which to fire
+ the new trigger
+
+
+
+ Make a trigger that will fire every week at the given day and time.
+
+ The generated trigger will not have its group,
+ or end-time set. The Start time defaults to 'now'.
+
+
+ the trigger's name
+ the day of week upon which to fire
+ the hour (0-23) upon which to fire
+ the minute (0-59) upon which to fire
+ the newly created trigger
+
+
+
+ Make a trigger that will fire every month at the given day and time.
+
+ The generated trigger will not have its name, group,
+ or end-time set. The Start time defaults to 'now'.
+
+
+ If the day of the month specified does not occur in a given month, a
+ firing will not occur that month. (i.e. if dayOfMonth is specified as
+ 31, no firing will occur in the months of the year with fewer than 31
+ days).
+
+
+ (1-31, or -1) the day of week upon which to fire
+ the hour (0-23) upon which to fire
+ the minute (0-59) upon which to fire
+ the newly created trigger
+
+
+
+ Make a trigger that will fire every month at the given day and time.
+
+ The generated trigger will not have its group,
+ or end-time set. The Start time defaults to 'now'.
+
+
+ If the day of the month specified does not occur in a given month, a
+ firing will not occur that month. (i.e. if dayOfMonth is specified as
+ 31, no firing will occur in the months of the year with fewer than 31
+ days).
+
+
+ the trigger's name
+ (1-31, or -1) the day of week upon which to fire
+ the hour (0-23) upon which to fire
+ the minute (0-59) upon which to fire
+ the newly created trigger
+
+
+
+ Make a trigger that will fire times, waiting
+ between each fire.
+
+
+ The generated trigger will not have its name, group,
+ or end-time set. The Start time defaults to 'now'.
+
+ the newly created trigger
+
+
+
+ Make a trigger that will fire times, waiting
+ between each fire.
+
+ The generated trigger will not have its name, group,
+ or end-time set. The Start time defaults to 'now'.
+
+
+ the trigger's name
+ the new trigger
+
+
+
+ Make a trigger that will fire every second, indefinitely.
+
+ The generated trigger will not have its name, group,
+ or end-time set. The Start time defaults to 'now'.
+
+
+ the new trigger
+
+
+
+ Make a trigger that will fire every second, indefinitely.
+
+ The generated trigger will not have its group,
+ or end-time set. The Start time defaults to 'now'.
+
+
+ the trigger's name
+ the new trigger
+
+
+
+ Make a trigger that will fire every N seconds, indefinitely.
+
+ The generated trigger will not have its name, group,
+ or end-time set. The Start time defaults to 'now'.
+
+
+ the number of seconds between firings
+ the new trigger
+
+
+
+ Make a trigger that will fire every N seconds, with the given number of
+ repeats.
+
+ The generated trigger will not have its name, group,
+ or end-time set. The Start time defaults to 'now'.
+
+
+ the number of seconds between firings
+ the number of times to repeat the firing
+ the new trigger
+
+
+
+ Make a trigger that will fire every N seconds, with the given number of
+ repeats.
+
+ The generated trigger will not have its group,
+ or end-time set. The Start time defaults to 'now'.
+
+
+ the trigger's name
+ the number of seconds between firings
+ the number of times to repeat the firing
+ the new trigger
+
+
+
+ Make a trigger that will fire every minute, indefinitely.
+
+ The generated trigger will not have its name, group,
+ or end-time set. The Start time defaults to 'now'.
+
+
+ the new trigger
+
+
+
+ Make a trigger that will fire every minute, indefinitely.
+
+ The generated trigger will not have its group,
+ or end-time set. The Start time defaults to 'now'.
+
+
+ the trigger's name
+ the new trigger
+
+
+
+ Make a trigger that will fire every N minutes, indefinitely.
+
+ The generated trigger will not have its name, group,
+ or end-time set. The Start time defaults to 'now'.
+
+
+ the number of minutes between firings
+ the new trigger
+
+
+
+ Make a trigger that will fire every N minutes, with the given number of
+ repeats.
+
+ The generated trigger will not have its name, group,
+ or end-time set. The Start time defaults to 'now'.
+
+
+ the number of minutes between firings
+ the number of times to repeat the firing
+ the new trigger
+
+
+
+ Make a trigger that will fire every N minutes, with the given number of
+ repeats.
+
+ The generated trigger will not have its group,
+ or end-time set. The Start time defaults to 'now'.
+
+
+ the trigger's name
+ the number of minutes between firings
+ the number of times to repeat the firing
+ the new trigger
+
+
+
+ Make a trigger that will fire every hour, indefinitely.
+
+ The generated trigger will not have its name, group,
+ or end-time set. The Start time defaults to 'now'.
+
+
+ the new trigger
+
+
+
+ Make a trigger that will fire every hour, indefinitely.
+
+ The generated trigger will not have its group,
+ or end-time set. The Start time defaults to 'now'.
+
+
+ the trigger's name
+ the new trigger
+
+
+
+ Make a trigger that will fire every N hours, indefinitely.
+
+ The generated trigger will not have its name, group,
+ or end-time set. The Start time defaults to 'now'.
+
+
+ the number of hours between firings
+ the new trigger
+
+
+
+ Make a trigger that will fire every N hours, with the given number of
+ repeats.
+
+ The generated trigger will not have its name, group,
+ or end-time set. The Start time defaults to 'now'.
+
+
+ the number of hours between firings
+ the number of times to repeat the firing
+ the new trigger
+
+
+
+ Make a trigger that will fire every N hours, with the given number of
+ repeats.
+
+ The generated trigger will not have its group,
+ or end-time set. The Start time defaults to 'now'.
+
+
+ the trigger's name
+ the number of hours between firings
+ the number of times to repeat the firing
+ the new trigger
+
+
+
+ Returns a date that is rounded to the next even hour above the given
+ date.
+
+ For example an input date with a time of 08:13:54 would result in a date
+ with the time of 09:00:00. If the date's time is in the 23rd hour, the
+ date's 'day' will be promoted, and the time will be set to 00:00:00.
+
+
+ the Date to round, if the current time will
+ be used
+ the new rounded date
+
+
+
+ Returns a date that is rounded to the previous even hour below the given
+ date.
+
+ For example an input date with a time of 08:13:54 would result in a date
+ with the time of 08:00:00.
+
+
+ the Date to round, if the current time will
+ be used
+ the new rounded date
+
+
+
+ Returns a date that is rounded to the next even minute above the given
+ date.
+
+ For example an input date with a time of 08:13:54 would result in a date
+ with the time of 08:14:00. If the date's time is in the 59th minute,
+ then the hour (and possibly the day) will be promoted.
+
+
+ The Date to round, if the current time will be used
+ The new rounded date
+
+
+
+ Returns a date that is rounded to the previous even minute below the
+ given date.
+
+ For example an input date with a time of 08:13:54 would result in a date
+ with the time of 08:13:00.
+
+
+ the Date to round, if the current time will
+ be used
+ the new rounded date
+
+
+
+ Returns a date that is rounded to the next even second above the given
+ date.
+
+ the Date to round, if the current time will
+ be used
+ the new rounded date
+
+
+
+ Returns a date that is rounded to the previous even second below the
+ given date.
+
+ For example an input date with a time of 08:13:54.341 would result in a
+ date with the time of 08:13:00.000.
+
+
+ the Date to round, if the current time will
+ be used
+ the new rounded date
+
+
+
+ Returns a date that is rounded to the next even multiple of the given
+ minute.
+
+ For example an input date with a time of 08:13:54, and an input
+ minute-base of 5 would result in a date with the time of 08:15:00. The
+ same input date with an input minute-base of 10 would result in a date
+ with the time of 08:20:00. But a date with the time 08:53:31 and an
+ input minute-base of 45 would result in 09:00:00, because the even-hour
+ is the next 'base' for 45-minute intervals.
+
+
+
+ More examples:
+
+ | Input Time |
+ Minute-Base |
+ Result Time |
+
+
+ | 11:16:41 |
+ 20 |
+ 11:20:00 |
+
+
+ | 11:36:41 |
+ 20 |
+ 11:40:00 |
+
+
+ | 11:46:41 |
+ 20 |
+ 12:00:00 |
+
+
+ | 11:26:41 |
+ 30 |
+ 11:30:00 |
+
+
+ | 11:36:41 |
+ 30 |
+ 12:00:00 |
+
+
+ | 11:16:41 |
+ 17 |
+ 11:17:00 |
+
+
+ | 11:17:41 |
+ 17 |
+ 11:34:00 |
+
+
+ | 11:52:41 |
+ 17 |
+ 12:00:00 |
+
+
+ | 11:52:41 |
+ 5 |
+ 11:55:00 |
+
+
+ | 11:57:41 |
+ 5 |
+ 12:00:00 |
+
+
+ | 11:17:41 |
+ 0 |
+ 12:00:00 |
+
+
+ | 11:17:41 |
+ 1 |
+ 11:08:00 |
+
+
+
+
+
+
+ the Date to round, if the current time will
+ be used
+
+
+ the base-minute to set the time on
+
+ the new rounded date
+
+
+
+ Returns a date that is rounded to the next even multiple of the given
+ minute.
+
+ The rules for calculating the second are the same as those for
+ calculating the minute in the method
+ .
+
+
+ The date.
+ The second base.
+
+
+
+
+ Returns a list of Dates that are the next fire times of a
+ .
+ The input trigger will be cloned before any work is done, so you need
+ not worry about its state being altered by this method.
+
+ The trigger upon which to do the work
+ The calendar to apply to the trigger's schedule
+ The number of next fire times to produce
+ List of java.util.Date objects
+
+
+
+ Returns a list of Dates that are the next fire times of a
+ that fall within the given date range. The input trigger will be cloned
+ before any work is done, so you need not worry about its state being
+ altered by this method.
+
+ NOTE: if this is a trigger that has previously fired within the given
+ date range, then firings which have already occured will not be listed
+ in the output List.
+
+
+ The trigger upon which to do the work
+ The calendar to apply to the trigger's schedule
+ The starting date at which to find fire times
+ The ending date at which to stop finding fire times
+ List of java.util.Date objects
+
+
+
+ Translate a date and time from a users timezone to the another
+ (probably server) timezone to assist in creating a simple trigger with
+ the right date and time.
+
+ the date to translate
+ the original time-zone
+ the destination time-zone
+ the translated UTC date
+
+
+
+ Gets the offset from UT for the given date in the given timezone,
+ taking into account daylight savings.
+
+ the date that is the base for the offset
+ the time-zone to calculate to offset to
+ the offset
+
+
+
+ This functions determines if the TimeZone uses daylight saving time
+
+ TimeZone instance to validate
+ True or false depending if daylight savings time is used
+
+
+
+ An exception that is thrown to indicate that a call to
+ failed without interrupting the Job.
+
+
+ James House
+
+
+
+ Create a with the given message.
+
+
+
+
+ Create a with the given cause.
+
+
+
+
+ Initializes a new instance of the class.
+
+ The that holds the serialized object data about the exception being thrown.
+ The that contains contextual information about the source or destination.
+ The class name is null or is zero (0).
+ The info parameter is null.
+
+
+
diff --git a/src/Spring/Spring.Scheduling.Quartz/Spring.Scheduling.Quartz.build b/src/Spring/Spring.Scheduling.Quartz/Spring.Scheduling.Quartz.build
index e37f0b60..a8829365 100644
--- a/src/Spring/Spring.Scheduling.Quartz/Spring.Scheduling.Quartz.build
+++ b/src/Spring/Spring.Scheduling.Quartz/Spring.Scheduling.Quartz.build
@@ -23,13 +23,16 @@
-
-
+
+
+
+
+
-
+
diff --git a/test/Spring/Spring.Scheduling.Quartz.Tests/Spring.Scheduling.Quartz.Tests.build b/test/Spring/Spring.Scheduling.Quartz.Tests/Spring.Scheduling.Quartz.Tests.build
index eb5cefde..a8a5f888 100644
--- a/test/Spring/Spring.Scheduling.Quartz.Tests/Spring.Scheduling.Quartz.Tests.build
+++ b/test/Spring/Spring.Scheduling.Quartz.Tests/Spring.Scheduling.Quartz.Tests.build
@@ -30,15 +30,17 @@
-
-
-
-
+
+
+
+
-
-
-
+
+
+
+
+