public class SimpleTriggerFactoryBean extends ObjectSE implements FactoryBean<SimpleTrigger>, BeanNameAware, InitializingBean
SimpleTrigger
インスタンスを作成するための Spring FactoryBean
。トリガー構成の Bean スタイルの使用をサポートします。SimpleTrigger(Impl)
自体はすでに JavaBean ですが、実用的なデフォルトはありません。このクラスは、指定されていない場合、Spring Bean 名をジョブ名として、Quartz デフォルトグループ( "DEFAULT" )をジョブグループとして、現在時刻を開始時刻として、および無期限の繰り返しを使用します。
また、このクラスは、指定された JobDetail
のジョブ名とグループでトリガーを登録します。これにより、SchedulerFactoryBean
は、JobDetail を個別に登録する代わりに、対応する JobDetail のトリガーを自動的に登録できます。
コンストラクターと説明 |
---|
SimpleTriggerFactoryBean() |
修飾子と型 | メソッドと説明 |
---|---|
void | afterPropertiesSet() |
JobDataMap | getJobDataMap() トリガーの JobDataMap を返します。 |
SimpleTrigger | getObject() このファクトリによって管理されるオブジェクトのインスタンス(おそらく共有または独立)を返します。 |
ClassSE<?> | getObjectType() この FactoryBean が作成するオブジェクトの型、または事前に不明な場合は null を返します。 |
boolean | isSingleton() このファクトリによって管理されるオブジェクトはシングルトンですか? つまり、 FactoryBean.getObject() は常に同じオブジェクト(キャッシュ可能な参照)を返しますか? |
void | setBeanName(StringSE beanName) この Bean を作成した Bean ファクトリで Bean の名前を設定します。 |
void | setDescription(StringSE description) テキストの説明をこのトリガーに関連付けます。 |
void | setGroup(StringSE group) トリガーのグループを指定します。 |
void | setJobDataAsMap(MapSE<StringSE,?> jobDataAsMap) 指定されたマップを介して JobDataMap にオブジェクトを登録します。 |
void | setJobDataMap(JobDataMap jobDataMap) トリガーの JobDataMap を設定します。 |
void | setJobDetail(JobDetail jobDetail) このトリガーを関連付ける必要がある JobDetail を設定します。 |
void | setMisfireInstruction(int misfireInstruction) このトリガーに不発命令を指定します。 |
void | setMisfireInstructionName(StringSE constantName) SimpleTrigger クラスの対応する定数の名前を使用して、ミスファイア命令を設定します。 |
void | setName(StringSE name) トリガーの名前を指定します。 |
void | setPriority(int priority) このトリガーの優先順位を指定します。 |
void | setRepeatCount(int repeatCount) このトリガーが起動するはずの回数を指定します。 |
void | setRepeatInterval(long repeatInterval) このトリガーの実行時間の間隔を指定します。 |
void | setStartDelay(long startDelay) 開始遅延をミリ秒単位で設定します。 |
void | setStartTime(DateSE startTime) トリガーの特定の開始時間を設定します。 |
cloneSE, equalsSE, finalizeSE, getClassSE, hashCodeSE, notifySE, notifyAllSE, toStringSE, waitSE, waitSE, waitSE
public void setName(StringSE name)
public void setGroup(StringSE group)
public void setJobDetail(JobDetail jobDetail)
public void setJobDataMap(JobDataMap jobDataMap)
public JobDataMap getJobDataMap()
public void setJobDataAsMap(MapSE<StringSE,?> jobDataAsMap)
これらのオブジェクトは、JobDetail のデータマップ内のオブジェクトとは対照的に、このトリガーでのみ使用できます。
jobDataAsMap
- String キーと任意のオブジェクトを値として持つ Map (たとえば、Spring に管理された Bean)public void setStartTime(DateSE startTime)
動的に計算された setStartDelay(long)
仕様は、ここで設定された静的タイムスタンプをオーバーライドすることに注意してください。
public void setStartDelay(long startDelay)
開始遅延は、トリガーの開始時間を制御するために、現在のシステム時間(Bean の開始時)に追加されます。
public void setRepeatInterval(long repeatInterval)
public void setRepeatCount(int repeatCount)
デフォルトでは無期限に繰り返されます。
public void setPriority(int priority)
public void setMisfireInstruction(int misfireInstruction)
public void setMisfireInstructionName(StringSE constantName)
SimpleTrigger
クラスの対応する定数の名前を使用して失火命令を設定します。デフォルトは MISFIRE_INSTRUCTION_SMART_POLICY
です。SimpleTrigger.MISFIRE_INSTRUCTION_FIRE_NOW
, SimpleTrigger.MISFIRE_INSTRUCTION_RESCHEDULE_NEXT_WITH_EXISTING_COUNT
, SimpleTrigger.MISFIRE_INSTRUCTION_RESCHEDULE_NEXT_WITH_REMAINING_COUNT
, SimpleTrigger.MISFIRE_INSTRUCTION_RESCHEDULE_NOW_WITH_EXISTING_REPEAT_COUNT
, SimpleTrigger.MISFIRE_INSTRUCTION_RESCHEDULE_NOW_WITH_REMAINING_REPEAT_COUNT
, Trigger.MISFIRE_INSTRUCTION_SMART_POLICY
public void setDescription(StringSE description)
public void setBeanName(StringSE beanName)
BeanNameAware
通常の Bean プロパティの設定後、ただし InitializingBean.afterPropertiesSet()
またはカスタム init メソッドなどの init コールバックの前に呼び出されます。
BeanNameAware
の setBeanName
beanName
- ファクトリ内の Bean の名前。この名前は、ファクトリで使用される実際の Bean 名であり、最初に指定した名前とは異なる場合があります。特に内部 Bean 名の場合、実際の Bean 名は "#..." サフィックスを追加することで一意になります。必要に応じて、BeanFactoryUtils.originalBeanName(String)
メソッドを使用して、元の Bean 名(サフィックスなし)を抽出します。public void afterPropertiesSet()
InitializingBean
BeanFactoryAware
、ApplicationContextAware
などを満たした後、包含 BeanFactory
によって呼び出されます。このメソッドにより、Bean インスタンスは、すべての Bean プロパティが設定されたときに、その全体的な構成の検証と最終的な初期化を実行できます。
InitializingBean
の afterPropertiesSet
@Nullable public SimpleTrigger getObject()
FactoryBean
BeanFactory
と同様に、これにより、シングルトンとプロトタイプの両方のデザインパターンをサポートできます。
この FactoryBean が呼び出し時にまだ完全に初期化されていない場合(たとえば、循環参照に関係しているため)、対応する FactoryBeanNotInitializedException
をスローします。
Spring 2.0 以降、FactoryBeans は null
オブジェクトを返すことができます。ファクトリはこれを通常の値として使用します。この場合、FactoryBeanNotInitializedException はスローされません。FactoryBean の実装では、必要に応じて FactoryBeanNotInitializedException 自体をすぐにスローすることをお勧めします。
FactoryBean<SimpleTrigger>
の getObject
null
にすることができます)FactoryBeanNotInitializedException
public ClassSE<?> getObjectType()
FactoryBean
null
を返します。これにより、たとえばオートワイヤーなどで、オブジェクトをインスタンス化せずに特定の型の Bean を確認できます。
シングルトンオブジェクトを作成している実装の場合、このメソッドはシングルトンの作成を可能な限り回避しようとします。むしろ、事前に型を推定する必要があります。プロトタイプの場合、ここで意味のある型を返すこともお勧めします。
このメソッドは、この FactoryBean が完全に初期化される前に呼び出すことができます。初期化中に作成された状態に依存しないでください。もちろん、利用可能な場合はそのような状態を引き続き使用できます。
注意 : オートワイヤーは、ここで null
を返す FactoryBeans を単に無視します。FactoryBean の現在の状態を使用して、このメソッドを適切に実装することを強くお勧めします。
FactoryBean<SimpleTrigger>
の getObjectType
null
ListableBeanFactory.getBeansOfType(java.lang.Class<T>)
public boolean isSingleton()
FactoryBean
FactoryBean.getObject()
は常に同じオブジェクト(キャッシュ可能な参照)を返しますか? 注意 : FactoryBean がシングルトンオブジェクトを保持することを示す場合、getObject()
から返されたオブジェクトは所有 BeanFactory によってキャッシュされる可能性があります。FactoryBean が常に同じ参照を公開しない限り、true
を返さないでください。
FactoryBean 自体のシングルトンステータスは、通常、所有する BeanFactory によって提供されます。通常、そこではシングルトンとして定義する必要があります。
注意 : false
を返すこのメソッドは、返されるオブジェクトが独立したインスタンスであることを必ずしも示しません。拡張 SmartFactoryBean
インターフェースの実装は、SmartFactoryBean.isPrototype()
メソッドを通じて独立したインスタンスを明示的に示す場合があります。この拡張インターフェースを実装しないプレーンな FactoryBean
実装は、isSingleton()
実装が false
を返す場合、常に独立したインスタンスを返すと単純に想定されます。
FactoryBean
は通常シングルトンインスタンスを管理するため、デフォルトの実装では true
が返されます。
FactoryBean<SimpleTrigger>
の isSingleton
FactoryBean.getObject()
, SmartFactoryBean.isPrototype()