public class DefaultLifecycleProcessor extends Object implements LifecycleProcessor, org.springframework.beans.factory.BeanFactoryAware
LifecycleProcessor strategy.| 构造器和说明 |
|---|
DefaultLifecycleProcessor() |
| 限定符和类型 | 方法和说明 |
|---|---|
protected Map<String,Lifecycle> |
getLifecycleBeans()
Retrieve all applicable Lifecycle beans: all singletons that have already been created,
as well as all SmartLifecycle beans (even if they are marked as lazy-init).
|
protected int |
getPhase(Lifecycle bean)
Determine the lifecycle phase of the given bean.
|
boolean |
isRunning()
Check whether this component is currently running.
|
void |
onClose()
Notification of context close phase, e.g. for auto-stopping components.
|
void |
onRefresh()
Notification of context refresh, e.g. for auto-starting components.
|
void |
setBeanFactory(org.springframework.beans.factory.BeanFactory beanFactory) |
void |
setTimeoutPerShutdownPhase(long timeoutPerShutdownPhase)
Specify the maximum time allotted in milliseconds for the shutdown of
any phase (group of SmartLifecycle beans with the same 'phase' value).
|
void |
start()
Start all registered beans that implement
Lifecycle and are not
already running. |
void |
stop()
Stop all registered beans that implement
Lifecycle and are
currently running. |
public void setTimeoutPerShutdownPhase(long timeoutPerShutdownPhase)
The default value is 30 seconds.
public void setBeanFactory(org.springframework.beans.factory.BeanFactory beanFactory)
setBeanFactory 在接口中 org.springframework.beans.factory.BeanFactoryAwarepublic void start()
Lifecycle and are not
already running. Any bean that implements SmartLifecycle will be
started within its 'phase', and all phases will be ordered from lowest to
highest value. All beans that do not implement SmartLifecycle will be
started in the default phase 0. A bean declared as a dependency of another bean
will be started before the dependent bean regardless of the declared phase.start 在接口中 LifecycleSmartLifecycle.isAutoStartup()public void stop()
Lifecycle and are
currently running. Any bean that implements SmartLifecycle will be
stopped within its 'phase', and all phases will be ordered from highest to
lowest value. All beans that do not implement SmartLifecycle will be
stopped in the default phase 0. A bean declared as dependent on another bean
will be stopped before the dependency bean regardless of the declared phase.stop 在接口中 LifecycleSmartLifecycle.stop(Runnable),
DisposableBean.destroy()public void onRefresh()
LifecycleProcessoronRefresh 在接口中 LifecycleProcessorpublic void onClose()
LifecycleProcessoronClose 在接口中 LifecycleProcessorpublic boolean isRunning()
LifecycleIn the case of a container, this will return true only if all
components that apply are currently running.
protected Map<String,Lifecycle> getLifecycleBeans()
protected int getPhase(Lifecycle bean)
The default implementation checks for the Phased interface, using
a default of 0 otherwise. Can be overridden to apply other/further policies.
bean - the bean to introspectPhased.getPhase(),
SmartLifecycle