Quartz.Net – The Quartz.IJob Interface

This post is part of the documenation series. It just provides a place to document some of the classes and interfaces that are not available in the API documentation.

In this post we are documenting the IJob interface. Without further ado, here it is:

namespace Quartz
{
	/// <summary> 
	/// The interface to be implemented by classes which represent a 'job' to be
	/// performed.
	/// </summary>
	/// <remarks>
	/// Instances of this interface must have a <see langword="public" />
	/// no-argument constructor. <see cref="JobDataMap" /> provides a mechanism for 'instance member data'
	/// that may be required by some implementations of this interface.
    /// </remarks>
	/// <seealso cref="IJobDetail" />
    /// <seealso cref="JobBuilder" />
    /// <seealso cref="DisallowConcurrentExecutionAttribute" />
    /// <seealso cref="PersistJobDataAfterExecutionAttribute" />
	/// <seealso cref="ITrigger" />
	/// <seealso cref="IScheduler" />
	/// <author>James House</author>
	/// <author>Marko Lahma (.NET)</author>
	public interface IJob
	{
		/// <summary>
		/// Called by the <see cref="IScheduler" /> when a <see cref="ITrigger" />
		/// fires that is associated with the <see cref="IJob" />.
        /// </summary>
		/// <remarks>
		/// 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 
		/// <see cref="IJobListener" />s or 
		/// <see cref="ITriggerListener" />s that are watching the job's 
		/// execution.
		/// </remarks>
		/// <param name="context">The execution context.</param>
        void Execute(IJobExecutionContext context);
	}
}

 

Continue Reading

Quartz.Net &ndash; The Missing API Documentation

Unfortunately it seems that the Quartz.Net API documentation that is available online is not complete. Since I would like to link to some of these classes and interfaces from some of my posts, I’m going to start adding them as separate posts, all tagged as documentation.

At some point I’ll tackle generating another set of API documents with all the missing classes but until then, these posts will have to do.

Continue Reading

Quartz.NET 2 Tutorial - Lesson 1: Using Quartz

Lesson 1: Using Quartz

There are at least two ways to use Quartz.Net: embedded (hosted) in your application or as a standalone windows service.

Embedding Quartz.Net in Your Application

If you are going to host the Quartz.Net scheduler in your application, you’ll need to create a scheduler. This can be easily done through the scheduler factory provided in the distribution. The scheduler factory configures your scheduler for you.

Continue Reading

Quartz.NET 2 Tutorial

I’m going to take a stab at re-writing the Quartz.NET tutorial for version 2. The current version of the tutorial is for version 1 and so I figured it was time for an update.

Below is a list of the lessons that I’ll be posting.

Lesson 1: Using Quartz
Lesson 2: Jobs And Triggers
Lesson 3: More About Jobs & JobDetails
Lesson 4: More About Triggers
Lesson 5: SimpleTriggers
Lesson 6: CronTriggers
Lesson 7: TriggerListeners & JobListeners
Lesson 8: SchedulerListeners
Lesson 9: JobStores
Lesson 10: Configuration, Resource Usage and SchedulerFactory
Lesson 11: Advanced (Enterprise) Features
Lesson 12: Miscellaneous Features

Continue Reading