public class DefaultLifecycleProcessor extends ObjectSE implements LifecycleProcessor, BeanFactoryAware
LifecycleProcessor
戦略のデフォルト実装。コンストラクターと説明 |
---|
DefaultLifecycleProcessor() |
修飾子と型 | メソッドと説明 |
---|---|
protected MapSE<StringSE, Lifecycle> | getLifecycleBeans() 該当するすべての Lifecycle Bean: すでに作成されているすべてのシングルトンと、すべての SmartLifecycle Bean(lazy-init としてマークされている場合も含む)を取得します。 |
protected int | getPhase(Lifecycle bean) 指定された Bean のライフサイクルフェーズを決定します。 |
boolean | isRunning() このコンポーネントが現在実行されているかどうかを確認します。 |
void | onClose() コンテキスト終了フェーズの通知、例: |
void | onRefresh() コンテキストリフレッシュの通知、たとえば |
void | setBeanFactory(BeanFactory beanFactory) 所有ファクトリを Bean インスタンスに提供するコールバック。 |
void | setTimeoutPerShutdownPhase(long timeoutPerShutdownPhase) 任意のフェーズ(同じ「フェーズ」値を持つ SmartLifecycle Bean のグループ)のシャットダウンに割り当てられる最大時間をミリ秒で指定します。 |
void | start() Lifecycle を実装し、まだ実行されていないすべての登録済み Bean を開始します。 |
void | stop() Lifecycle を実装し 、現在実行中のすべての登録済み Bean を停止します。 |
cloneSE, equalsSE, finalizeSE, getClassSE, hashCodeSE, notifySE, notifyAllSE, toStringSE, waitSE, waitSE, waitSE
public void setTimeoutPerShutdownPhase(long timeoutPerShutdownPhase)
デフォルト値は 30 秒です。
public void setBeanFactory(BeanFactory beanFactory)
BeanFactoryAware
通常の Bean プロパティの設定後、ただし InitializingBean.afterPropertiesSet()
またはカスタム init-method などの初期化コールバックの前に呼び出されます。
BeanFactoryAware
の setBeanFactory
beanFactory
- 所有 BeanFactory(非 null
)。Bean は、ファクトリのメソッドをすぐに呼び出すことができます。BeanInitializationException
public void start()
Lifecycle
を実装し、まだ実行されていないすべての登録済み Bean を開始します。SmartLifecycle
を実装する Bean は、その「フェーズ」内で開始され、すべてのフェーズは最低値から最高値の順に並べられます。SmartLifecycle
を実装しないすべての Bean は、デフォルトのフェーズ 0 で開始されます。別の Bean の依存関係として宣言された Bean は、宣言されたフェーズに関係なく、依存する Bean の前に開始されます。Lifecycle
の start
SmartLifecycle.isAutoStartup()
public void stop()
Lifecycle
を実装し 、現在実行中のすべての登録済み Bean を停止します。SmartLifecycle
を実装する Bean は、その「フェーズ」内で停止し、すべてのフェーズは最高値から最低値へと順序付けられます。SmartLifecycle
を実装しないすべての Bean は、デフォルトのフェーズ 0 で停止します。別の Bean に依存していると宣言された Bean は、宣言されたフェーズに関係なく、依存関係 Bean の前に停止します。Lifecycle
の stop
SmartLifecycle.stop(Runnable)
, DisposableBean.destroy()
public void onRefresh()
LifecycleProcessor
LifecycleProcessor
の onRefresh
public void onClose()
LifecycleProcessor
LifecycleProcessor
の onClose
public boolean isRunning()
Lifecycle
コンテナーの場合、これは、適用されるすべてのコンポーネントが現在実行されている場合にのみ、true
を返します。
protected MapSE<StringSE,Lifecycle> getLifecycleBeans()
protected int getPhase(Lifecycle bean)
デフォルトの実装では、Phased
インターフェースをチェックし、そうでない場合はデフォルトの 0 を使用します。他の / さらにポリシーを適用するためにオーバーライドできます。
bean
- Bean をイントロスペクトする Phased.getPhase()
, SmartLifecycle