public class SpringBeanJobFactory extends AdaptableJobFactory implements ApplicationContextAware, SchedulerContextAware
AdaptableJobFactory
のサブクラス。これは基本的に、Quartz JobFactory
の形の Spring の QuartzJobBean
と直接同等です。スケジューラコンテキスト、ジョブデータマップ、トリガーデータマップエントリを Bean プロパティ値として適用します。一致する Bean プロパティが見つからない場合、エントリはデフォルトで単に無視されます。これは、QuartzJobBean の動作に似ています。
Spring 4.1 の時点で、Quartz 2.1.4 以降と互換性があります。
SchedulerFactoryBean.setJobFactory(org.quartz.spi.JobFactory)
, QuartzJobBean
コンストラクターと説明 |
---|
SpringBeanJobFactory() |
修飾子と型 | メソッドと説明 |
---|---|
protected ObjectSE | createJobInstance(TriggerFiredBundle bundle) ジョブインスタンスを作成し、スケジューラコンテキスト、ジョブデータマップ、トリガーデータマップから取得したプロパティ値を設定します。 |
protected boolean | isEligibleForPropertyPopulation(ObjectSE jobObject) 指定されたジョブオブジェクトが Bean プロパティに値を設定できるかどうかを返します。 |
void | setApplicationContext(ApplicationContext applicationContext) このオブジェクトが実行される ApplicationContext を設定します。 |
void | setIgnoredUnknownProperties(StringSE... ignoredUnknownProperties) 無視する必要がある不明なプロパティ(Bean にはない)を指定します。 |
void | setSchedulerContext(SchedulerContext schedulerContext) 現在の Quartz スケジューラの SchedulerContext を設定します。 |
adaptJob, newJob
cloneSE, equalsSE, finalizeSE, getClassSE, hashCodeSE, notifySE, notifyAllSE, toStringSE, waitSE, waitSE, waitSE
public void setIgnoredUnknownProperties(StringSE... ignoredUnknownProperties)
デフォルトは null
で、不明なプロパティはすべて無視する必要があることを示します。不明なプロパティがある場合に例外をスローする空の配列、または特定のジョブクラスに対応するプロパティが見つからない場合は無視する必要があるプロパティ名のリストを指定します(他のすべての不明なプロパティは例外をトリガーします)。
public void setApplicationContext(ApplicationContext applicationContext)
ApplicationContextAware
通常の Bean プロパティの設定後、ただし InitializingBean.afterPropertiesSet()
またはカスタム init メソッドなどの init コールバックの前に呼び出されます。ResourceLoaderAware.setResourceLoader(org.springframework.core.io.ResourceLoader)
、ApplicationEventPublisherAware.setApplicationEventPublisher(org.springframework.context.ApplicationEventPublisher)
および MessageSourceAware
の後に呼び出されます(該当する場合)。
ApplicationContextAware
の setApplicationContext
applicationContext
- このオブジェクトによって使用される ApplicationContext オブジェクト BeanInitializationException
public void setSchedulerContext(SchedulerContext schedulerContext)
SchedulerContextAware
SchedulerContextAware
の setSchedulerContext
Scheduler.getContext()
protected ObjectSE createJobInstance(TriggerFiredBundle bundle) throws ExceptionSE
AdaptableJobFactory
の createJobInstance
bundle
- トリガーの発射に関連する JobDetail およびその他の情報を取得できる TriggerFiredBundleExceptionSE
- ジョブのインスタンス化が失敗した場合 protected boolean isEligibleForPropertyPopulation(ObjectSE jobObject)
デフォルトの実装では QuartzJobBean
インスタンスが無視され、Bean プロパティ自体が挿入されます。
jobObject
- イントロスペクトするジョブオブジェクト QuartzJobBean