クラス DefaultLifecycleProcessor
java.lang.ObjectSE
org.springframework.context.support.DefaultLifecycleProcessor
- 実装されているすべてのインターフェース:
Aware、BeanFactoryAware、Lifecycle、LifecycleProcessor
public class DefaultLifecycleProcessor
extends ObjectSE
implements LifecycleProcessor, BeanFactoryAware
Spring の
LifecycleProcessor 戦略のデフォルトの実装。 特定のフェーズ、起動 / シャットダウン時、ConfigurableApplicationContext での明示的な開始 / 停止対話のグループ内の Lifecycle Bean および SmartLifecycle Bean との対話を提供します。
- 導入:
- 3.0
- 作成者:
- Mark Fisher, Juergen Hoeller
コンストラクターの概要
コンストラクターメソッドのサマリー
修飾子と型メソッド説明該当するすべての Lifecycle Bean: すでに作成されているすべてのシングルトンと、すべての SmartLifecycle Bean(lazy-init としてマークされている場合も含む)を取得します。protected int指定された Bean のライフサイクルフェーズを決定します。booleanこのコンポーネントが現在実行されているかどうかを確認します。voidonClose()コンテキスト終了フェーズの通知、例:voidコンテキストリフレッシュの通知、たとえばvoidsetBeanFactory(BeanFactory beanFactory) 所有ファクトリを Bean インスタンスに提供するコールバック。voidsetTimeoutPerShutdownPhase(long timeoutPerShutdownPhase) 任意のフェーズ (同じ「フェーズ」値を持つSmartLifecycleBean のグループ) のシャットダウンに割り当てられる最大時間をミリ秒単位で指定します。voidstart()Lifecycleを実装し、まだ実行されていないすべての登録済み Bean を開始します。voidstop()Lifecycleを実装し 、現在実行中のすべての登録済み Bean を停止します。
コンストラクターの詳細
DefaultLifecycleProcessor
public DefaultLifecycleProcessor()
メソッドの詳細
setTimeoutPerShutdownPhase
public void setTimeoutPerShutdownPhase(long timeoutPerShutdownPhase) 任意のフェーズ (同じ「フェーズ」値を持つSmartLifecycleBean のグループ) のシャットダウンに割り当てられる最大時間をミリ秒単位で指定します。デフォルト値は 30000 ミリ秒 (30 秒) です。
setBeanFactory
インターフェースからコピーされた説明:BeanFactoryAware所有ファクトリを Bean インスタンスに提供するコールバック。通常の Bean プロパティの設定後、ただし
InitializingBean.afterPropertiesSet()またはカスタム init-method などの初期化コールバックの前に呼び出されます。- 次で指定:
- インターフェース
BeanFactoryAwareのsetBeanFactory - パラメーター:
beanFactory- 所有 BeanFactory(非null)。Bean は、ファクトリのメソッドをすぐに呼び出すことができます。- 関連事項:
start
public void start()Lifecycleを実装し、まだ実行されていないすべての登録済み Bean を開始します。SmartLifecycleを実装する Bean は、その「フェーズ」内で開始され、すべてのフェーズは最低値から最高値の順に並べられます。SmartLifecycleを実装しないすべての Bean は、デフォルトのフェーズ 0 で開始されます。別の Bean の依存関係として宣言された Bean は、宣言されたフェーズに関係なく、依存する Bean の前に開始されます。stop
public void stop()Lifecycleを実装し 、現在実行中のすべての登録済み Bean を停止します。SmartLifecycleを実装する Bean は、その「フェーズ」内で停止し、すべてのフェーズは最高値から最低値へと順序付けられます。SmartLifecycleを実装しないすべての Bean は、デフォルトのフェーズ 0 で停止します。別の Bean に依存していると宣言された Bean は、宣言されたフェーズに関係なく、依存関係 Bean の前に停止します。onRefresh
public void onRefresh()インターフェースからコピーされた説明:LifecycleProcessorコンテキストリフレッシュの通知、たとえばコンポーネントの自動起動用。- 次で指定:
- インターフェース
LifecycleProcessorのonRefresh
onClose
public void onClose()インターフェースからコピーされた説明:LifecycleProcessorコンテキスト終了フェーズの通知、例: コンポーネントの自動停止用。- 次で指定:
- インターフェース
LifecycleProcessorのonClose
isRunning
public boolean isRunning()インターフェースからコピーされた説明:Lifecycleこのコンポーネントが現在実行されているかどうかを確認します。コンテナーの場合、これは、適用されるすべてのコンポーネントが現在実行されている場合にのみ、
trueを返します。getLifecycleBeans
該当するすべての Lifecycle Bean: すでに作成されているすべてのシングルトンと、すべての SmartLifecycle Bean(lazy-init としてマークされている場合も含む)を取得します。- 戻り値:
- キーとして Bean 名、値として Bean インスタンスを持つ、該当する Bean のマップ
getPhase
指定された Bean のライフサイクルフェーズを決定します。デフォルトの実装では、
Phasedインターフェースをチェックし、そうでない場合はデフォルトの 0 を使用します。他の / さらにポリシーを適用するためにオーバーライドできます。- パラメーター:
bean- Bean をイントロスペクトする- 戻り値:
- フェーズ (整数値)
- 関連事項: