The Spring Framework

org.springframework.scheduling.quartz
Class SpringBeanJobFactory

java.lang.Object
  extended by org.springframework.scheduling.quartz.AdaptableJobFactory
      extended by org.springframework.scheduling.quartz.SpringBeanJobFactory
All Implemented Interfaces:
JobFactory, SchedulerContextAware

public class SpringBeanJobFactory
extends AdaptableJobFactory
implements SchedulerContextAware

Subclass of AdaptableBeanFactory that also supports Spring-style dependency injection on bean properties. This is essentially the direct equivalent of Spring's QuartzJobBean in the shape of a Quartz 1.5 JobFactory.

Applies scheduler context, job data map and trigger data map entries as bean property values. If no matching bean property is found, the entry is by default simply ignored. This is analogous to QuartzJobBean's behavior.

Since:
2.0
Author:
Juergen Hoeller
See Also:
QuartzJobBean

Constructor Summary
SpringBeanJobFactory()
           
 
Method Summary
protected  Object createJobInstance(TriggerFiredBundle bundle)
          Create the job instance, populating it with property values taken from the scheduler context, job data map and trigger data map.
protected  boolean isEligibleForPropertyPopulation(Object jobObject)
          Return whether the given job object is eligible for having its bean properties populated.
 void setIgnoredUnknownProperties(boolean ignoredUnknownProperties)
          Set whether unknown properties (not found in the bean) should be ignored.
 void setSchedulerContext(SchedulerContext schedulerContext)
          Set the SchedulerContext of the current Quartz Scheduler.
 
Methods inherited from class org.springframework.scheduling.quartz.AdaptableJobFactory
adaptJob, newJob
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

SpringBeanJobFactory

public SpringBeanJobFactory()
Method Detail

setIgnoredUnknownProperties

public void setIgnoredUnknownProperties(boolean ignoredUnknownProperties)
Set whether unknown properties (not found in the bean) should be ignored. Default is "true".


setSchedulerContext

public void setSchedulerContext(SchedulerContext schedulerContext)
Description copied from interface: SchedulerContextAware
Set the SchedulerContext of the current Quartz Scheduler.

Specified by:
setSchedulerContext in interface SchedulerContextAware
See Also:
Scheduler.getContext()

createJobInstance

protected Object createJobInstance(TriggerFiredBundle bundle)
Create the job instance, populating it with property values taken from the scheduler context, job data map and trigger data map.

Overrides:
createJobInstance in class AdaptableJobFactory
Parameters:
bundle - the TriggerFiredBundle from which the JobDetail and other info relating to the trigger firing can be obtained
Returns:
the job instance

isEligibleForPropertyPopulation

protected boolean isEligibleForPropertyPopulation(Object jobObject)
Return whether the given job object is eligible for having its bean properties populated.

The default implementation ignores QuartzJobBeans, which will inject bean properties themselves.

Parameters:
jobObject - the job object to introspect

The Spring Framework

Copyright © 2002-2006 The Spring Framework.