public interface InterruptableJob extends Job
 The interface to be implemented by  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.
 Jobs
 The means of actually interrupting the Job must be implemented within the
 Job itself (the interrupt() method of this 
 interface is simply a means for the scheduler to inform the Job
 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 execute(..) 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 
 org.quartz.examples.DumbInterruptableJob.  It is legal to use
 some combination of wait() and notify() 
 synchronization within interrupt() and execute(..)
 in order to have the interrupt() method block until the
 execute(..) 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 Job.execute(..) method store a
 reference to the calling Thread as a member variable.  Then the
 impplementation of this interfaces interrupt() method can call 
 interrupt() on that Thread.   Before attempting this, make
 sure that you fully understand what java.lang.Thread.interrupt() 
 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
 finally block.
 
See Example 7 (org.quartz.examples.example7.DumbInterruptableJob) for a simple implementation demonstration.
Job, 
StatefulJob, 
Scheduler.interrupt(String, String)void interrupt()
               throws UnableToInterruptJobException
 Called by the  when a user
 interrupts the SchedulerJob.
 
UnableToInterruptJobException - if there is an exception while interrupting the job.